1
1
Граф коммитов

26 Коммитов

Автор SHA1 Сообщение Дата
Rich Graham
3b42d2268d add functions to handle two different input buffers and a separate
output buffer.  User defined data types have not way to make use
of these.

This commit was SVN r18012.
2008-03-28 23:45:44 +00:00
Jeff Squyres
4fbcb75ce8 With 5 commits over a 16 hour period and 3 broken tarball builds and a
still-broken trunk build on common platforms (e.g., 64 bit Linux
RHEL4U4), I think it's clear that this code is not ready for
prime-time.

I'm backing out all the commits in the trunk/ompi/op tree from r17901
onwards.  This code can be re-committed when compiles and runs on
common platforms.

cd ompi/op
svn merge -r 17907:17900 https://svn.open-mpi.org/svn/ompi/trunk/ompi/op .

This commit was SVN r17908.

The following SVN revision numbers were found above:
  r17901 --> open-mpi/ompi@b9520e61dc
2008-03-21 14:47:01 +00:00
Rich Graham
b9520e61dc get the sm optimized allreduce working for all but user defined
operations.  Added to the reduction operations a set of reduction
functions that take 2 input buffers and one output buffer to avoid
some extra memory copies.  These can't be used with user defined
operations.  The intel c collective suite passes both original, and
new (new, not the user defined operations).

This commit was SVN r17901.
2008-03-20 23:51:16 +00:00
George Bosilca
906e8bf1d1 Replace the ompi_pointer_array with opal_pointer_array. The next step
(sometimes after the merge with the ORTE branch), the opal_pointer_array
will became the only pointer_array implementation (the orte_pointer_array
will be removed).

This commit was SVN r17007.
2007-12-21 06:02:00 +00:00
Rainer Keller
d3372729bb - Support for opt. MPI_REAL2 (who has that?)
to make checks for MPI-implementations fail in the right way ,-]
 - check in configure.ac
 - BINARY INCOMPATIBLE change to mpif-common.h
   (if implemented the *right* way)
   Actually OMPI_F90_CHECK takes two arguments, not three.
 - Only have corresponding C-Type, if the opt. Fortran
   type is really supported,
   Otherwise pass ompi_mpi_unavailable to DECLARE_MPI_SYNONYM_DDT;
 - Reviewed by George and Jeff

This commit was SVN r15133.
2007-06-19 05:03:11 +00:00
Rainer Keller
1feb5fb21a - Initializaton fixes of structure (o_f_to_c_index)...
- Mainly indentation, except for ompi_op_create, here just
   dont nest into ifs...

This commit was SVN r15131.
2007-06-18 23:03:56 +00:00
Jeff Squyres
3c5c8c3c4c Refinement of Rainer's r13227 and r13228 (worked with Rainer, Ralph,
and George on these refinements):

 * Rename the static OBJ initializer macro to be
   OPAL_OBJ_STATIC_INIT(class)
 * Ensure that all static OBJ initializations get a refcount of 1
   (doesn't ''really'' matter, since they're static, it should never
   get to the point where the OBJ is DESTRUCTed, but more correct
   nonetheless)
 * Add a "magic number" to the OBJ when compiling with debug support.
   The magic number does some rudimentary support to ensure that
   you're operating on a valid OBJ (and fails an assertion if you're
   not).  Check to ensure that the memory contains the magic number
   when performing actions of OBJ's.  Also remove the magic number
   when DESTRUCTing OBJs, so that if, for example, an OBJ is
   DESTRUCTed more than once, we'll fail the magic number assert.

This commit was SVN r13338.

The following SVN revision numbers were found above:
  r13227 --> open-mpi/ompi@96030de97b
  r13228 --> open-mpi/ompi@c2e9075d29
2007-01-27 13:44:03 +00:00
George Bosilca
a297a7ae67 MPI standard state that MPI_LONG_LONG and MPI_LONG_LONG_INT are synonyms. Thanks to
Martin audet for finding out this one.

This commit was SVN r9699.
2006-04-24 21:24:10 +00:00
Rainer Keller
b4e7f38360 - Well, well, the OMPI_OP_TYPE_CHAR *was* not supposed to stay in the
enum. Actually, the current ordering of the enum is the nice
   however, at the moment for 1.0, signed_char is not supported.

This commit was SVN r9246.
2006-03-10 16:02:45 +00:00
Rainer Keller
0fa295dc28 - Allow MPI_UNSIGNED_CHAR and MPI_SIGNED_CHAR for Reduction operations
as described by MPI2, p77.

This commit was SVN r9229.
2006-03-09 16:51:59 +00:00
Jeff Squyres
a192af34e7 Shame on me for not looking at the expanded collective datatype tables
for the C++ bindings in MPI-2 p276-278 to see that MPI_BOOL should
work with MPI_LAND, MPI_LOR, and MPI_LXOR.  Thanks to Andy Selle for
pointing this out.

This commit was SVN r9200.
2006-03-04 18:35:33 +00:00
Brian Barrett
566a050c23 Next step in the project split, mainly source code re-arranging
- move files out of toplevel include/ and etc/, moving it into the
    sub-projects
  - rather than including config headers with <project>/include, 
    have them as <project>
  - require all headers to be included with a project prefix, with
    the exception of the config headers ({opal,orte,ompi}_config.h
    mpi.h, and mpif.h)

This commit was SVN r8985.
2006-02-12 01:33:29 +00:00
Jeff Squyres
5f96a74e33 Make user-defined MPI::Op's be thread safe (the previous
implementation was not thread safe).  See lengthy comment in
ompi/mpi/cxx/intercepts.cc::ompi_mpi_cxx_op_intercept() for a full
explanation.

This commit was SVN r8606.
2005-12-23 16:49:09 +00:00
Jeff Squyres
60b19dcf63 Add missing functions for MPI_LONG_LONG, MPI_LONG_LONG_INT, and
MPI_UNSIGNED_LONG_LONG.

This commit was SVN r8010.
2005-11-07 14:42:46 +00:00
Jeff Squyres
21be5e18ee - Fix the MPI_Op intrinsic operation string names ("MPI_foo", not
"MPI_OP_foo")
- Remove all the handlers for MPI_REPLACE for general reductions
  (it's only defined for MPI_ACCUMULATE, and ACCUMULATE is handled
  differently than the other reductions, so it's safe to make all the
  maps for REPLACE be empty)

This commit was SVN r8008.
2005-11-07 13:30:17 +00:00
Jeff Squyres
42ec26e640 Update the copyright notices for IU and UTK.
This commit was SVN r7999.
2005-11-05 19:57:48 +00:00
Jeff Squyres
2e10d0c099 Forgot to add the intrinsic op MPI_REPLACE (Brian, the One Sided Bug
Finder, gets credit)

This commit was SVN r7993.
2005-11-04 19:00:35 +00:00
Jeff Squyres
4fc135fd2b Looks like I forgot to put DDT support for the optional C datatypes
MPI_UNSIGNED_LONG_LONG, MPI_LONG_LONG, and MPI_LONG_LONG_INT --
although I already had implementations of all the relevant functions
for these types.  Doh!

This commit was SVN r7944.
2005-11-01 03:28:59 +00:00
Jeff Squyres
ef09e768e0 Ensure to OBJ_DESTRUCT to free memory during finalize (caught by
Brian). 

This commit was SVN r7864.
2005-10-25 17:27:58 +00:00
Jeff Squyres
f8fd10715c - Minor style fix
- Be sure to properly OBJ_CONSTRUCT the intrinsic MPI_Op's
- RETAIN/RELEASE the op's when used in the invoke function

This commit was SVN r7863.
2005-10-25 16:24:00 +00:00
Jeff Squyres
727a2cf8b2 Correct a few #if issues that George identified in a code review
This commit was SVN r7724.
2005-10-12 13:19:46 +00:00
Jeff Squyres
c568936a7c Add support for MPI_OP_SUM, PROD, REPLACE with MPI_DOUBLE_COMPLEX.
Need to consult with George -- might also need to add support for
complex types on floats or long doubles...

This commit was SVN r7716.
2005-10-12 02:31:28 +00:00
Jeff Squyres
1d20f800ba Add another flag to MPI_Op's -- whether it is associative with
floating point numbers or not (e.g., MAX is, but SUM is not).

This commit was SVN r7230.
2005-09-08 09:47:27 +00:00
Jeff Squyres
cf16a521c8 Ensure to get ompi/include/constants.h
This commit was SVN r6845.
2005-08-12 21:42:07 +00:00
Brian Barrett
499e4de1e7 * rename ompi_object and ompi_class to opal_object and opal_class
This commit was SVN r6321.
2005-07-03 16:06:07 +00:00
Jeff Squyres
4ab17f019b Rename src -> ompi
This commit was SVN r6269.
2005-07-02 13:43:57 +00:00