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

87 Коммитов

Автор SHA1 Сообщение Дата
Yossi Itigin
fc41c16134 OSHMEM: Add support for shmemx_malloc_with_hint()
- added multiple segments processing
- added shmemx_malloc_with_hint call + set of hints

(picked from master 94b5e91)

Signed-off-by: Sergey Oblomov <sergeyo@mellanox.com>
Signed-off-by: Yossi Itigin <yosefe@mellanox.com>
2019-05-12 11:42:59 +03:00
Mikhail Brinskii
6861a68de6 SPML/UCS: CR comments p2
Signed-off-by: Mikhail Brinskii <mikhailb@mellanox.com>
(cherry picked from commit d4843b1651)
2019-05-02 21:27:15 +03:00
Mikhail Brinskii
1c56f49a44 SPML/UCX: CR comments p1
Signed-off-by: Mikhail Brinskii <mikhailb@mellanox.com>
(cherry picked from commit c4c99457db)
2019-05-02 21:26:55 +03:00
Mikhail Brinskii
e4ee56d1f3 SPML/UCX: Add shmemx_alltoall_global_nb routine to shmemx.h
The new routine transfers the data asynchronously from the source PE to all
PEs in the OpenSHMEM job. The routine returns immediately. The source and
target buffers are reusable only after the completion of the routine.
After the data is transferred to the target buffers, the counter object
is updated atomically. The counter object can be read either using atomic
operations such as shmem_atomic_fetch or can use point-to-point synchronization
routines such as shmem_wait_until and shmem_test.

Signed-off-by: Mikhail Brinskii <mikhailb@mellanox.com>
(cherry picked from commit 2ef5bd8b36)
2019-05-02 21:25:59 +03:00
Gilles Gouaillardet
9c5d4bb3b9 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>
(cherry picked from commit 5ea939aa54)
2019-03-06 00:14:19 +01:00
Bert Wesarg
d174e46dc1 OSHMEM: Let pshmem.h include shmem.h to be stand-alone again
See #6093

Signed-off-by: Bert Wesarg <bert.wesarg@tu-dresden.de>
(cherry picked from commit f46130cd20)
2019-03-06 00:13:34 +01:00
Sergey Oblomov
ef7ab9bf96 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>
(cherry picked from commit cfa9150934)
2019-01-09 11:52:26 +02:00
Sergey Oblomov
63cbe36cab 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>
(cherry picked from commit 4c071da565)
2018-11-26 09:29:55 +02:00
Geoff Paulsen
6898de01a7
Merge pull request #6012 from hoopoepg/topic/added-missing-amo-datatypes-v4.0
OSHMEM/AMO: added missing C11 macro datatypes - v4.0
2018-11-19 14:20:15 -06:00
Sergey Oblomov
d3f08d010c 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>
(cherry picked from commit f63d6da6d7)
2018-11-01 16:51:56 +02:00
Sergey Oblomov
aaf15a6c17 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>
(cherry picked from commit 4a3e83780c)
2018-11-01 16:37:49 +02:00
Sergey Oblomov
00f417706c OSHMEM/API/C11: fixed API macro
- updated compilation of C11 compiler for API macro

Signed-off-by: Sergey Oblomov <sergeyo@mellanox.com>
(cherry picked from commit be0ea1d764)
2018-08-23 09:36:52 +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
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
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
Artem Polyakov
66e774d959
Merge pull request #4638 from karasevb/oshmem/spec_1.3/c11
oshmem: remove `shmem_put/get` when not the C11 case in accordance with the spec v1.3
2018-05-26 17:29:51 -07:00
Boris Karasev
5ea892dc0b oshmem: remove shmem_put/get when not the C11 case in accordance with the spec v1.3
Fixes: https://github.com/open-mpi/ompi/issues/4307

Signed-off-by: Boris Karasev <karasev.b@gmail.com>
2017-12-19 12:40:10 +02:00
Boris Karasev
f6818af1ab oshmem: remove "shmem_broadcast" in accordance with the spec v1.3
Fixes: https://github.com/open-mpi/ompi/issues/4098

Signed-off-by: Boris Karasev <karasev.b@gmail.com>
2017-12-19 10:41:12 +02:00
Boris Karasev
7479328937 oshmem: refactoring the definition of SHMEM_ALLTOALLS_SYNC_SIZE
Signed-off-by: Boris Karasev <karasev.b@gmail.com>
2017-09-26 12:08:55 +03:00
Boris Karasev
584ff76dea oshmem: introduced the definition SHMEM_ALLTOALLS_SYNC_SIZE
In accordance with the OSHMEM spec, this definition must be included in
the code.

Signed-off-by: Boris Karasev <karasev.b@gmail.com>
2017-09-26 09:12:09 +03:00
Howard Pritchard
bfd5ed6e98 Merge pull request #1910 from hpcraink/pr/shmem_fix_f77
Fix shmem.fh: fails to compile with F77 fixed-form compiled programs...
2017-09-19 14:28:08 -06:00
Rainer Keller
d529c289db Fails to compile with F77 fixed-form compiled programs...
Convert to F77 notation and split into two (shorter) lines.
Also, make usage of the SHMEM_MAX_NAME_LEN definition, by moving
that first.

Signed-off-by: Rainer Keller <rainer.keller@hft-stuttgart.de>
2017-09-15 15:09:43 +02:00
Howard Pritchard
1d612da1cb oshmem: fix issue with shmem_g c11 generics
There was a typo in the shmem_g c11 generic interface
in shmem.h.in

Thanks to @nspark for reporting the problem and
specifying the fix.

Fixes #3968

Signed-off-by: Howard Pritchard <hppritcha@gmail.com>
2017-08-01 09:58:20 -06:00
Jeff Squyres
e79e478447 oshmem: add some deprecated names in shmem.h.in
Per https://github.com/openshmem-org/tests-uh/issues/17, add some
deprecated constant names that we didn't previously support in Open
MPI.

Signed-off-by: Jeff Squyres <jsquyres@cisco.com>
2017-01-17 16:13:38 -08:00
Joshua Ladd
dc6f4a0feb Remove shmemx.h from shmem.h. Add shmem.h to shmemx.h
Fixes #2483
Signed-off-by: Joshua Ladd <joshual@mellanox.com>
2016-12-06 06:42:26 +02:00
Ralph Castain
1e2019ce2a Revert "Update to sync with OMPI master and cleanup to build"
This reverts commit cb55c88a8b.
2016-11-22 15:03:20 -08:00
Ralph Castain
cb55c88a8b Update to sync with OMPI master and cleanup to build
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2016-11-22 14:24:54 -08:00
Joshua Ladd
fe2b8b7e06 OSHMEM Specification version: Bump to v1.3. 2016-10-06 22:12:07 +03:00
Alex Mikheev
dd2405a625 OSHMEM: fixes typo in c11 generic 2016-09-26 11:43:38 +03:00
Alex Mikheev
71712df8d1 OSHMEM: fixes arg mismatch in c11 macros 2016-09-26 09:59:23 +03:00
Alex Mikheev
caa1d17672 OSHMEM: fixes compiler warnings 2016-09-25 18:16:45 +03:00
Alex Mikheev
9a21392ec2 OSHMEM: v1.3: add C11 generics
add missing put*/get* functions. Move *put|get16 functions from shmemx.h to
shmem.h as required by 1.3 spec.
2016-09-25 16:43:00 +03:00
Alex Mikheev
3a034352fe OSHMEM: v1.3: adds shmem_fetch and shmem_set AMOs
The commit adds atomic set and fetch functions as described in
oshmem 1.3 spec.
2016-09-25 12:03:42 +03:00
Gilles Gouaillardet
92dd719df1 oshmem: move finalization from the liboshmem destructor into oshmem_onexit()
so we can use the legacy start_pes even when Open MPI is compiled with
--enable-static or --disable-visibility
2016-09-21 09:21:26 +09:00
Gilles Gouaillardet
0a25420dac oshmem: get rid of oshmem_proc_t and use ompi_proc_t instead
store oshmem related per proc data in an oshmem_proc_data_t struct,
that is stored in the padding section of an ompi_proc_t

this data can be accessed via the OSHMEM_PROC_DATA(proc) macro

Fixes open-mpi/ompi#2023
2016-09-01 14:20:14 +09:00
Gilles Gouaillardet
2a98f9fcc3 oshmem: replace header files in include/mpp with symlinks
This is a work around to avoit what looks like a CMake bug

Thanks Paul Kapinos for the report

Fixes open-mpi/ompi#1868
2016-07-14 14:32:25 +09:00
Igor Ivanov
75050b44a2 oshmem: Align OSHMEM API with spec v1.3 (extension api changes)
openshmem.org specification does not mention about extension api
but there is an agreemnet to do these changes for related ex api too.
see
Annex G:
Version 1.3
Added const to every read-only pointer argument
2016-04-18 19:38:16 +03:00
Igor Ivanov
157f81b699 oshmem: Align OSHMEM API with spec v1.3 (Added const to every read-only pointer argument)
Annex G:
Version 1.3
Added const to every read-only pointer argument
2016-04-18 19:25:31 +03:00
Igor Ivanov
c02d0b7161 oshmem: Align OSHMEM API with spec v1.3 (shmem_lock change signature)
Annex G:
Version 1.3
Added volatile to remotely accessible pointer argument in
SHMEM_LOCK
See Sections 8.9.1
2016-04-18 19:25:18 +03:00
Igor Ivanov
a52b0797fc oshmem: Align OSHMEM API with spec v1.3 (shmem_wait change signature)
Annex G:
Version 1.3
Added volatile to remotely accessible pointer argument in SHMEM_WAIT
See Sections 8.7.1
2016-04-18 19:24:55 +03:00
Gilles Gouaillardet
cb84f582b2 oshmem: add missing prototypes for pshmem_alltoall[s]{32,64} 2016-03-24 15:22:29 +09:00
Mike Dubman
1d8fbfefb0 Merge pull request #1478 from igor-ivanov/pr/oshmem-v1.3-alltoall
oshmem: Add alltoall
2016-03-22 07:51:36 +02:00
Igor Ivanov
1bed5d8aee oshmem: Align OSHMEM API with spec v1.3 (update scoll/basic) 2016-03-21 11:46:01 +02:00
Igor Ivanov
50906b34b3 oshmem: Align OSHMEM API with spec v1.3 (Add scoll/alltoall interface) 2016-03-21 10:43:31 +02:00
Igor Ivanov
e0d87225eb oshmem: Align OSHMEM API with spec v1.3 (update shmem.h) 2016-03-17 19:06:38 +02:00
Igor Ivanov
456d32716a oshmem: Align OSHMEM API with spec v1.2 (backward compatibility for extensions) 2015-11-24 18:58:29 +02:00
Igor Ivanov
56214eb295 oshmem: Align OSHMEM API with spec v1.2 (rename extensions to shmemx_) 2015-11-24 18:58:28 +02:00