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

338 Коммитов

Автор SHA1 Сообщение Дата
Rainer Keller
9b91ac2fa3 Thanks to Daniel Spangberg for noticing this problem in the f77
interface:
 - Fix the handling of MPI_BOTTOM in various places
   Update of r15030
 - While being at it, handle MPI_IN_PLACE in the same way.
   Convert OMPI_ADDR -> OMPI_F2C_BOTTOM
   Convert OMPI_IN_PLACE -> OMPI_F2C_IN_PLACE
   and have them converted before the actual call.
 - Approved by George and tested with icc and simple f77 mpi-program and
   with program by Daniel.

This commit was SVN r15129.

The following SVN revision numbers were found above:
  r15030 --> open-mpi/ompi@15f9e58c68
2007-06-18 22:33:54 +00:00
Rainer Keller
0cd2f99711 - Get rid of pendatic C++ namespace warning.
This commit was SVN r15127.
2007-06-18 21:29:09 +00:00
George Bosilca
15f9e58c68 Convert all buffers from Fortran to C. This allow us to catch the
MPI_BOTTOM. Let the C functions do the checkings for where MPI_BOTTOM
is allowed and where not.

This commit was SVN r15030.
2007-06-12 23:13:56 +00:00
Brian Barrett
7c9bae5eb7 need to protect these includes as well...
This commit was SVN r14912.
2007-06-06 16:25:18 +00:00
Shiqing Fan
efa74f7bfe The label name "ERROR" is defined as a flag in Visual Studio platformSDK. Using "ERROR" as a label causes conflicts. Changing it into lowercase will solve the problem.
This commit was SVN r14869.
2007-06-05 14:32:27 +00:00
Brian Barrett
644708a4b4 For modern MACOSX_DEPLOYMENT_TARGETs, allow the Fortran 90 bindings to be
built as shared libraries.

This commit was SVN r14859.
2007-06-05 04:04:44 +00:00
Brian Barrett
beb6dd1924 Include the C++ bindings from mpi.h in a way that doesn't require an extra
-I for ${includedir}/openmpi.  Solves many problems, and with just a tad
bit of hackery.  Don't know why I didn't just do this earlier.

Refs trac:542

This commit was SVN r14853.

The following Trac tickets were found above:
  Ticket 542 --> https://svn.open-mpi.org/trac/ompi/ticket/542
2007-06-05 01:42:47 +00:00
Rainer Keller
43ce11d578 - Fortran 90 standard requires no name at:
end interface
   (ifort complains, pgf90 chokes on it).

This commit was SVN r14785.
2007-05-29 15:37:44 +00:00
Rainer Keller
c8668ef83f - Get rid of unused variables / set but never used warnings.
This commit was SVN r14762.
2007-05-24 18:57:51 +00:00
Ralph Castain
fa5a40070d Test the return status code from comm_dyn_start_processes - if we see an error, then let's report it and not continue on with the comm_spawn procedure!
This commit was SVN r14699.
2007-05-18 20:22:32 +00:00
Jeff Squyres
86f48bf0d7 Fix ordering of dimensions for status arrays. Thanks to Randy Bramley
for noticing the problem.

This commit was SVN r14591.
2007-05-05 05:02:02 +00:00
Sven Stork
a04c8eb39a - Bring over the visibility feature, for a finer symbol export control
via the visibility feature that is provided by some compilers.

  Per default this feature is disabled, to enable it you need to
  configure with --enable-visibility and obviously you need a compiler
  with visibility support. Please refer to the wiki for more information.
  https://svn.open-mpi.org/trac/ompi/wiki/Visibility

This commit was SVN r14582.
2007-05-04 09:03:37 +00:00
Sven Stork
fe3b08004e - export symbols that are needed by the fortran libs
This commit was SVN r14527.
2007-04-26 09:34:41 +00:00
Mohamad Chaarawi
bfaf9d4a12 Added new module for intercomm collectives. This will require an
autogen.

This commit was SVN r14149.
2007-03-27 02:06:42 +00:00
Jeff Squyres
3e2031e0e3 Finally commit something that has been sitting around in one of my
development trees since last year (had to wait for some intel tests to
run yesterday, so I finally took the time to finish this work):

 * Improve MPI API argument checking by also checking for NULL values
   (especially helps when invalid Fortran MPI handles are passed,
   because the various MPI_*f2c functions are supposed to return an
   "invalid" MPI handle [meaning NULL] when this happens).  So now
   OMPI will generate an MPI exception rather than a segv.
 * Removed a few redundant DATATYPE_NULL checks.
 * Also check for some other forms of "invalid" handles (e.g., already
   been freed, etc.) in some cases.  We could probably be a bit more
   stringent in this regard if we really wanted to.
 * Change MPI_Get_processor_name to zero out the string up to
   MPI_MAX_PROCESSOR_NAME characters, because the MPI spec says that
   the string must be at least that long.  We were already passing
   that length to gethostname(), anyway.

This commit was SVN r14100.
2007-03-21 11:10:42 +00:00
Josh Hursey
dadca7da88 Merging in the jjhursey-ft-cr-stable branch (r13912 : HEAD).
This merge adds Checkpoint/Restart support to Open MPI. The initial
frameworks and components support a LAM/MPI-like implementation.

This commit follows the risk assessment presented to the Open MPI core
development group on Feb. 22, 2007.

This commit closes trac:158

More details to follow.

This commit was SVN r14051.

The following SVN revisions from the original message are invalid or
inconsistent and therefore were not cross-referenced:
  r13912

The following Trac tickets were found above:
  Ticket 158 --> https://svn.open-mpi.org/trac/ompi/ticket/158
2007-03-16 23:11:45 +00:00
Jeff Squyres
266e805427 * Update parameter checking per MPI-1:2.4.1 and MPI-1:5.4.1 -- also
return an error if MPI_COMM_NULL is used.  
 * Minor style fixes.

This commit was SVN r14041.
2007-03-16 13:09:49 +00:00
Brian Barrett
e926bed69f Implement MPI_TYPE_CREATE_DARRAY function. Works with MPICH2 darray-pack
test, Sun's darray test, and an internal LANL test code.  I would not
assume it will work properly on other codes, as I'm still not sure I
completely understand what the standard says this function is supposed to
do.

Refs trac:65

This commit was SVN r13967.

The following Trac tickets were found above:
  Ticket 65 --> https://svn.open-mpi.org/trac/ompi/ticket/65
2007-03-08 16:33:08 +00:00
George Bosilca
4b63631535 Allow correct duplication for MPI_UB and MPI_LB. The problem is that we cannot
create a duplicate type, because any duplicate type lose the PREDEFINED flag.
An MPI_LB (respectively MPI_UB) without the PREDEFINED tag is useless, as it's
not the a marker anymore. The solution is to return the same pointer, but once
the reference count has been increased. In order for this to work, I allowed
the destruction to check for the reference count of an object before complaining
about destroying a predefined type.

This fixed ticket #317.

This commit was SVN r13942.
2007-03-06 18:21:49 +00:00
Tim Prins
74555cda51 - Re-enable MPI_Comm_spawn_multiple from singletons. It has been working for a while, but the check was never removed.
- Coding standardize some code
- Remove now unused help message

This commit was SVN r13858.
2007-02-28 22:09:30 +00:00
Jeff Squyres
b7b893b771 Need to EXTRA_DIST README.txt so that it gets included in the tarball;
the *_DATA files are not automatically picked up for inclusion into
the tarball.

This commit was SVN r13667.
2007-02-15 16:21:25 +00:00
Jeff Squyres
dd35fb73ff * Fix some "MPI:Exception" typos (needs 2 :'s)
* Update exactly how we handle MPI exceptions, particularly with
   respect to MPI-1 section 3.2.5, and how error handlers are only
   invoked for the ''first'' request that generates an exception.
 * Update the "see also" section to be consistent across all 8
   MPI_Test* and MPI_Wait* functions.
 * Fixes trac:560

This commit was SVN r13619.

The following Trac tickets were found above:
  Ticket 560 --> https://svn.open-mpi.org/trac/ompi/ticket/560
2007-02-12 18:08:42 +00:00
Jeff Squyres
260f1fd468 Fixes trac:817
The C++ bindings were not tracking keyvals properly -- they were
freeing some internal meta data when Free_keyval() was called, not
when the keyval was actually destroyed (keyvals are refcounted in the
C layer, just like all other MPI objects, because they can live for
long after their corresponding Free call is invoked).  This commit
fixes this problem and several other things:

 * Add infrastructure on the ompi_attribute_keyval_t for an "extra"
   destructor pointer that will be invoked during the "real"
   constructor (i.e., when OBJ_RELEASE puts the refcount to 0).  This
   allows calling back into the C++ layer to release meta data
   associated with the keyval.
 * Adjust all cases where keyvals are created to pass in relevant
   destructors (NULL or the C++ destructor).
 * Do essentially the same for MPI::Comm, MPI::Win, and MPI:Datatype:
   * Move several functions out of the .cc file into the _inln.h file
     since they no longer require locks
   * Make the 4 Create_keyval() functions call a common back-end
     keyval creation function that does the Right Thing depending on
     whether C or C++ function pointers were used for the keyval
     functions.  The back-end function does not call the corresponding
     C MPI_*_create_keyval function, but rather does the work itself
     so that it can associate a "destructor" callback for the C++
     bindings for when the keyval is actually destroyed.
   * Change a few type names to be more indicative of what they are
     (mostly dealing with keyvals [not "keys"]).
 * Add the 3 missing bindings for MPI::Comm::Create_keyval().
 * Remove MPI::Comm::comm_map (and associated types) because it's no
   longer necessary in the intercepts -- it was a by-product of being
   a portable C++ bindings layer.  Now we can just query the C layer
   directly to figure out what type a communicator is.  This solves
   some logistics / callback issues, too.
 * Rename several types, variables, and fix many comments in the
   back-end C attribute implementation to make the names really
   reflect what they are (keyvals vs. attributes).  The previous names
   heavily overloaded the name "key" and were ''extremely''
   confusing.

This commit was SVN r13565.

The following Trac tickets were found above:
  Ticket 817 --> https://svn.open-mpi.org/trac/ompi/ticket/817
2007-02-08 23:50:04 +00:00
George Bosilca
eaa164d52f Don't check for the DT_FLAG_DATA. It is never set. This was intended to be
a protection against creating subarrays with MPI_LB and MPI_UB. But, I don't
think the MPI standard state anything about this.

This commit was SVN r13504.
2007-02-06 03:58:24 +00:00
Karen Norteman
410f657d07 Fixes trac:876
This commit was SVN r13502.

The following Trac tickets were found above:
  Ticket 876 --> https://svn.open-mpi.org/trac/ompi/ticket/876
2007-02-05 22:26:02 +00:00
Terry Dontje
244fb76002 This commit fixes trac:856.
This commit was SVN r13464.

The following Trac tickets were found above:
  Ticket 856 --> https://svn.open-mpi.org/trac/ompi/ticket/856
2007-02-02 12:48:26 +00:00
Karen Norteman
59cc09fd1a Fixes trac:850, updates man pages
This commit was SVN r13456.

The following Trac tickets were found above:
  Ticket 850 --> https://svn.open-mpi.org/trac/ompi/ticket/850
2007-02-01 21:57:48 +00:00
Karen Norteman
4dc71969b1 trac bug 850
This commit was SVN r13452.
2007-02-01 21:29:06 +00:00
Karen Norteman
f545127e7d trac bug 850
This commit was SVN r13451.
2007-02-01 21:28:22 +00:00
Karen Norteman
984d764259 trac bug 850
This commit was SVN r13450.
2007-02-01 21:27:38 +00:00
Karen Norteman
8dd7e175cd trac bug 850
This commit was SVN r13449.
2007-02-01 21:26:59 +00:00
Karen Norteman
47a3f7f760 trac bug 850
This commit was SVN r13448.
2007-02-01 21:26:18 +00:00
Karen Norteman
40eeeaef39 trac bug 850
This commit was SVN r13447.
2007-02-01 21:25:35 +00:00
Karen Norteman
e304eec9dc trac bug 850
This commit was SVN r13446.
2007-02-01 21:24:37 +00:00
Karen Norteman
8a627e8957 trac bug 850
This commit was SVN r13445.
2007-02-01 21:23:54 +00:00
Karen Norteman
25b153848d trac bug 850
This commit was SVN r13444.
2007-02-01 21:23:13 +00:00
Karen Norteman
0c30c74b0a trac bug 850
This commit was SVN r13443.
2007-02-01 21:22:34 +00:00
Karen Norteman
7a60f878a9 trac bug 850
This commit was SVN r13442.
2007-02-01 21:21:43 +00:00
Karen Norteman
11b91057ec trac bug 850
This commit was SVN r13441.
2007-02-01 21:21:00 +00:00
Karen Norteman
180ff99233 trac bug 850
This commit was SVN r13440.
2007-02-01 21:20:14 +00:00
Karen Norteman
a8b066798a trac bug 850
This commit was SVN r13439.
2007-02-01 21:19:08 +00:00
Karen Norteman
e13398b68d trac bug 850
This commit was SVN r13438.
2007-02-01 21:16:43 +00:00
Karen Norteman
cea22389bb trac bug 850
This commit was SVN r13437.
2007-02-01 21:15:43 +00:00
Pak Lui
01c45b9637 * should fix the uninitialized function pointers. This is the patch to the
patch in r13391

This commit was SVN r13411.

The following SVN revision numbers were found above:
  r13391 --> open-mpi/ompi@289fbd08de
2007-02-01 05:07:53 +00:00
Pak Lui
289fbd08de * Fix the MPI::Datatype::Create_keyval() & MPI::Win::Create_keyval()
not being able to take C function pointers for either of the 
	copy or the delete fn. Fix by overloading the Create_keyval methods. 
    Fix trac #737, #738. Reviewed by jsquyres.
  *	A couple of cxx tests in ompi-tests (winkeyval.cc & typekeyval.cc) 
	will be re-enabled to regression test for this fix.

This commit was SVN r13391.
2007-01-31 15:00:41 +00:00
Jeff Squyres
a45e8bea05 Fixes trac:830. Put in argument checking for MPI_INIT_THREAD.
This commit was SVN r13353.

The following Trac tickets were found above:
  Ticket 830 --> https://svn.open-mpi.org/trac/ompi/ticket/830
2007-01-29 21:56:15 +00:00
Jeff Squyres
61bc9fed3c Duh. Free the temp array when we're done with it. While we're making
this switch, use a clear variable name, too.

This commit was SVN r13347.
2007-01-29 19:04:57 +00:00
Jeff Squyres
e6a0069e95 Fix from an as-yet uncommitted test that Pak will commit shortly.
Found another places that we were incorrectly casting a C++ MPI handle
array to the corresponding C array type and hoping for the best (which
won't work at all).  This commit fixes things so that we now do the
proper conversion between C<-->C++ handles.

This commit was SVN r13346.
2007-01-29 18:44:46 +00:00
Rainer Keller
ca35881cd0 - Minor bugfixes and removed compiler warnings
This commit was SVN r13343.
2007-01-28 19:52:09 +00:00
Jeff Squyres
b9120aed6d Always make sure to create $(includedir)/openmpi, even if we were
configured with --disable-mpi-cxx so that the default -I flags in the
wrapper compilers don't point to a directory that doesn't exist.
Thanks to Martin Audet for identifying the problem.

This commit was SVN r13296.
2007-01-25 01:59:22 +00:00