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