1
1

10459 Коммитов

Автор SHA1 Сообщение Дата
KAWASHIMA Takahiro
adc05f705e
Merge pull request #6174 from kawashima-fj/pr/f08-missing-handles
fortran/use-mpi-f08: Add C++ datatypes and MPI_NO_OP
2018-12-12 14:13:36 +09:00
Brian Barrett
6e15128d96 mtl/ofi: Fix crash if no providers found
Commit 109d0569ffd introduced a crash when an error occurred
before ofi_ctxt was allocated, including when no providers
passed the selection logic.  Properly check that the pointer
is not NULL in the error cleanup code before dereferencing
the pointer.

Signed-off-by: Brian Barrett <bbarrett@amazon.com>
2018-12-11 15:46:18 -08:00
Jeff Squyres
6f7fbd1676
Merge pull request #6158 from ggouaillardet/topic/mpiext-path-updates
mpiext: updates for header file locations
2018-12-11 13:01:46 -05:00
KAWASHIMA Takahiro
63ecf01610 fortran/use-mpi-f08: Add C++ datatypes and MPI_NO_OP
Though the MPI standard does not have `MPI_CXX_COMPLEX`, `mpi.h`,
`mpif.h`, and `mpi.mod` have it. So I added it for consistency.

Signed-off-by: KAWASHIMA Takahiro <t-kawashima@jp.fujitsu.com>
2018-12-11 13:08:29 +09:00
KAWASHIMA Takahiro
e0c5bad195 fortran/use-mpi-f08: Remove unnecessary ;
Signed-off-by: KAWASHIMA Takahiro <t-kawashima@jp.fujitsu.com>
2018-12-11 09:06:21 +09:00
Matias Cabral
cdb952f66d
Merge pull request #6170 from matcabral/remove_psm2_lower_p
MTL/PSM2: add missing default priority
2018-12-07 16:11:45 -08:00
Matias A Cabral
c76c6d8b28 MTL/PSM2: add missing default priority
Missing default priority after PR #6153

Signed-off-by: Matias Cabral <matias.a.cabral@intel.com>
2018-12-07 14:46:34 -08:00
Matias Cabral
0b821f2184
Merge pull request #6153 from matcabral/remove_psm2_lower_p
MTL/PSM2: Do not lower the priority when all processes are local.
2018-12-07 10:19:53 -08:00
KAWASHIMA Takahiro
4be5a6cdc8
Merge pull request #6159 from kawashima-fj/pr/fix-type-create-f90
mpi/c: Fix MPI_TYPE_CREATE_F90_{REAL,COMPLEX}
2018-12-08 01:41:20 +09:00
KAWASHIMA Takahiro
6fb01f64fe mpi/c: Fix MPI_TYPE_CREATE_F90_{REAL,COMPLEX}
This commit fixes edge cases of `r = 38` and `r = 308`.

As defined in the MPI standard, `TYPE_CREATE_F90_REAL` and
`TYPE_CREATE_F90_COMPLEX` must be consistent with the Fortran
`SELECTED_REAL_KIND` function. The `SELECTED_REAL_KIND` function is
defined based on the `RANGE` function. The `RANGE` function returns
`INT(MIN(LOG10(HUGE(X)), -LOG10(TINY(X))))` for a real value `X`.

The old code considers only `INT(LOG10(HUGE(X)))` using `*_MAX_10_EXP`.
This commit adds `INT(-LOG10(TINY(X)))` part using `*_MIN_10_EXP`.

This bug affected the following `p`-`r` combinations.

| p             | r   | expected  | returned  | expected  | returned  |
| :------------ | --: | :-------- | :-------- | :-------  | :-------- |
| MPI_UNDEFINED |  38 | REAL8     | REAL4     | COMPLEX16 | COMPLEX8  |
| 0 <= p <= 6   |  38 | REAL8     | REAL4     | COMPLEX16 | COMPLEX8  |
| MPI_UNDEFINED | 308 | REAL16    | REAL8     | COMPLEX32 | COMPLEX16 |
| 0 <= p <= 15  | 308 | REAL16    | REAL8     | COMPLEX32 | COMPLEX16 |

MPICH returns the same result as Open MPI with this fix.

Signed-off-by: KAWASHIMA Takahiro <t-kawashima@jp.fujitsu.com>
2018-12-06 16:48:23 +09:00
Gilles Gouaillardet
975e3cd0c9 mpiext: updates for header file locations
Per discussion on https://github.com/open-mpi/ompi/pull/6030
and https://github.com/open-mpi/ompi/pull/6145, move
around where MPI extension header files are installed (specifically:
the installation tree path does not need to match the source tree
path).

For reference, header files were installed like this :

 - <prefix>/include/openmpi/ompi/mpiext/pcollreq/mpif-h/mpiext_pcollreq_mpifh.h
 - <prefix>/include/openmpi/ompi/mpiext/pcollreq/c/mpiext_pcollreq_c.h

and they are now installed like this :

 - <prefix>/include/openmpi/mpiext/mpiext_pcollreq_mpifh.h
 - <prefix>/include/openmpi/mpiext/mpiext_pcollreq_c.h

Signed-off-by: Jeff Squyres <jsquyres@cisco.com>
Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
2018-12-06 15:40:02 +09:00
Gilles Gouaillardet
4918fc4455 Revert "fortran/mpif-h: keep include path for extension short"
This reverts commit open-mpi/ompi@848a868f7b.

Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
2018-12-06 15:39:59 +09:00
Gilles Gouaillardet
ccbdc8fd58 Revert "c: keep include path for extension short"
This reverts commit open-mpi/ompi@27c25fa721.

Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
2018-12-06 15:39:54 +09:00
Gilles Gouaillardet
a152aa215e cleanup: remove the unused (and unexpanded) {ORTE,OMPI}_WANT_REPO_REV macro
Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
2018-12-06 13:13:13 +09:00
George Bosilca
74f2365d6e
Remove most (all) warnings from the new TreeMatch.
Signed-off-by: George Bosilca <bosilca@icl.utk.edu>
2018-12-05 15:38:39 -05:00
Guillaume Mercier
27aa34e53f
New version based on TM 1.3
Optimize_topology is commented for now until bug resolved in TM

Signed-off-by: Guillaume Mercier <guillaume.mercier@bordeaux-inp.fr>
2018-12-05 15:38:39 -05:00
Matias A Cabral
fc8582c560 MTL/PSM2: Do not lower the priority when all processes are local.
The intention of lowering the priority when all processes are local
was to favor Vader BTL. However, in builds including the OFI MTL it
gets selected instead.

Reviewed-by: Spruit, Neil R <neil.r.spruit@intel.com>
Reviewed-by: Gopalakrishnan, Aravind <aravind.gopalakrishnan@intel.com>
Signed-off-by: Matias Cabral <matias.a.cabral@intel.com>
2018-12-04 15:31:09 -08:00
Matias Cabral
abd34620f4
Merge pull request #5972 from aravindksg/ofi_sep_master
MTL/OFI: Add OFI Scalable Endpoint support
2018-12-04 13:07:44 -08:00
Aravind Gopalakrishnan
109d0569ff MTL/OFI: Add OFI Scalable Endpoint support
OFI MTL supports OFI Scalable Endpoints feature as means to improve
multi-threaded application throughput and message rate. Currently the feature
is designed to utilize multiple TX/RX contexts exposed by the OFI provider in
conjunction with a multi-communicator MPI application model. For more
information, refer to README under mtl/ofi.

Reviewed-by: Matias Cabral <matias.a.cabral@intel.com>
Reviewed-by: Neil Spruit <neil.r.spruit@intel.com>
Signed-off-by: Aravind Gopalakrishnan <Aravind.Gopalakrishnan@intel.com>
2018-12-03 09:56:52 -08:00
George Bosilca
c6f73e8883
First step of the integration with the new TreeMatch.
Signed-off-by: George Bosilca <bosilca@icl.utk.edu>
2018-12-02 20:05:03 -05:00
Yossi Itigin
83cca9d52a ucx: add owner.txt for components
Signed-off-by: Yossi Itigin <yosefe@mellanox.com>
2018-12-01 17:14:03 +02:00
matcabral
6a15712df5 MTL/OFI: revert PR 6082
Revert to avoid issues with dynamic processes.

Signed-off-by: matcabral <matias.a.cabral@intel.com>
2018-11-30 13:44:39 -08:00
Matias Cabral
ef5db1b752
Merge pull request #6082 from matcabral/lower_mtl_ofi_p
MTL/OFI: Lower priority when all procs are local
2018-11-30 12:05:40 -08:00
Bert Wesarg
18525ce39b Fix use of bitwise operation in CPP condition
Signed-off-by: Bert Wesarg <bert.wesarg@tu-dresden.de>
2018-11-30 12:44:42 +01:00
Nathan Hjelm
5ebcbe444e
Merge pull request #6083 from devreal/rdma-plug-memleak
Plug two memory leaks in rdma osc
2018-11-27 09:56:19 -07:00
Nathan Hjelm
27084c60c9
Merge pull request #6123 from hoopoepg/topic/osc-ucx-max-level-60
OSC/UCX: set max level value to 60
2018-11-27 09:51:09 -07:00
Sergey Oblomov
2d230b3aac OSC/UCX: set max level value to 60
Signed-off-by: Sergey Oblomov <sergeyo@mellanox.com>
2018-11-27 14:20:28 +02:00
KAWASHIMA Takahiro
291d7654c5
Merge pull request #6030 from ggouaillardet/topic/mpiext_short_path
mpiext: keep include path for extension short
2018-11-27 20:59:01 +09:00
Gilles Gouaillardet
5a968306d6 mpi/c: add back (some more) deprecated subroutines
- MPI_NULL_DELETE_FN
 - MPI_NULL_COPY_FN
 - MPI_DUP_FN

Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
2018-11-27 13:56:03 +09:00
Gilles Gouaillardet
27c25fa721 c: keep include path for extension short
move openmpi/ompi/mpiext/FOO/c/mpiext_FOO_c.h to
openmpi/ompi/mpiext/FOO_c.h in order to use consistent
paths with mpif.h extensions

Refs. open-mpi/ompi#6019

Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
2018-11-27 11:21:05 +09:00
Gilles Gouaillardet
848a868f7b fortran/mpif-h: keep include path for extension short
in order to cope with the 72 characters per line limit, move
openmpi/ompi/mpiext/FOO/mpif-h/mpiext_FOO_mpifh.h to
openmpi/ompi/mpiext/FOO_mpifh.h

Refs. open-mpi/ompi#6019

Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
2018-11-27 09:39:09 +09:00
Jeff Squyres
8459d29738
Merge pull request #5979 from mkurnosov/coll-libnbc-cleanup
coll/libnbc: remove debug output
2018-11-26 18:10:10 -05:00
Jeff Squyres
dbe064af97
Merge pull request #5653 from bmwiedemann/userhost
Allow to override build user and host
2018-11-26 17:48:37 -05:00
Bert Wesarg
b3f3281290 Re-add removed deprecate-only MPI-2.0 symbols
See #6114

Signed-off-by: Bert Wesarg <bert.wesarg@tu-dresden.de>
2018-11-26 14:00:05 +01:00
Yossi Itigin
e98ce2b36b
Merge pull request #6108 from yosefe/topic/pml-ucx-init-req_mpi_object
pml_ucx: initialize req_mpi_object.comm for error handler
2018-11-26 11:54:10 +02:00
KAWASHIMA Takahiro
5f0fcf0f45 README & man: Update pcollreq documentation
The feature of persistent collectives is approved in the Sept. 2018
MPI Forum meeting and 2018 Draft Specification of the MPI standard is
published during SC18.

Signed-off-by: KAWASHIMA Takahiro <t-kawashima@jp.fujitsu.com>
2018-11-26 17:27:43 +09:00
Yossi Itigin
f36eeef4c5 pml_ucx: initialize req_mpi_object.comm for error handler
without this fix, an error handler invoked on pml_ucx request would
segfault while trying to dereference requests[i]->req_mpi_object.comm

Signed-off-by: Yossi Itigin <yosefe@mellanox.com>
2018-11-25 19:37:54 +02:00
Yossi Itigin
ed967d867b
Merge pull request #6073 from hoopoepg/topic/set-osc-ucx-level-200
OSC: set UCX module used by default
2018-11-22 10:53:37 +02:00
KAWASHIMA Takahiro
303d7842d9
Merge pull request #6074 from kawashima-fj/pr/remove-c99-type-check
Remove `#if HAVE_[TYPE]` for types available in C99
2018-11-20 11:42:13 +09:00
Aurelien Bouteiller
20447be744
Someone left a debug printf in NBC
Signed-off-by: Aurelien Bouteiller <bouteill@icl.utk.edu>
2018-11-16 10:37:04 -05:00
Aurelien Bouteiller
65660e5999
Manage errors in NBC collective ops
Signed-off-by: Aurelien Bouteiller <bouteill@icl.utk.edu>

Correctly bubble up errors in NBC collective operations

Signed-off-by: Aurelien Bouteiller <bouteill@icl.utk.edu>

The error field of requests needs to be rearmed at start, not at create

Signed-off-by: Aurelien Bouteiller <bouteill@icl.utk.edu>
2018-11-15 16:43:56 -05:00
Joseph Schuchart
91885f5876 Plug two memory leaks in rdma osc
Signed-off-by: Joseph Schuchart <schuchart@hlrs.de>
2018-11-14 14:31:54 -05:00
matcabral
5f58453e63 MTL/OFI: Lower priority when all procs are local
So far Vader is faster than OFI MTL for doing shared memory.
Therefore, let it run by default when all procs are local.

Reviewed-by: Spruit, Neil R <neil.r.spruit@intel.com>
Reviewed-by: Gopalakrishnan, Aravind <aravind.gopalakrishnan@intel.com>
Signed-off-by: Matias Cabral <matias.a.cabral@intel.com>
2018-11-14 11:01:33 -08:00
Sergey Oblomov
e91f214982 OSC/UCX: added UCX version evaluation
- added UCX version evaluation to set OSC UCX priority

Signed-off-by: Sergey Oblomov <sergeyo@mellanox.com>
2018-11-14 10:03:13 +02:00
KAWASHIMA Takahiro
cacd6f389c datatype: Remove #if HAVE_[TYPE] for C99 types
Now Open MPI requires a C99 compiler. Checking availability of
the following types is no more needed.

- `long long` (`signed` and `unsigned`)
- `long double`
- `float _Complex`
- `double _Complex`
- `long double _Complex`

Furthermore, the `#if HAVE_[TYPE]` style checking is not correct.
Availability of C types is checked by `AC_CHECK_TYPES` in `configure.ac`.
`AC_CHECK_TYPES` defines macro `HAVE_[TYPE]` as `1` in `opal_config.h`
if the `[TYPE]` is available. But it does not define `HAVE_[TYPE]`
(instead of defining as `0`) if it is not available. So even if we
need `HAVE_[TYPE]` checking, it should be `#if defined(HAVE_[TYPE])`.

I didn't remove `AC_CHECK_TYPES` for these types in `configure.ac`
since someone may use `HAVE_[TYPE]` macros somewhere.

Signed-off-by: KAWASHIMA Takahiro <t-kawashima@jp.fujitsu.com>
2018-11-14 09:32:52 +09:00
Sergey Oblomov
36934a8bb2 OSC: set UCX module used by default
- OSC/UCX module set priority to 200 to be used by default

Signed-off-by: Sergey Oblomov <sergeyo@mellanox.com>
2018-11-12 15:08:22 +02:00
Gilles Gouaillardet
b3ce25af95 mpiext/cuda: fix mpiext_cuda_c.h install path
This fixes a regression introduced in commit open-mpi/ompi@f8318f0a8f.

Fixes open-mpi/ompi#6069

Thanks Kawashima-san for the heads up !

Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
2018-11-12 00:58:19 -06:00
Matias Cabral
30b6435897
Merge pull request #6015 from aravindksg/proc-threshold-fix
MTL/OFI: Check threshold number of peers allowed per rank
2018-11-08 15:47:45 -08:00
Gilles Gouaillardet
f8318f0a8f mpiext/cuda: do not include automatically generated file into dist tarball
ompi/mpiext/cuda/c/mpiext_cuda_c.h is automatically generated from
ompi/mpiext/cuda/c/mpiext_cuda_c.h.in at configure time.

Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
2018-11-06 13:57:31 +09:00
Jeff Squyres
65eb118e08 MPI_Type_get_envelope: remove MPI-1 deleted names
Several names are now no longer returned by MPI_Type_get_envelope.

Signed-off-by: Jeff Squyres <jsquyres@cisco.com>
2018-11-03 16:20:45 -04:00