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

596 Коммитов

Автор SHA1 Сообщение Дата
Gilles Gouaillardet
10cb9f6f9e oshmem: remove unnecessary dependencies to ORTE
either use OPAL or OMPI layers, since ORTE layer
is not present when PMIx RTE is used

Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
2019-02-20 13:55:55 +09:00
Jeff Squyres
3e82449dbe sshmem/verbs: So long / farewell / it's time to say goodnight
So long sshmem/verbs!  After many years of (mostly) faithful service,
it is time to remove the sshmem verbs component.  It has been fully
replaced by other components, such as the UCX PML and OFI MTL.

Signed-off-by: Jeff Squyres <jsquyres@cisco.com>
2019-02-07 05:34:19 -08:00
Sergey Oblomov
0759bb8561 COLL: removed FCA component
- removed FCA collectives from coll/scoll

Signed-off-by: Sergey Oblomov <sergeyo@mellanox.com>
2019-01-09 16:51:40 +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
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
Gilles Gouaillardet
5ea939aa54 oshmem: fix macro usage in pshmem.h
pshmem.h now includes shmem.h (since open-mpi/ompi@f46130cd20) and some macros were removed at that time.

Use the OSHMEM_HAVE_C11 macro (defined in shmem.h) instead of the
previous OSHMEMP_HAVE_C11 macrso previously defined in pshmem.h

Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
2018-12-12 14:03:16 +09:00
Yossi Itigin
c28ba954b9
Merge pull request #6132 from bertwesarg/pshmem-includes-shmem
OSHMEM: Let `pshmem.h` include `shmem.h` to be stand-alone again
2018-12-10 18:01:40 +02:00
Yossi Itigin
09e13ad7b0 sshmem_ucx: add owner.txt
Signed-off-by: Yossi Itigin <yosefe@mellanox.com>
2018-12-02 11:25:30 +02: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
Bert Wesarg
f46130cd20 OSHMEM: Let pshmem.h include shmem.h to be stand-alone again
See #6093

Signed-off-by: Bert Wesarg <bert.wesarg@tu-dresden.de>
2018-11-28 21:24:05 +01:00
Yossi Itigin
39daf7a436
Merge pull request #6104 from hoopoepg/topic/oshmem-zero-len-coll
OSHMEM: added processing of zero-length collectives
2018-11-27 13:28:41 +02: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
Sergey Oblomov
c93927e27a OSHMEM/COLL/BCAST: removed unnecessary bcast call
- removed unnecessary bcast call on zero-length request

Signed-off-by: Sergey Oblomov <sergeyo@mellanox.com>
2018-11-26 16:53:48 +02:00
Sergey Oblomov
ff2fd0679e OSHMEM/COLL: optimization on zero-length ops
- removed barrier call on zero-length operations

Signed-off-by: Sergey Oblomov <sergeyo@mellanox.com>
2018-11-26 10:41:33 +02:00
Sergey Oblomov
9de128afaf OSHMEM: added processing of zero-length collectives
- according spec 1.4, annex C shmem collectives should process
  calls where number of elements is zero independently from pointer
  value
- added zero-count processing - it just call barrier to
  sync ranks

Signed-off-by: Sergey Oblomov <sergeyo@mellanox.com>
2018-11-23 14:34:46 +02:00
Sergey Oblomov
4c071da565 OSHMEM/AMO: added int/uint/32/64 atomics calls
- added int/uint/32/64 atomics calls
- added SHMEM_SYNC_SIZE macro

Signed-off-by: Sergey Oblomov <sergeyo@mellanox.com>
2018-11-22 10:18:16 +02:00
Yossi Itigin
241b424bd3
Merge pull request #6000 from hoopoepg/topic/added-missing-amo-datatypes
OSHMEM/AMO: added missing C11 macro datatypes
2018-11-01 15:29:56 +02:00
Sergey Oblomov
6e78102089 OSHMEM/AMO: code beautify
- added <cr> to split API groups to simplify human processing

Signed-off-by: Sergey Oblomov <sergeyo@mellanox.com>
2018-11-01 11:33:34 +02:00
Yossi Itigin
bbe5da483a
Merge pull request #5985 from hoopoepg/topic/fixed-oshmem-profile-build
OSHMEM/PROFILE: fixed oshmem profile build
2018-10-31 14:23:46 +02:00
Sergey Oblomov
f63d6da6d7 OSHMEM/AMO: added missing C11 macro datatypes
- added signed datatypes for atomic_add calls
- added unsigned datatypes for atomic put/inc/get/fetch calls
- fixed incorrect SHMEM_CTX_DEFAULT macro, added
  external declaration of oshmem_ctx_default variable

Signed-off-by: Sergey Oblomov <sergeyo@mellanox.com>
2018-10-30 23:15:26 +02:00
Sergey Oblomov
4a3e83780c OSHMEM/PROFILE: fixed profile build
- added missing file to profile makefile
- constants SHMEM_CTX_* are shifted into public header

Signed-off-by: Sergey Oblomov <sergeyo@mellanox.com>
2018-10-29 23:50:26 +02:00
Yossi Itigin
6754bf1465 SCOLL/BASIC: Fix invalid pSync pointer passed to barrier func
mca_scoll_basic_alltoall() passed (pSync + 1) to barrier function, but
the value of _SHMEM_ALLTOALL_SYNC_SIZE is 1, which made the barrier
function use an invalid memory location. In particular, this location
was not initialized to _SHMEM_SYNC_VALUE, which broke the barrier
algorithm and it did not complete: One PE could read 0 from its peer and
assume the peer already started the barrier, and then write 1 to the
peer. Then, the peer entered the barrier and overwrote the 1 with 0, and
then it waited forever to see '1' in its pSync.

Found with shmem_verifier test suite.

Signed-off-by: Yossi Itigin <yosefe@mellanox.com>
2018-10-29 12:21:34 +02:00
Bernhard M. Wiedemann
bc23993dea Allow to override build user and host
using the standard $USER and $HOSTNAME environment variables
to make reproducible builds possible.
See https://reproducible-builds.org/ for why this is good.

This helps improve issue #3759

Signed-off-by: Bernhard M. Wiedemann <bwiedemann@suse.de>
2018-10-20 09:27:00 -04:00
Brian Barrett
e9e4d2a4bc Handle asprintf errors with opal_asprintf wrapper
The Open MPI code base assumed that asprintf always behaved like
the FreeBSD variant, where ptr is set to NULL on error.  However,
the C standard (and Linux) only guarantee that the return code will
be -1 on error and leave ptr undefined.  Rather than fix all the
usage in the code, we use opal_asprintf() wrapper instead, which
guarantees the BSD-like behavior of ptr always being set to NULL.
In addition to being correct, this will fix many, many warnings
in the Open MPI code base.

Signed-off-by: Brian Barrett <bbarrett@amazon.com>
2018-10-08 16:43:53 -07:00
Yossi Itigin
41011502c8 shmem/lock: progress communications while waiting for shmem_lock
Signed-off-by: Yossi Itigin <yosefe@mellanox.com>
2018-09-16 18:46:36 +03:00
Yossi Itigin
4bb6845888
Merge pull request #5570 from hoopoepg/topic/opal-mem-hooks-syno
MCA/COMMON/UCX: added synonym to opal_mem_hook variable
2018-08-29 14:16:33 +03:00
Sergey Oblomov
b72dd83f05 MCA/COMMON/UCX: added synonims for common ucx variables
- added synonims for atomic/osc modules

Signed-off-by: Sergey Oblomov <sergeyo@mellanox.com>
2018-08-26 18:25:21 +03:00
Jeff Squyres
fe0852bcb4 Miscellaneous compiler warning stomps.
Signed-off-by: Jeff Squyres <jsquyres@cisco.com>
2018-08-24 07:39:14 -07:00
Sergey Oblomov
7a5ff6a076 OSHMEM: removed incorrect pshmem_wait_until macro redefinition
- fixes https://github.com/open-mpi/ompi/issues/5585

Signed-off-by: Sergey Oblomov <sergeyo@mellanox.com>
2018-08-23 18:03:01 +03:00
Sergey Oblomov
2f941ae864 OSHMEM/C11: removed unused macro
Signed-off-by: Sergey Oblomov <sergeyo@mellanox.com>
2018-08-22 17:37:31 +03:00
Sergey Oblomov
be0ea1d764 OSHMEM/API/C11: fixed API macro
- updated compilation of C11 compiler for API macro

Signed-off-by: Sergey Oblomov <sergeyo@mellanox.com>
2018-08-22 11:16:15 +03:00
Sergey Oblomov
e00f7a68ba MCA/COMMON/UCX: added synonim to opal_mem_hook variable
- added synonim to opal_mem_hook variable to allow
  to print it in opal_info -a

Signed-off-by: Sergey Oblomov <sergeyo@mellanox.com>
2018-08-21 15:05:12 +03:00
Sergey Oblomov
d204b8a678 PML/SPML/UCX/COMPONENT: applied C99 initialization
Signed-off-by: Sergey Oblomov <sergeyo@mellanox.com>
2018-07-28 09:44:03 +03:00
Sergey Oblomov
2806504290 PML/SPML/UCX: init global objects using C99 style
- to avoid value mix used C99 style of object initializations

Signed-off-by: Sergey Oblomov <sergeyo@mellanox.com>
2018-07-25 14:52:45 +03:00
Sergey Oblomov
3295b23800 MCA/ATOMIC: atomic_init renamed to atomic_startup
- there is C11 naming conflict - atomic_init is C macro
  which cause building issue

Signed-off-by: Sergey Oblomov <sergeyo@mellanox.com>
2018-07-24 08:49:06 +03:00
Yossi Itigin
29812494f2
Merge pull request #5402 from hoopoepg/topic/common-del-procs
MCA/COMMON/UCX: del_procs calls are unified to common module
2018-07-19 11:19:45 +03:00
Sergey Oblomov
920cc2e0d9 MCA/COMMON/UCX: del_procs calls are unified to common module
Signed-off-by: Sergey Oblomov <sergeyo@mellanox.com>
2018-07-18 07:37:25 +03:00
Joshua Ladd
7bfcd4545d OSHMEM Specification version: Bump to v1.4
Signed-off-by: Joshua Ladd <jladd.mlnx@gmail.com>
2018-07-18 00:23:24 +03:00
Sergey Oblomov
36cc69d47a ATOMIC: fixed build issues (incorrect function proto)
Signed-off-by: Sergey Oblomov <sergeyo@mellanox.com>
2018-07-17 10:32:15 +03:00
Xin Zhao
c429900cd9 OMPI/OSHMEM: add new functionality of OpenSHMEM v1.4.
Signed-off-by: Xin Zhao <xinz@mellanox.com>
2018-07-16 12:55:25 -07:00
Yossi Itigin
9d0b3a42aa
Merge pull request #5423 from hoopoepg/topic/bitwise-atomics-renaming
ATOMICS: renamed atomic calls to unsigned datatypes
2018-07-16 19:08:02 +03:00
Sergey Oblomov
da1afcaaaf ATOMIC/UCX: fixed typo in datatype macro
Signed-off-by: Sergey Oblomov <sergeyo@mellanox.com>
2018-07-16 14:49:06 +03:00
Sergey Oblomov
bd84165277 ATOMICS: renamed atomic calls to unsigned datatypes
Signed-off-by: Sergey Oblomov <sergeyo@mellanox.com>
2018-07-13 15:32:16 +03:00
Sergey Oblomov
d51426ff0a ATOMIC/MXM: fixed abstraction violation
- applied workaround for incorrect dynamic module dependency

Signed-off-by: Sergey Oblomov <sergeyo@mellanox.com>
2018-07-13 14:30:12 +03:00
Joshua Ladd
f92daa6494
Merge pull request #5392 from hoopoepg/topic/bitwise-atomics-c
OSHMEM/ATOMICS: added C implementation of and/or/xor ops
2018-07-10 09:13:05 -04:00
Sergey Oblomov
0212410187 OSHMEM/ATOMICS: fixed comments errors
Signed-off-by: Sergey Oblomov <sergeyo@mellanox.com>
2018-07-10 10:13:40 +03:00
Sergey Oblomov
64212a9ff1 OSHMEM/ATOMICS: added C implementation of and/or/xor ops
- added implementation and/or/xor operations for post and
  fetch-op notations
- implemented basic and UCX transports, mxm added
  NON-IMPLEMENTED wrapper
- updated C interfaces only (fortran will be added later)
- existing API is not updated to spec v1.4

Signed-off-by: Sergey Oblomov <sergeyo@mellanox.com>
2018-07-09 16:18:47 +03:00
Sergey Oblomov
f2a24a008c OSHMEM: fixed compilation warning
- suppressed warning like: warning: no previous prototype for
  'shmemx_XXXXX_OP' [-Wmissing-prototypes]

Signed-off-by: Sergey Oblomov <sergeyo@mellanox.com>
2018-07-09 10:44:35 +03:00
Sergey Oblomov
240670152e MCA/COMMON/UCX: code beautify - alignment
Signed-off-by: Sergey Oblomov <sergeyo@mellanox.com>
2018-07-06 19:40:58 +03:00
Sergey Oblomov
bef47b792c MCA/COMMON/UCX: unified logging across all UCX modules
- added common logging infrastructure for all
  UCX modules
- all UCX modules are switched to new infra

Signed-off-by: Sergey Oblomov <sergeyo@mellanox.com>
2018-07-05 16:25:39 +03:00