Alex Mikheev
ea3ea4835b
oshmem: mem use hook: apply code review fixes
...
Signed-off-by: Alex Mikheev <alexm@mellanox.com>
(cherry picked from commit a422154a141f0be5b92d2b6c26d7b2b4176dfe18)
2017-01-30 11:30:20 +02:00
Alex Mikheev
9da9e6260d
oshmem: spml ucx: on error print ucx error string
...
Signed-off-by: Alex Mikheev <alexm@mellanox.com>
2017-01-29 10:28:24 +02:00
Alex Mikheev
986ca000f8
oshmem: spml: add memory allocation hook
...
The hook is called from memheap when memory range
is going to be allocated by smalloc(), realloc() and others.
ucx spml uses this hook to call ucp_mem_advise in order to speedup
non blocking memory mapping.
Signed-off-by: Alex Mikheev <alexm@mellanox.com>
2017-01-26 16:41:39 +02: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
Alex Mikheev
83c2ab76a5
oshmem: memheap: refactor component selection code
...
Do not call component's init function until the component has been
selected.
Use mca_base_select() instead of the custom component selection code.
Signed-off-by: Alex Mikheev <alexm@mellanox.com>
2017-01-16 13:48:58 +02:00
Alex Mikheev
67d66c2326
oshmem: sshmem: make mmap allocator a default instead of verbs
...
By default use mmap() to allocate memory for the symmetric heap.
It is safer and more portable choice than sysv and verbs.
Signed-off-by: Alex Mikheev <alexm@mellanox.com>
2016-12-14 13:31:16 +02:00
Alina Sklarevich
e9d2d029c6
PML/SPML/UCX: Adapt to the API changes in the UCX lib.
...
Signed-off-by: Alina Sklarevich <alinas@mellanox.com>
2016-12-08 11:33:29 +02:00
Gilles Gouaillardet
804a784fce
Merge pull request #2544 from ggouaillardet/topic/mca_spml_yoda_get
...
spml/yoda: fix support for BTLs that do not register memory in mca_sp…
2016-12-08 17:26:07 +09:00
Gilles Gouaillardet
062ed9c919
spml/yoda: fix support for BTLs that do not register memory in mca_spml_yoda_get()
...
Refs open-mpi/ompi#2499
Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
2016-12-08 15:56:25 +09: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
Mike Dubman
53a0c86c16
Merge pull request #2455 from yosefe/topic/ucp-uct-nonblock-mem-reg-api
...
spml_ucx: allow registering the heap in non-blocking mode.
2016-11-27 11:42:09 +02:00
Mike Dubman
f339632216
Merge pull request #2452 from alex-mikheev/topic/scoll_basic_fixes
...
oshmem: fixes scoll basic barrier and broadcast
2016-11-25 18:03:56 +02:00
Yossi Itigin
0241a2697d
spml_ucx: allow registering the heap in non-blocking mode.
...
Signed-off-by: Yossi Itigin <yosefe@mellanox.com>
2016-11-25 15:09:22 +02:00
Alex Mikheev
0f83a1fd57
oshmem: scoll: fixes basic barrier broadcast and alltoall
...
Add missing fence() call to alltoall and central counter broadcast.
Signed-off-by: Alex Mikheev <alexm@mellanox.com>
2016-11-24 16:56:55 +02:00
Alex Mikheev
d1723355d3
oshmem: memheap: removes find_offset
...
Reasons for removal are:
- the function is only used by the shmem_lock code
- only a subset of the function is used by the shmem_lock
- for the general case the function is not correct
Signed-off-by: Alex Mikheev <alexm@mellanox.com>
2016-11-21 16:09:17 +02:00
Gilles Gouaillardet
19bdd1d626
oshmem/memheap: initialize common symbol mca_memheap_base_map
...
Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
2016-11-21 09:32:27 +09:00
Joshua Ladd
9a79da729f
Merge pull request #2354 from alex-mikheev/topic/oshmem_mkey_cache
...
ikrit spml cleanup, mkey cache and assorted bug fixes
2016-11-14 17:22:13 -05:00
Alex Mikheev
864904e8ab
oshmem: ucx: check status only if configured --with-oshmem-param-check
...
Current standard says that behaviour in the case of error is undefined
Signed-off-by: Alex Mikheev <alexm@mellanox.com>
2016-11-10 11:29:03 +02:00
Alex Mikheev
48a7a0bbb9
oshmem: lock: call opal_progress only when busy waiting
...
Signed-off-by: Alex Mikheev <alexm@mellanox.com>
2016-11-10 11:27:24 +02:00
Alex Mikheev
bf61961f8b
oshmem: code review fixes
...
Signed-off-by: Alex Mikheev <alexm@mellanox.com>
2016-11-08 15:11:59 +02:00
Alex Mikheev
f133d9b6c8
oshmem: fixes comiplation errors in sshmem
...
Signed-off-by: Alex Mikheev <alexm@mellanox.com>
2016-11-08 15:11:07 +02:00
Gilles Gouaillardet
11dc86f26b
cleanup: always #include <pthread.h>
...
pthreads are now mandatory, so there is no more need to
Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
2016-11-08 13:07:45 +09:00
Alex Mikheev
18301429a0
oshmem: removes fortran shmem_put() because v1.3 does not have it
...
picked from the 64a8f64afd351e37e7d80a080e495c082b56517c
Signed-off-by: Alex Mikheev <alexm@mellanox.com>
2016-11-07 13:47:57 +02:00
Alex Mikheev
ff5095e533
OSHMEM: adds support for mkey caching by spml
...
It improves cpu cache hit ratio.
Signed-off-by: Alex Mikheev <alexm@mellanox.com>
2016-11-06 11:56:43 +02:00
Alex Mikheev
5c2f807ef8
OSHMEM: fixes verbosity log level cal
...
Signed-off-by: Alex Mikheev <alexm@mellanox.com>
2016-11-06 11:56:42 +02:00
Alex Mikheev
7caa736533
OSHMEM: fixes potential deadlock in shmem_lock()
...
Signed-off-by: Alex Mikheev <alexm@mellanox.com>
2016-11-06 11:56:42 +02:00
Alex Mikheev
defcc3ddc1
OSHMEM: spml ikrit: get/put request cleanup
...
Signed-off-by: Alex Mikheev <alexm@mellanox.com>
2016-11-06 11:56:41 +02:00
Alex Mikheev
61bd59a369
OSHMEM: fixes addr_acessible()
...
check every possible transport
Signed-off-by: Alex Mikheev <alexm@mellanox.com>
2016-11-06 11:56:41 +02:00
Alex Mikheev
23c3dc8345
OSHMEM: mxm: optimize mxm_peer layout.
...
Signed-off-by: Alex Mikheev <alexm@mellanox.com>
2016-11-06 11:56:40 +02:00
Alex Mikheev
df74d549dc
OSHMEM: spml ikrit: changes mxm_peers layout
...
use single array instead of array of pointers
Signed-off-by: Alex Mikheev <alexm@mellanox.com>
2016-11-06 11:56:39 +02:00
Alex Mikheev
b5c7c7de78
OSHMEM: memheap: disable oob if allgather mkey exchange is used
...
In this case there is no point to add another progress callback
Signed-off-by: Alex Mikheev <alexm@mellanox.com>
2016-11-06 11:56:39 +02:00
Alex Mikheev
0826e63363
OSHMEM: spml_ikrit: makes quiet wait for get_nbi requests
...
shmem_quit() shall complete all outstanding get_nbi() requests
Signed-off-by: Alex Mikheev <alexm@mellanox.com>
2016-11-06 11:56:38 +02:00
Alex Mikheev
2f91ce7281
OSHMEM: mxm versions less than 2.0 are no longer supported
...
Signed-off-by: Alex Mikheev <alexm@mellanox.com>
2016-11-06 11:56:38 +02:00
Pavel Shamis (Pasha)
92b0ebd7c3
For UCX it is legal to return UCS_INPROGRESS (1) code for non-blocking function
...
calls, which means that the operation was successfully started but not
immediately completed. This is a "good" return code that should not be handled
as an error.
Signed-off-by: Pavel Shamis (Pasha) <pasharesearch@gmail.com>
2016-11-03 15:36:13 -05:00
Boris Karasev
68b5acd9f4
oshmem/spml/yoda: fixed the btl operations
...
Fixed the shmem OOM error which is referenced on #2028
Signed-off-by: Boris Karasev <karasev.b@gmail.com>
2016-11-02 13:38:35 +02:00
Alex Mikheev
511dd43736
oshmem: fixes typo in the error message
...
Signed-off-by: Alex Mikheev <alexm@mellanox.com>
2016-10-27 09:27:45 +03:00
Alex Mikheev
f630b43285
OSHMEM: fixes crash during initialization
...
Do not call mpi comm_dup() if mpi failed to initialize. Also do not set
signal handlers.
Small code styling fixes.
Signed-off-by: Alex Mikheev <alexm@mellanox.com>
2016-10-26 11:15:06 +03:00
Alex Mikheev
6c798fe08d
OSHMEM: updates copyrights in fortran fetch/set
...
(cherry picked from commit f5297ccdb277208a96aaffd72a6454afe712fdb4)
2016-10-20 15:09:27 +03:00
Yossi Itigin
05ca466c6b
ucx: adapt pml_ucx and spml_ucx to new UCX APIs
...
- pass field_mask to ucp_init().
- use non-blocking disconnect.
- recv() with pre-allocated request.
- call opal_progress() from iprobe() and improbe().
- use shift pattern in connect/disconnect.
2016-10-12 23:45:45 +03:00
Joshua Ladd
fe2b8b7e06
OSHMEM Specification version: Bump to v1.3.
2016-10-06 22:12:07 +03:00
Joshua Hursey
fc3cf994db
build: Custom libmpi_FOO name fix for wrapper compilers
...
* In open-mpi/ompi@f6f24a4f67 I missed
updating the library references for the wrapper compilers.
* Fixes the CXX wrapper compiler and CXX library is renamed as needed.
* Fixes the Java wrapper compiler and the Java library is renamed as needed.
2016-09-30 16:40:56 -05:00
Joshua Hursey
f6f24a4f67
build: Custom libmpi(_FOO) name option in configure
...
* Add a configure time option to rename libmpi(_FOO).*
- `--with-libmpi-name=STRING`
* This commit only impacts the installed libraries.
Internal, temporary libraries have not been renamed to limit the
scope of the patch to only what is needed.
For example:
```shell
shell$ ./configure --with-libmpi-name=wookie
...
shell$ find . -name "libmpi*"
shell$ find . -name "libwookie*"
./lib/libwookie.so.0.0.0
./lib/libwookie.so.0
./lib/libwookie.so
./lib/libwookie.la
./lib/libwookie_mpifh.so.0.0.0
./lib/libwookie_mpifh.so.0
./lib/libwookie_mpifh.so
./lib/libwookie_mpifh.la
./lib/libwookie_usempi.so.0.0.0
./lib/libwookie_usempi.so.0
./lib/libwookie_usempi.so
./lib/libwookie_usempi.la
shell$
```
2016-09-29 21:47:24 -05: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
Joshua Ladd
d5e65c4860
Merge pull request #2052 from alex-mikheev/topic/spml_ikrit_zcopy_fix
...
OSHMEM: spml ikrit: fixes zero copy
2016-09-12 12:35:32 -04:00
Alex Mikheev
439456ae96
OSHMEM: spml ikrit: fixes zero copy
...
Allow mxm to use zero copy in put() and get() for the large messages.
2016-09-04 12:16:09 +03:00