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

1229 Коммитов

Автор SHA1 Сообщение Дата
0acebc0a1f Make the Alltoall/Ialltoallw F08 interfaces a little less sucky.
Use proper array types for the sendtypes and recevtypes params in the
definition of these subroutines (since they're prototyped to be array
parameters in the module).  See the comment in the code for a more
complete explanation.

Note that after talking to Craig Rasumussen, he says that this is
fairly common practice in the Fortran community (i.e., pass a scalar
that is part of an array to effectively pass an offset into that
array, since Fortran passes by reference).  So this might be a hack,
but it's a commonly-accepted hack.

Reviewed by Craig Rasmussen.

cmr=v1.7.3:subject=Fix [I]Alltoallw mpi_f08 wrapper functions

This commit was SVN r29298.
2013-09-30 17:50:43 +00:00
b84863be20 Add missing MPI_Dist_graph interfaces to the ignore-TKR Fortran mpi module bindings.
This commit was SVN r29295.
2013-09-30 16:09:10 +00:00
0939788fd4 README.txt was removed, so remove it from EXTRA_DIST.
This commit was SVN r29292.
2013-09-29 21:52:52 +00:00
2f81173acf Update Javadoc of MPIException.
This commit was SVN r29291.
2013-09-29 10:57:14 +00:00
b97951ab3b Allow NULL buffers to send/recv 0 items as control messages.
This commit was SVN r29290.
2013-09-29 10:36:09 +00:00
f656c9859c Improved README.JAVA; remove README file in java directory
This commit was SVN r29289.
2013-09-29 10:22:38 +00:00
4313bbbe20 Fix type in weak symbol declarations for the new _x functions.
This commit was SVN r29284.
2013-09-28 12:31:56 +00:00
c0232e031c Add some missing declarations to allow the new Fortran neighbor
collective interfaces to compile.

This commit was SVN r29283.
2013-09-28 12:14:25 +00:00
76450fe629 Add "jdoc" target to make javadocs
This commit was SVN r29282.
2013-09-28 12:11:22 +00:00
114022146a Add a missing "const" to MPI_Unpack (addendum to r29266).
Refs trac:3785.

This commit was SVN r29278.

The following SVN revision numbers were found above:
  r29266 --> open-mpi/ompi@0b8fc13299

The following Trac tickets were found above:
  Ticket 3785 --> https://svn.open-mpi.org/trac/ompi/ticket/3785
2013-09-27 12:48:28 +00:00
0b8fc13299 MPI-3.0: update C bindings with const and consistent use of [] for
arrays.

The MPI 3.0 standard added const to all in buffers in the C bindings. This
commit adds the const keyword and in most cases casts const away. We will
eventually should go through and update the various interfaces (coll, pml,
io, etc) to take the const keyword. The group, comm, win, and datatype
interfaces have been updated with const.

cmr=v1.7.4:ticket=trac:3785:reviewer=jsquyres

This commit was SVN r29266.

The following Trac tickets were found above:
  Ticket 3785 --> https://svn.open-mpi.org/trac/ompi/ticket/3785
2013-09-26 21:56:20 +00:00
c5596548b2 MPI-3: Add support for neighborhood collectives
Blocking versions are simple linear algorithms implemented in coll/basic. Non-
blocking versions are from libnbc 1.1.1. All algorithms have been tested with
simple test cases.

cmr=v1.7.4:reviewer=jsquyres

This commit was SVN r29265.
2013-09-26 21:55:08 +00:00
e4e3e411fc Next generation of MPI Java bindings.
Includes all MPI functions supported by Open MPI, including MPI-3
functions (as of about 2 weeks ago).  Many changes compared to the
prior generation of Java bindings; not much is left from the prior
generation, actually.  The changes include (but are not limited to):

 * Add support for more than just a subset of MPI-1 functions
 * Use typical Java case for symbol names
 * Support Java Direct buffers (giving darn-near "native C"
   performance)
 * Support "type struct" better than the prior generation
 * Make more of an effort for the Java bindings to be a thin layer
   over the back-end C bindings
 * ...and more

A proper README with more information about what is supported, how to
use these bindings, etc. will be committed shortly.

This commit was SVN r29263.
2013-09-26 21:44:39 +00:00
85db48df0e Identification, tab vs. space.
This commit was SVN r29206.
2013-09-18 16:45:00 +00:00
99611ac1d2 Revert r29166 in favor of a better solution from George
This commit was SVN r29199.

The following SVN revision numbers were found above:
  r29166 --> open-mpi/ompi@497c7e6abb
2013-09-18 01:41:26 +00:00
497c7e6abb Fixes trac:2904
The intercomm "merge" function can create a linkage between procs that was not reflected anywhere in a modex, and so at least some of the procs in the resulting communicator don't know how to talk to some of the new communicator's peers.

For example, consider the case where:

1. parent job A comm_spawns a process (job B) - these processes exchange modex and can communicate

2. parent job A now comm_spawns another process (job C) - again, these can communicate, but the proc in C knows nothing of B

3. do an intercomm merge across the communicators created by the two comm_spawns. This puts B and C into the same communicator, but they know nothing about how to talk to each other as they were not involved in any exchange of contact info. Hence, collectives on that communicator now fail. 

This fix adds an API to the ompi/dpm framework that (a) exchanges the modex info across the procs in the merge to ensure all procs know how to communicate, and (b) calls add_procs to give the btl's a chance to select transports to any new procs.

cmr:v1.7.3:reviewer=jsquyres

This commit was SVN r29166.

The following Trac tickets were found above:
  Ticket 2904 --> https://svn.open-mpi.org/trac/ompi/ticket/2904
2013-09-15 15:00:40 +00:00
2aed876be6 Fix the bug where MPI_is_thread_main returns true for all
threads when not in MPI_THREAD_MULTIPLE mode.
Thanks to Lisandro Dalcin for pointing it out.

This commit was SVN r29113.
2013-09-04 11:10:51 +00:00
2da64eb719 Fix compilation of the MPI tools information interface when profiling
is enabled and fix a bug in the handling of watermark performance
variables.

cmr=v1.7.3:ticket=trac:3725:reviewer=jsquyres

This commit was SVN r29068.

The following Trac tickets were found above:
  Ticket 3725 --> https://svn.open-mpi.org/trac/ompi/ticket/3725
2013-08-27 18:19:18 +00:00
c5f395d36a Silence unitialized var warnings
This commit was SVN r29035.
2013-08-16 21:37:35 +00:00
7d2e3028d6 Add unique info_key to documentation
This commit was SVN r29029.
2013-08-14 04:24:17 +00:00
ed130dcef0 Add missing Fortran mpi module TKR implementation for MPI_Get_address
This commit was SVN r29005.
2013-08-06 15:08:00 +00:00
710d3836d5 Use a recv convertor for the pack external case.
This commit was SVN r29003.
2013-08-06 09:09:42 +00:00
4adaaa0b2b Fix the profiling prototypes and the copyright.
This commit was SVN r29000.
2013-08-05 21:07:32 +00:00
a938f8fcc5 Add all missing prototypes for the _x functions.
This commit was SVN r28999.
2013-08-05 20:49:31 +00:00
47b1128993 It must be an MPI_Count.
This commit was SVN r28998.
2013-08-05 20:49:00 +00:00
c59770651f Propagate the use of MPI_COUNT_KIND everywhere.
This commit was SVN r28956.
2013-07-25 22:41:48 +00:00
a001f01f05 Remove the other bogus KIND from here; it looks like old kruft
This commit was SVN r28955.
2013-07-25 22:41:12 +00:00
7097ba3992 MPI_COUNT_KIND is defined in mpif-config.h
This commit was SVN r28954.
2013-07-25 21:42:27 +00:00
cb90a4a7fc Add simple algorithms to support MPI_IN_PLACE for MPI_Alltoall, MPI_Alltoallv, and MPI_Alltoallw.
Working on faster algorithms for tuned that will come at a later time.

cmr=v1.7.3:ticket=trac:2965

This commit was SVN r28952.

The following Trac tickets were found above:
  Ticket 2965 --> https://svn.open-mpi.org/trac/ompi/ticket/2965
2013-07-25 19:19:41 +00:00
22868b9f68 MPI_T: add man pages for MPI_T_* functions and fix typos in tool file names
This commit was SVN r28943.
2013-07-24 18:19:40 +00:00
90f5bd9424 Add missing f08 binding declarations for MPI_Count functions
This commit was SVN r28936.
2013-07-23 19:00:06 +00:00
c6e586a81d MPI-3: fortran support for large counts using derived datatypes
Jeff:
 - Make sure not to go over 72 characters.  Love Fortran!
 - Ensure to include 'mpif-config.h' in Type_size_x.

This commit was SVN r28933.
2013-07-23 15:36:03 +00:00
c4c69b4ddf MPI-3: add support for large counts using derived datatypes
Add support for MPI_Count type and MPI_COUNT datatype and add the required
MPI-3 functions MPI_Get_elements_x, MPI_Status_set_elements_x,
MPI_Type_get_extent_x, MPI_Type_get_true_extent_x, and MPI_Type_size_x.
This commit adds only the C bindings. Fortran bindins will be added in
another commit. For now the MPI_Count type is define to have the same size
as MPI_Offset. The type is required to be at least as large as MPI_Offset
and MPI_Aint. The type was initially intended to be a ssize_t (if it was
the same size as a long long) but there were issues compiling romio with
that definition (despite the inclusion of stddef.h).

I updated the datatype engine to use size_t instead of uint32_t to support
large datatypes. This will require some review to make sure that 1) the
changes are beneficial, 2) nothing was broken by the change (I doubt
anything was), and 3) there are no performance regressions due to this
change.

Increase the maximum number of predifined datatypes to support MPI_Count

Put common get_elements code to ompi/datatype/ompi_datatype_get_elements.c

Update MPI_Get_count to reflect changes in MPI-3 (return MPI_UNDEFINED when the count is too large for an int)

This commit was SVN r28932.
2013-07-23 15:35:14 +00:00
38bcbc4696 mpit: fix behavior when returning strings
This commit was SVN r28804.
2013-07-16 16:03:48 +00:00
e6e9f2c6fd Add profiling function definitions for MPI_T and add a missing type into mpi.h
This commit was SVN r28803.
2013-07-16 16:03:33 +00:00
fe012cdc2b Use the converted value instead of calling the macro again.
This commit was SVN r28701.
2013-07-02 11:33:18 +00:00
5fae72b9aa Add the MPI 2.2 MPI_Dist_graph functionality.
This patch reshape the way we deal with topologies completely. Where
our topologies were mainly storage components (they were not capable
of creating the new communicator), the new version is built around a
[possibly] common representation (in mca/topo/topo.h), but the functions
to attach and retrieve the topological information are specific to each
component. As a result the ompi_create_cart and ompi_create_graph functions
become useless and have been removed.

In addition to adding the internal infrastructure to manage the topology
information, it updates the MPI interface, and the debuggers support and
provides all Fortran interfaces.

This commit was SVN r28687.
2013-07-01 12:40:08 +00:00
34fb0712c4 Per https://svn.mpi-forum.org/trac/mpi-forum-web/ticket/256, we need
to set *flag=1 when source == MPI_PROC_NULL.

cmr:v1.7.2:reviewer=dgoodell
cmr:v1.6.5:reviewer=dgoodell

This commit was SVN r28621.
2013-06-12 21:38:07 +00:00
bf7f9b1f41 Fix minor typo in man page.
This commit was SVN r28606.
2013-06-10 13:44:48 +00:00
43a534a5c6 Revert r28544: the original code was fine.
This commit was SVN r28549.

The following SVN revision numbers were found above:
  r28544 --> open-mpi/ompi@c830d96673
2013-05-21 16:06:08 +00:00
c830d96673 Silence compiler warnings, as suggested by Alan Sayre.
This commit was SVN r28544.
2013-05-21 13:42:18 +00:00
3e6e1046a3 fix a correctness issue by returning an error if waitall fails and invoking the mpi error handler
cmr:v1.7.2:reviewer=jsquyres

This commit was SVN r28533.
2013-05-16 15:04:37 +00:00
2331000d63 Correctly handle the invalid status for null and inactive
requests. This patch fixes trac:3475.

CMR v1.6, v1.7

This commit was SVN r28431.

The following Trac tickets were found above:
  Ticket 3475 --> https://svn.open-mpi.org/trac/ompi/ticket/3475
2013-05-01 12:55:24 +00:00
eeb1d83c1d Don't assign the status if MPI_STATUS_IGNORE is passed in. Thanks to
Lisandro Dalcin for finding the issue.

This commit was SVN r28430.
2013-05-01 12:32:58 +00:00
c9c6ced1c9 Use some handy shell scripts from W Spector to s/ierr/ierror/ in the
mpi module.

This commit was SVN r28403.
2013-04-26 22:07:42 +00:00
975ff4675e rc was used before it was initialized. Looks like this minor bug was
introduced in r28241.

This commit was SVN r28316.

The following SVN revision numbers were found above:
  r28241 --> open-mpi/ompi@9d4a26f47d
2013-04-09 21:49:15 +00:00
9d4a26f47d Update OMPI frameworks to use the MCA framework system.
Notes:
  - This commit also eliminates the need for an available components list in use
    in several frameworks. None of the code in question was making use of the
    priority field of the priority component list item so these extra lists were
    removed.
  - Cleaned up selection code in several frameworks to sort lists using opal_list_sort.
  - Cleans up the ompi/orte-info functions. Expose the functions that construct the
    list of params so they can be used elsewhere.

patches for mtl/portals4 from brian

missed a few output variables in openib

This commit was SVN r28241.
2013-03-27 21:17:31 +00:00
a4b6fb241f Remove all remaining vestiges of the Windows integration
This commit was SVN r28137.
2013-02-28 17:31:47 +00:00
fb217ff8ff Fix --disable-mpi-io in the Fortran mpi-f08 interface.
This commit was SVN r28097.
2013-02-22 03:08:04 +00:00
debe06289c Thanks to Siegmar Gross; he pointed out that I didn't read
http://docs.oracle.com/javase/tutorial/java/nutsandbolts/datatypes.html
carefully enough: a Java "char" is actually 16 bits, not 8.

This commit was SVN r28087.
2013-02-21 14:29:18 +00:00