1
1

29513 Коммитов

Автор SHA1 Сообщение Дата
Ralph Castain
b19e5edf76 Correct parsing of ppr directives
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2019-01-02 09:03:13 -08:00
Yossi Itigin
00fbb4cc7e
Merge pull request #6234 from yosefe/topic/scoll-basic-fix-zero-size-collect
oshmem/scoll: fix shmem_collect32/64 for zero-size length
2019-01-02 12:13:48 +02:00
Yossi Itigin
939162ed33 oshmem/scoll: fix shmem_collect32/64 for zero-size length
Fixes scoll_basic failures with shmem_verifier, caused by recent changes
in handling of zero-size collectives.

- Check for zero-size length only for fixed size collect (shmem_fcollect),
  but not for variable-size collect (shmem_collect)
- Add 'nlong_type' parameter to internal broadcast function, to indicate
  whether the 'nlong' parameter is valid on non-root PEs, since it's
  used by shmem_collect algorithm. Before this change, some components
  assumed it's true (scoll_mpi) while others assumed it's false
  (scoll_basic).
- In scoll_basic, if nlong_type==false, do not exit if nlong==0, since
  this parameter may not be the same on all PEs.
- In scoll_mpi, fallback to scoll_basic if nlong_type==false, since MPI
  requires the 'count' argument of MPI_Bcast to be valid on all ranks.

Signed-off-by: Yossi Itigin <yosefe@mellanox.com>
2019-01-01 20:43:32 +02:00
Aurelien Bouteiller
e54496bf2a
Merge pull request #6087 from ICLDisco/export/errors_cid
Manage errors in communicator creations (cid)
2018-12-31 15:01:55 -05:00
Jeff Squyres
17be4c6d1f
Merge pull request #6229 from jsquyres/pr/fix-enable-grequest-extension-in-a-tarball
romio321: ensure to distribute ompi_grequestx.h
2018-12-28 16:15:23 -05:00
Gilles Gouaillardet
79f02ade22
Merge pull request #6230 from ggouaillardet/topic/pmix_refresh
pmix/pmi4x: refresh to latest PMIx
2018-12-28 15:11:53 +09:00
Gilles Gouaillardet
0203531695 pmix/pmi4x: refresh to latest PMIx
refresh to pmix/pmix@fae0ee7d94

Refs. open-mpi/ompi#6228

Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
2018-12-28 12:57:57 +09:00
Gilles Gouaillardet
6dd8bb6e6c pmix: update git ignore
allow AUTHORS and contrib/perf_tools/Makefile from the embedded PMIx

Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
2018-12-28 12:57:15 +09:00
Jeff Squyres
62321be186 romio321: ensure to distribute ompi_grequestx.h
Refs https://github.com/open-mpi/ompi/issues/6227.  Thanks to
@georgemarselis for reporting.

Signed-off-by: Jeff Squyres <jsquyres@cisco.com>
2018-12-27 15:39:47 -08:00
Yossi Itigin
80313366fd
Merge pull request #6168 from hoopoepg/topic/get-put-int-uint-8-16-32
OSHMEM: added missing API for get/put operations
2018-12-26 12:05:41 +02:00
KAWASHIMA Takahiro
26a2054c75
Merge pull request #6225 from kawashima-fj/pr/mpiext-generated-headers
ompi_ext.m4: Allow generated MPI-ext Fortran headers
2018-12-26 16:04:44 +09:00
KAWASHIMA Takahiro
604dc9744b ompi_ext.m4: Allow generated MPI-ext Fortran headers
Allow MPI extensions to generate Fortran headers using Autoconf.

For example, allow following files.

```
ompi/mpiext/example/mpif-h/mpiext_example_mpifh.h.in
ompi/mpiext/example/use-mpi/mpiext_example_usempi.h.in
ompi/mpiext/example/use-mpi-f08/mpiext_example_usempif08.h.in
```

Generated MPI extension C headers are already allowed in commit
6a7d5271c4.

Signed-off-by: KAWASHIMA Takahiro <t-kawashima@jp.fujitsu.com>
2018-12-26 14:04:32 +09:00
KAWASHIMA Takahiro
90ae7d4917
Merge pull request #6224 from kawashima-fj/pr/config-fortran-type
config: Clean Fortran type check code
2018-12-26 09:07:49 +09:00
KAWASHIMA Takahiro
fc311a6ca5 config: Clean Fortran type check code
If the default value of `ofc_type_size` is `$ac_cv_sizeof_int`,
`OMPI_SIZEOF_FORTRAN_*` of all unavailable types become `sizeof(int)`.
This leads `OMPI_SIZEOF_FORTRAN_REAL2 == OMPI_SIZEOF_FORTRAN_REAL`
to become true unintentionally and `OMPI_DATATYPE_MPI_REAL2` has a
wrong value in `ompi/datatype/ompi_datatype_internal.h`. This is not
an actual bug because datatypes for unavailable types are not used.
However it is confusing. I looked the source tree and the history but
could find any basis of `$ac_cv_sizeof_int`.

If we don't use `implicit none` in `OMPI_FORTRAN_GET_KIND_VALUE`, and
if a Fortran compiler does not support `ISO_C_BINDING` completely,
a random value is set in `value` and the fallback route is not used.
It is not our intention.

Signed-off-by: KAWASHIMA Takahiro <t-kawashima@jp.fujitsu.com>
2018-12-25 17:17:57 +09:00
Ralph Castain
529e17e0d9
Merge pull request #6223 from ggouaillardet/topic/pmix_refresh
pmix/pmi4x: refresh to latest PMIx
2018-12-24 10:51:00 -08:00
bosilca
96f88052e9
Merge pull request #5948 from mkurnosov/coll-ireduce-silence-coverity
coll/libnbc/ireduce: silence Coverity warning CID 1440360
2018-12-24 12:59:16 -05:00
bosilca
593db292da
Merge pull request #5644 from mkurnosov/coll-iallreduce-rabenseifner
coll/libnbc: add Rabenseifner's algorithm for MPI_Iallreduce
2018-12-24 12:58:21 -05:00
bosilca
182a2db2a4
Merge pull request #6029 from ggouaillardet/topic/large_datatypes
opal/datatype: correctly handle large datatypes
2018-12-24 12:49:52 -05:00
Jeff Squyres
922fcca17e
Merge pull request #6220 from jsquyres/pr/fix-type-set-name
MPI_Type_set_name: fix string length at target
2018-12-23 21:33:46 -05:00
Jeff Squyres
908655adf4
Merge pull request #6219 from jsquyres/pr/warnnigs-stomp
opal: fix compiler warning
2018-12-23 16:03:10 -05:00
Jeff Squyres
efcaef74d8 MPI_Type_set_name: fix string length at target
opal_string_copy() takes care of all the string computations.
Specifically: when we converted to opal_string_copy(), we accidentally
left the *source* length as the argument, not the *target* length,
which resulted in one less character being copied than intended (as
was showing up in MTT C++ testing results).

Signed-off-by: Jeff Squyres <jsquyres@cisco.com>
2018-12-23 13:00:01 -08:00
Jeff Squyres
a30864c634 opal: fix compiler warning
Signed-off-by: Jeff Squyres <jsquyres@cisco.com>
2018-12-23 12:10:23 -08:00
Jeff Squyres
d2e3b03309
Merge pull request #6217 from jsquyres/pr/fix-CID-1441826
odls_base_default_fns.c: remove errant free
2018-12-22 10:37:18 -05:00
Jeff Squyres
f96c04244d odls_base_default_fns.c: put the free() in the right place
Fixes CID 1441826.

Signed-off-by: Jeff Squyres <jsquyres@cisco.com>
2018-12-22 06:40:05 -08:00
Aurelien Bouteiller
bd0d2b832e
Merge pull request #6086 from ICLDisco/export/errors_nbc
Manage errors in NBC collective ops
2018-12-21 02:34:00 -05:00
Jeff Squyres
1be5358834
Merge pull request #6212 from jsquyres/pr/fix-treematch-common-symbol
treematch: fix global common symbol
2018-12-20 15:20:41 -05:00
Jeff Squyres
7962a8e40b
Merge pull request #6211 from jsquyres/pr/die-impi-die-die-die
Remove some IMPI attributes that were never implemented.
2018-12-20 14:51:55 -05:00
Jeff Squyres
e9a6246b90 treematch: fix global common symbol
Despite its name, this symbol doesn't need to be global.  So just make
it static.

Signed-off-by: Jeff Squyres <jsquyres@cisco.com>
2018-12-20 11:06:14 -08:00
bosilca
f96305f96b
Merge pull request #6199 from aravindksg/opal-threads-fix
opal/sync: Fix assert during multi-threaded progress invocation
2018-12-20 13:27:07 -05:00
Jeff Squyres
81bfb5f5e5 Remove some IMPI attributes that were never implemented.
This is a holdover from LAM/MPI that was never implemented here in
Open MPI (and never will be).  Might as well remove this dead code.

Signed-off-by: Jeff Squyres <jsquyres@cisco.com>
2018-12-20 10:12:32 -08:00
Nathan Hjelm
cf49957af6
Merge pull request #6207 from hjelmn/opal_cleanup
opal: fix common symbols introduced in opal cleanup
2018-12-19 15:39:39 -07:00
Jeff Squyres
0746b2edb3
Merge pull request #6208 from jsquyres/pr/info-get-fix
info_get: ensure to copy all requested characters
2018-12-19 17:36:57 -05:00
Jeff Squyres
9b88e60fc8 info_get: ensure to copy all requested characters
When querying an info value, copy out exactly as many characters as
the caller asked for -- do not artificially truncate the target just
to ensure that it is \0-terminated.

Specifically: do not use opal_string_copy() to copy info values,
because opal_string_copy() will guarantee to \0-terminate the target,
even if it means truncating the target.  E.g., if the caller calls
opal_info_get_nolock() with valuelen=5, opal_string_copy() will return
"1234\0" -- which is wrong.  This commit fixes the behavior to return
"12345".

Signed-off-by: Jeff Squyres <jsquyres@cisco.com>
2018-12-19 13:01:45 -08:00
Nathan Hjelm
fd852c8f63 opal: fix common symbols introduced in opal cleanup
Signed-off-by: Nathan Hjelm <hjelmn@lanl.gov>
2018-12-19 12:27:14 -07:00
Nathan Hjelm
4944508603
Merge pull request #6136 from hjelmn/opal_cleanup
opal: clean up init/finalize
2018-12-18 15:23:32 -07:00
Nathan Hjelm
46255d0790 test: call opal_init/finalize_util in ddt tests
Signed-off-by: Nathan Hjelm <hjelmn@lanl.gov>
2018-12-18 14:37:04 -07:00
Nathan Hjelm
a39cb747dd ompi/datatype: don't call opal_datatype_finalize directly
Signed-off-by: Nathan Hjelm <hjelmn@lanl.gov>
2018-12-18 14:37:04 -07:00
Nathan Hjelm
0edfd328f8 opal: clean up init/finalize
This commit contains the following changes:

 - Remove the unused opal_test_init/opal_test_finalize
   functions. These functions are not used by anything in the code
   base or MTT. Tests use opal_init_util/opal_finalize_util instead.

 - Get rid of gotos in opal_init_util and opal_init. Replaced them
   with a cleaner solution.

 - Automatically register cleanup functions in init functions. The
   cleanup functions are executed in the reverse order of the
   initialization functions. The cleanup functions are run in
   opal_finalize_util() before tearing down the class system.

Signed-off-by: Nathan Hjelm <hjelmn@lanl.gov>
2018-12-18 14:37:04 -07:00
Gilles Gouaillardet
b0a668457c pmix/pmi4x: refresh to latest PMIx
refresh to pmix/pmix@2d4c2874fd

Refs. open-mpi/ompi#6222

Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
2018-12-18 17:11:01 +09:00
Ralph Castain
6f5f31109a
Merge pull request #6203 from rhc54/topic/rk
If job is fully described, there will be no ppn string to unpack
2018-12-17 17:24:37 -08:00
Ralph Castain
f5383da6d9
Merge pull request #6202 from rhc54/topic/ext3x
Fix external PMIx v3 support
2018-12-17 16:43:54 -08:00
Ralph Castain
d728380741 If job is fully described, there will be no ppn string to unpack
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2018-12-17 16:13:55 -08:00
Ralph Castain
ece7696c2c Fix external PMIx v3 support
Don't erase the source files during "make clean"!

Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2018-12-17 15:54:56 -08:00
Ralph Castain
c79eb1da78
Merge pull request #6196 from hjelmn/pmix_prte
rte/pmix: fill in opal_process_info when using prrte/pmix
2018-12-17 12:18:08 -08:00
Aravind Gopalakrishnan
2f3c5218ff opal/sync: Fix assert during multi-threaded progress invocation
PR #5241 provided an MCA variable to allow multi-threaded opal_progress.
However, it allowed to update the linked list even when multiple threads was
allowed to call opal_progress. This caused a scenario when a more recent thread
could complete it's progress and fail the assert(sync ==
wait_sync_list).

Allowing to update the linked list only for the case when the number of threads
exceeds the threshold fixes the problem.

Signed-off-by: Aravind Gopalakrishnan <Aravind.Gopalakrishnan@intel.com>
2018-12-17 12:14:27 -08:00
Sergey Oblomov
cfa9150934 OSHMEM: added missing API for get/put operations
- added calls for datatypes int/uint/8/16/32/size/ptrdiff
  for shmem_g/get/iget/get_nbi/_p/put/iput/put_nbi

Signed-off-by: Sergey Oblomov <sergeyo@mellanox.com>
2018-12-17 11:34:03 +02:00
Nathan Hjelm
06baa518f7 rte/pmix: fill in opal_process_info when using prrte/pmix
This commit fixes a bug when launching with prun where the process
info structures used by the btls are not populated.

Signed-off-by: Nathan Hjelm <hjelmn@lanl.gov>
2018-12-13 16:04:31 -07:00
bosilca
804a517929
Merge pull request #6146 from bosilca/topic/treematch_update
Update to the latest TreeMatch (v1.3).
2018-12-13 13:26:40 -05:00
Brian Barrett
1cd1f4acfd
Merge pull request #6192 from aravindksg/master
Fix for SEP when num local procs is greater than available contexts
2018-12-13 07:43:13 -08:00
Aravind Gopalakrishnan
e5e19dfcf7 Fix for SEP when num local procs is greater than available contexts
For cases when the number of local processes is greater than the number of
available contexts, the SEP initialization phase would calculate the number of
contexts to provision for each rank to be 0 and would eventually crash.

Fix the issue here by using regular endpoints in the event the number of local
processes is more than available contexts. This fixes issue #6182.

Signed-off-by: Aravind Gopalakrishnan <Aravind.Gopalakrishnan@intel.com>
2018-12-12 16:49:04 -08:00