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
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
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
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
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
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
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
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
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 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
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
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
6b7bc64101
spml/yoda: MCA_PML(add_procs) all procs from oshmem_comm_world
...
and fix oshmem_group_proc_{init,create} so they use the number of procs in oshmem_comm_world
Thanks Debendra Das for the report and Josh Ladd for the guidance
Fixes open-mpi/ompi#1966
2016-08-17 14:24:02 +09:00
Igor Ivanov
a8ab5b55b9
oshmem: Fix double lock issue
...
Signed-off-by: Igor Ivanov <igor.ivanov.va@gmail.com>
2016-06-10 15:52:31 +03:00
Nathan Hjelm
dbfab94ede
atomic/mxm: rename symbol that is a duplicate of one in atomic/ucx
...
This fixes an error when building with --enable-static.
Signed-off-by: Nathan Hjelm <hjelmn@lanl.gov>
2016-05-25 15:34:40 -06:00
Jeff Squyres
2c5b39718d
oshmem: fix scoll_null_alltoall() prototype
...
Signed-off-by: Jeff Squyres <jsquyres@cisco.com>
2016-03-26 03:50:57 -07: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
Mike Dubman
7483a66ef6
Merge pull request #1455 from igor-ivanov/pr/oshmem-v1.3
...
oshmem: Add Non-blocking Remote Memory Access Routines
2016-03-22 07:50:11 +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
e690521cdd
oshmem/scoll: Fix bug in basic/barrier algorithm
2016-03-21 10:34:55 +02:00
Igor Ivanov
36c29b393b
oshmem: Align OSHMEM API with spec v1.3 (update spml/yoda)
2016-03-17 19:06:39 +02:00
Igor Ivanov
b2700320a3
oshmem: Align OSHMEM API with spec v1.3 (update spml/ikrit)
2016-03-17 19:06:39 +02:00
Igor Ivanov
450ea6684c
oshmem: Align OSHMEM API with spec v1.3 (update spml/ucx)
2016-03-17 19:06:38 +02:00
Igor Ivanov
8464b6147a
oshmem: Align OSHMEM API with spec v1.3 (Add spml/get_nb interface)
2016-03-15 14:04:59 +02:00
George Bosilca
68c36ea9dc
Fix two annoying warnings in our UCX support.
2016-02-14 00:02:16 -05:00
Alex Mikheev
f627608e42
OSHMEM/UCX: implements atomic support
...
ucx atomic component has a real code now.
fixes bug in spml ucx arr_procs
removes redundant parameter checks from atomic components.
2016-01-21 16:02:28 +02:00
Gilles Gouaillardet
fec973efda
configury: test portability
...
replace test ... -o ... with test ... || test ...
and test ... -a ... with test ... && test ...
2015-12-28 13:58:45 +09:00
Gilles Gouaillardet
99d046d060
scoll/fca: add missing #include <alloca.h>
2015-12-24 14:33:58 +09:00
igor.ivanov@itseez.com
08c18195e7
oshmem/sshmem: Fix warnings in verbs component
2015-12-16 17:37:00 +02:00
igor.ivanov@itseez.com
6448bd07a4
oshmem/spml: Fix warnings in ikrit component
2015-12-16 17:36:54 +02:00