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

419 Коммитов

Автор SHA1 Сообщение Дата
Jeff Squyres
d85527701a Fix MPI_COMM_SPLIT_TYPE with MPI_UNDEFINED
Thanks to Lisandro Dalcin for identifying the problem.

Fixes trac:4876

Submitted by George Boscila, reviewed by Jeff Squyres.

cmr=v1.8.3:reviewer=ompi-rm1.8

This commit was SVN r32615.

The following Trac tickets were found above:
  Ticket 4876 --> https://svn.open-mpi.org/trac/ompi/ticket/4876
2014-08-27 12:17:33 +00:00
George Bosilca
8de93982d5 Correctly build the args for the hindexed_block datatype.
cmr=v1.8.3:reviewer=jsquyres

This commit was SVN r32613.
2014-08-27 03:45:07 +00:00
Ralph Castain
552c9ca5a0 George did the work and deserves all the credit for it. Ralph did the merge, and deserves whatever blame results from errors in it :-)
WHAT:    Open our low-level communication infrastructure by moving all necessary components (btl/rcache/allocator/mpool) down in OPAL

All the components required for inter-process communications are currently deeply integrated in the OMPI layer. Several groups/institutions have express interest in having a more generic communication infrastructure, without all the OMPI layer dependencies.  This communication layer should be made available at a different software level, available to all layers in the Open MPI software stack. As an example, our ORTE layer could replace the current OOB and instead use the BTL directly, gaining access to more reactive network interfaces than TCP.  Similarly, external software libraries could take advantage of our highly optimized AM (active message) communication layer for their own purpose.  UTK with support from Sandia, developped a version of Open MPI where the entire communication infrastucture has been moved down to OPAL (btl/rcache/allocator/mpool). Most of the moved components have been updated to match the new schema, with few exceptions (mainly BTLs where I have no way of compiling/testing them). Thus, the completion of this RFC is tied to being able to completing this move for all BTLs. For this we need help from the rest of the Open MPI community, especially those supporting some of the BTLs.  A non-exhaustive list of BTLs that qualify here is: mx, portals4, scif, udapl, ugni, usnic.

This commit was SVN r32317.
2014-07-26 00:47:28 +00:00
Gilles Gouaillardet
77184b5c4c Fix a cornercase with MPI_PROC_NULL persistent requests
Handle OMPI_REQUEST_NOOP in MPI_Startall rather than PML

cmr=v1.8.2:reviewer=bosilca:ticket=4764

This commit was SVN r32213.

The following Trac tickets were found above:
  Ticket 4764 --> https://svn.open-mpi.org/trac/ompi/ticket/4764
2014-07-11 04:37:01 +00:00
George Bosilca
2861419661 Correct trivial typos in man files and FUNC_NAME variables.
Patch provided by Fujitsu (Kawashima, Takahiro)

cmr=v1.8.2:reviewer=jsquyres

This commit was SVN r32190.
2014-07-10 01:47:23 +00:00
Gilles Gouaillardet
bd72628a9d Cleanup : fix the cornercase with MPI_PROC_NULL persistent requests.
This commit was SVN r32140.
2014-07-04 07:20:44 +00:00
Gilles Gouaillardet
8d3bea2771 Fix the cornercase with MPI_PROC_NULL persistent requests.
This corner case is now handled in the pml so the same code
is invoked for both MPI_Start and MPI_Startall.
This also correctly report an error if MPI_Startall is invoked twice
on a MPI_PROC_NULL persistent request.

This commit was SVN r32139.
2014-07-04 04:58:52 +00:00
George Bosilca
843ef1fcb0 ompi_mpi_abort had one extra argument that was never used. Clean it up.
This commit was SVN r32124.
2014-07-03 00:34:44 +00:00
Ralph Castain
f3cb124e50 Revert r32082 and r32070 - the developer's conference has decided to go a different direction on the threaded progress effort. This will involve some degree of prototyping to understand the tradeoffs prior to making a final design decision, and so we'll hold off on the final change until that is completed.
This commit was SVN r32089.

The following SVN revision numbers were found above:
  r32070 --> open-mpi/ompi@12d92d0c22
  r32082 --> open-mpi/ompi@aa6438ef7a
2014-06-25 20:43:28 +00:00
Ralph Castain
12d92d0c22 Per the OMPI developer conference, remove the last vestiges of OMPI_USE_PROGRESS_THREADS
This commit was SVN r32070.
2014-06-24 17:05:11 +00:00
Gilles Gouaillardet
e9ed9def02 Fix MPI_Alltoallv in coll/tuned
This changeset :
- always call the low/level implementation for :
  * MPI_Alltoallv
  * MPI_Neighbor_alltoallv
  * MPI_Alltoallw
  * MPI_Neighbor_alltoallv
- fix mca_coll_tuned_alltoallv_intra_basic_inplace
  so zero size types are correctly handled

cmr=v1.8.2:reviewer=bosilca:ticket=4715

This commit was SVN r32013.

The following Trac tickets were found above:
  Ticket 4715 --> https://svn.open-mpi.org/trac/ompi/ticket/4715
2014-06-17 06:11:34 +00:00
Nathan Hjelm
37ae430424 rma: fix locking/unlocking of MPI_PROC_NULL
It is valid to lock/unlock MPI_PROC_NULL. It probably isn't work tracking
whether MPI_PROC_NULL is locked for MPI_PROC_NULL RMA operations so this
is probably the permanent solution.

Closes trac:4720

Tracking the 1.8.2 issue with this CMR.

cmr=v1.8.2:reviewer=bbenton

This commit was SVN r32011.

The following Trac tickets were found above:
  Ticket 4720 --> https://svn.open-mpi.org/trac/ompi/ticket/4720
2014-06-17 04:41:49 +00:00
George Bosilca
84193fff6d More comprehensible error messages.
This commit was SVN r32007.
2014-06-16 20:23:16 +00:00
Gilles Gouaillardet
1a17a2a960 Fixes MEMCHECKER vs MPI_IN_PLACE in *alltoall*
cmr=v1.8.2:reviewer=bosilca

This commit was SVN r31924.
2014-06-02 04:43:48 +00:00
Gilles Gouaillardet
40f3b849eb Fix argument checks for [i]neighbor_alltoall{v|w}
This fixes a bug introduced in :
 - r31815 (trunk) 
 - r31853 (v1.8 branch)

cmr=v1.8.2:reviewer=bosilca

This commit was SVN r31888.

The following SVN revision numbers were found above:
  r31815 --> open-mpi/ompi@8bafe06c57
  r31853 --> open-mpi/ompi@bff944d766
2014-05-23 08:19:17 +00:00
Gilles Gouaillardet
c496131eef Fixes *alltoall* collectives at top
- fix bugs
 - silent warnings

cmr=v1.8.2:ticket=4651:reviewer=bosilca

This commit was SVN r31831.

The following Trac tickets were found above:
  Ticket 4651 --> https://svn.open-mpi.org/trac/ompi/ticket/4651
2014-05-20 05:32:57 +00:00
Gilles Gouaillardet
8bafe06c57 Fixes *alltoall* collectives at top level
This commit :
 - Correctly retrieve the communicator size when
   checking memory and parameters
 - Ensure (sendtype,sendcount) and (recvtype,recvcount)
   matches and return with MPI_ERR_TRUNCATE otherwise
 - Return with MPI_SUCCESS without invoking the low level
   if no data is going to be transferred
 - Fixes trac:4506

cmr=v1.8.2:reviewer=bosilca

This commit was SVN r31815.

The following Trac tickets were found above:
  Ticket 4506 --> https://svn.open-mpi.org/trac/ompi/ticket/4506
2014-05-19 07:46:07 +00:00
George Bosilca
750c6c7861 Update the UTK copyright on the topology related files.
This commit was SVN r31805.
2014-05-16 22:23:52 +00:00
Gilles Gouaillardet
e3df77548d Fix memory leak when releasing a communicator created by
MPI_Cart_Create/MPI_Graph_create/MPI_Dist_Graph

Fixes trac:4581

This commit was SVN r31716.

The following Trac tickets were found above:
  Ticket 4581 --> https://svn.open-mpi.org/trac/ompi/ticket/4581
2014-05-13 04:49:23 +00:00
George Bosilca
17b3c7e906 Fix the issue reported by Gilles Gouaillardet regarding the
MPI_PROC_NULL persistent requests.

This commit was SVN r31524.
2014-04-24 18:07:09 +00:00
Nathan Hjelm
52f519dacb Allow MPI_MODE_NOPRECEDE | MPI_MODE_NOSUCCEED for MPI_Win_fence
This combination does not make sense but is not explicitly forbidden by
the standard so remove the argument check for this combination.

cmr=v1.8.2:reviewer=jsquyres

This commit was SVN r31523.
2014-04-24 17:36:10 +00:00
Jeff Squyres
ca80c7a9bd cart_sub.c: allow remain_dims==NULL if there is no topology on comm
Patch submitted by Gilles Gouaillardet on #4518.  Reviewed by Jeff.

Fixes trac:4518

cmr=v1.8.2:reviewer=ompi-rm1.8

This commit was SVN r31517.

The following Trac tickets were found above:
  Ticket 4518 --> https://svn.open-mpi.org/trac/ompi/ticket/4518
2014-04-24 16:10:44 +00:00
Jeff Squyres
b65e7caa77 op_commutative.c: use ompi_op_is_commute(), not the expanded test
One more commit for this ticket... as pointed out by Giles, we have
ompi_op_is_commute().  We should use that instead of replicating the
logic for the test.

Refs trac:4548

This commit was SVN r31497.

The following Trac tickets were found above:
  Ticket 4548 --> https://svn.open-mpi.org/trac/ompi/ticket/4548
2014-04-22 20:08:40 +00:00
Jeff Squyres
b0c4b1aa20 op_commutative.c: ...but we should check for MPI_OP_NULL
Refs trac:4548

This commit was SVN r31492.

The following Trac tickets were found above:
  Ticket 4548 --> https://svn.open-mpi.org/trac/ompi/ticket/4548
2014-04-22 19:30:55 +00:00
Jeff Squyres
dba256cd6c op_commutative.c: don't check if the op is predefined or not
MPI_OP_COMMUTATIVE should work on all MPI_Op's -- regardless of
whether they are predefined or not.

Refs trac:4548.

This commit was SVN r31491.

The following Trac tickets were found above:
  Ticket 4548 --> https://svn.open-mpi.org/trac/ompi/ticket/4548
2014-04-22 19:26:15 +00:00
Oscar Vega-Gisbert
296bc56241 Java: apply a patch which solves the ticket #4313
This commit was SVN r31470.
2014-04-21 21:44:25 +00:00
George Bosilca
399c8b18d2 Fix a parameter check. Thanks Lisandro Dalcin for the bug report.
More info @ http://www.open-mpi.org/community/lists/devel/2014/04/14561.php

cmr=v1.8.2:reviewer=ompi-rm1.8

This commit was SVN r31467.
2014-04-21 17:00:56 +00:00
George Bosilca
95a4f219ea This commit fixes some of the Coverity reported warnings. I addressed
some of the collective modules, the shared memory and the profiling
interface. I left out VT, dynamic fcoll and seq rmaps.

cmr=v1.8.1:reviewer=jsquyres:subject=silence Coverity reported warnings

This commit was SVN r31309.
2014-04-06 18:23:49 +00:00
Jeff Squyres
173c046617 build: add Automake-like silent/verbose macros for "ln -s ..." operations
Also, since I put some of the macros for these silent/verbose rules up
in the top-level Makefile.man-page-rules file, I renamed it to
Makefile.ompi-rules.

I've had this sitting around for a while; now seems like as good a
time as any to commit it.

This commit was SVN r31271.
2014-03-28 18:24:32 +00:00
Nathan Hjelm
595a6e94e6 Fix typos in r31260
Also added some missing values and sentinels.

cmr=v1.8:ticket=trac:4470

This commit was SVN r31263.

The following SVN revision numbers were found above:
  r31260 --> open-mpi/ompi@69036437b7

The following Trac tickets were found above:
  Ticket 4470 --> https://svn.open-mpi.org/trac/ompi/ticket/4470
2014-03-27 22:34:28 +00:00
Jeff Squyres
24f7bd327e MPI-3: Add missing MPI_Comm_get|set_info functions
Thanks to Lisandro Dalcin for pointing out the issue.

cmr=v1.8:reviewer=hjelmn

This commit was SVN r31262.
2014-03-27 21:41:59 +00:00
Nathan Hjelm
69036437b7 Add missing MPI_WEIGHTS_EMPTY constant
cmr=v1.8:reviewer=jsquyres

This commit was SVN r31260.
2014-03-27 20:59:52 +00:00
Nathan Hjelm
545d5daced osc: add missing MPI_ERR_RMA_SHARED error code and internal equivalent
cmr=v1.8:reviewer=jsquyres

This commit was SVN r31259.
2014-03-27 20:06:43 +00:00
Nathan Hjelm
6648a46963 rma: fix semantic errors in osc/rdma and MPI_Win_fence
- Return an error if the caller specified both MPI_MODE_NOPRECEDE and
   MPI_MODE_NOSUCCEED to MPI_Win_fence.

 - Return an error if the caller attempts to enter an active target
   epoch while already in a passive target epoch.

 - End an active target epoch if MPI_Win_fence is called with
   MPI_MODE_NOSUCCEED.

cmr=v1.7.5:ticket=trac:4382

This commit was SVN r31043.

The following Trac tickets were found above:
  Ticket 4382 --> https://svn.open-mpi.org/trac/ompi/ticket/4382
2014-03-12 17:14:03 +00:00
Jeff Squyres
da87b506bd Remove warnings identified by clang 3.4
* Remove unused static functions
 * Remove unused static variables

cmr=v1.8:reviewer=hjelmn

This commit was SVN r31023.
2014-03-12 13:17:54 +00:00
Ralph Castain
647fdaaa22 Fix an MPI-3 compliance buglet - MPI_Info_set should now use "const" qualifiers on the key and value parameters
cmr=v1.7.5:reviewer=jsquyres

This commit was SVN r31013.
2014-03-11 23:50:09 +00:00
Ralph Castain
49d938de29 Merge one-sided updates to the trunk - written by Brian Barrett and Nathan Hjelmn
cmr=v1.7.5:reviewer=hjelmn:subject=Update one-sided to MPI-3

This commit was SVN r30816.
2014-02-25 17:36:43 +00:00
Ralph Castain
b787e2054f Silence warning
cmr=v1.7.5:reviewer=ompi-gk1.7

This commit was SVN r30721.
2014-02-14 00:00:23 +00:00
Christoph Niethammer
010a806a58 Omit usage of pre calculated prime numbers and factorize directly.
Optimization of the MPI_Dims_create function which omits the usage of pre
calculated prime numbers and factorize directly as discussed at the developer
list.

cmr=v1.7.5:ticket=4217:reviewer=jsquyres

This commit was SVN r30695.

The following Trac tickets were found above:
  Ticket 4217 --> https://svn.open-mpi.org/trac/ompi/ticket/4217
2014-02-12 08:47:33 +00:00
Christoph Niethammer
85dce869c8 Move parameter check into appropriate code section at the begin.
Freeprocs variable was obtained from nnodes, so check the value of nnodes at
the begin in the MPI_PARAM_CHECK code section instead as discussed at the
developer list.

cmr=v1.7.5:reviewer=jsquyres:subject=move parameter check to begin


jsquyres, please review this CMR. Thanks.

This commit was SVN r30694.
2014-02-12 08:30:13 +00:00
Jeff Squyres
6f8e76df7e Revert r30539 and r30540; using the sqrt() to limit the computation is
just plain wrong (i.e., it gives wrong answers).  

When time permits, perhaps we can put in a better algorithm for
MPI_DIMS_CREATE (Andreas Schäfer mentioned that nnodes can now be on
the order of millions, and the current algorithm is... inefficient, at
best).

This commit was SVN r30606.

The following SVN revision numbers were found above:
  r30539 --> open-mpi/ompi@fb67d98867
  r30540 --> open-mpi/ompi@4417ed2133
2014-02-07 13:46:48 +00:00
Jeff Squyres
fa02bba7c5 Remove a bunch of extra whitespace.
Thanks to Andreas Schäfer for the original patch.

This commit was SVN r30541.
2014-02-03 19:30:43 +00:00
Jeff Squyres
4417ed2133 Gah; I missed the #include in r30539.
cmr=v1.7.5:ticket=trac:4217

This commit was SVN r30540.

The following SVN revision numbers were found above:
  r30539 --> open-mpi/ompi@fb67d98867

The following Trac tickets were found above:
  Ticket 4217 --> https://svn.open-mpi.org/trac/ompi/ticket/4217
2014-02-03 19:28:07 +00:00
Jeff Squyres
fb67d98867 Suggestion from Andreas Schäfer: we really only need sqrt(freeprocs)
primes.  This considerably reduces the computational load when
freeprocs is large.

cmr=v1.7.5:reviewer=hjelmn:subject=MPI_Dims_create optimization

This commit was SVN r30539.
2014-02-03 19:21:04 +00:00
Brian Barrett
8b778903d8 Fix longstanding issue with our multi-project support. Rather than using
pkg{data,lib,includedir}, use our own ompi{data,lib,includedir}, which is
always set to {datadir,libdir,includedir}/openmpi.  This will keep us from
having help files in prefix/share/open-rte when building without Open MPI,
but in prefix/share/openmpi when building with Open MPI.

This commit was SVN r30140.
2014-01-07 22:11:15 +00:00
Jeff Squyres
1448522d15 In an MPI_IBCAST, we cannot shortcut if there's only 1 process.
cmr=v1.7.4:reviewer=brbarret:subject=Fix IBCAST for COMM_SELF
-This line, and those below, will be ignored--

M    c/ibcast.c

This commit was SVN r30054.
2013-12-22 22:55:58 +00:00
Nathan Hjelm
ba4b0f9235 Remove meaningless checks. Refs trac:3828
This commit was SVN r29375.

The following Trac tickets were found above:
  Ticket 3828 --> https://svn.open-mpi.org/trac/ompi/ticket/3828
2013-10-04 17:24:59 +00:00
Nathan Hjelm
70878764d7 Silence compiler warnings on 32-bit platforms. Refs trac:3828
This commit was SVN r29374.

The following Trac tickets were found above:
  Ticket 3828 --> https://svn.open-mpi.org/trac/ompi/ticket/3828
2013-10-04 15:53:14 +00:00
Nathan Hjelm
c17b21b11d Due to MPI_Comm_idup we can no longer use the communicator's CID as
the fortran handle. Use a seperate opal_pointer_array to keep track of
the fortran handles of communicators.

This commit also fixes a bug in ompi_comm_idup where the newcomm was not
set until after the operation completed.

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

This commit was SVN r29342.

The following Trac tickets were found above:
  Ticket 3796 --> https://svn.open-mpi.org/trac/ompi/ticket/3796
2013-10-03 01:11:28 +00:00
Nathan Hjelm
195c892a9d Add support for MPI_Comm_dup_with_info, MPI_Comm_create_group, and
MPI_Comm_idup.

As part of this work I implemented a basic request scheduler in
ompi/comm/comm_request.c. This scheduler might be useful for more
than just communicator requests and could be moved to ompi/request
if there is a demand. Otherwise I will leave it where it is.

Added a non-blocking version of ompi_comm_set to support ompi_comm_idup.
The call makes a recursive call to comm_dup and a non-blocking version
was needed. To simplify the code the blocking version calls the nonblocking
version and waits on the resulting request if one exists.

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

This commit was SVN r29334.

The following Trac tickets were found above:
  Ticket 3796 --> https://svn.open-mpi.org/trac/ompi/ticket/3796
2013-10-02 14:26:40 +00:00