6
–
SHMEM Description and Configuration
Application Programming Interface
IB0054606-02 A
6-17
8 byte put to a sync location
Target side:
Wait for the sync location to be written
Now it is safe to make observations on all puts prior to fence
shmem_int_wait()
,
shmem_long_wait()
,
shmem_longlong_wait()
,
shmem_short_wait()
,
shmem_wait()
,
shmem_int_wait_until()
,
shmem_long_wait_until()
,
shmem_longlong_wait_until()
,
shmem_short_wait_until()
,
shmem_wait_until()
- These SHMEM operations are provided for
waiting for a variable in local symmetric memory to change value due to an
incoming put. In the active progress mode SHMEM applications must use
these routines for this purpose, and not implement their own polling loop
without SHMEM library calls. In the passive progress mode SHMEM
application may use a polling loop without a SHMEM library call. However,
performance will typically be substantially improved by using the SHMEM
wait operation instead.
shmem_stack()
is implemented as a no-op since this is a distributed
memory cluster architecture.
shmem_ptr
(void *target, int pe) returns the provided address, if the PE is
my PE, otherwise NULL. This implementation is sufficient to conform to the
SHMEM API and is appropriate for a distributed memory cluster
architecture.
shmem_clear_cache_inv()
,
shmem_clear_cache_line_inv()
,
shmem_set_cache_inv()
,
shmem_set_cache_line_inv()
,
shmem_udcflush()
, and
shmem_udcflush_line()
are each
implemented as a no-op since there is no global memory caching in this
implementation.
This SHMEM implementation allows remote access to variables that are in
the symmetric heap and static data/read-only data sections only. It does not
support static data sections in dynamically loaded libraries.
Application Programming Interface
lists the provided SHMEM Application Programming Interface (API)
calls and details any restrictions.
Summary of Contents for OFED+ Host
Page 1: ...IB0054606 02 A OFED Host Software Release 1 5 4 User Guide...
Page 14: ...xiv IB0054606 02 A OFED Host Software Release 1 5 4 User Guide...
Page 22: ...1 Introduction Interoperability 1 4 IB0054606 02 A...
Page 96: ...4 Running MPI on QLogic Adapters Debugging MPI Programs 4 24 IB0054606 02 A...
Page 140: ...6 SHMEM Description and Configuration SHMEM Benchmark Programs 6 32 IB0054606 02 A...
Page 148: ...8 Dispersive Routing 8 4 IB0054606 02 A...
Page 164: ...9 gPXE HTTP Boot Setup 9 16 IB0054606 02 A...
Page 176: ...A Benchmark Programs Benchmark 3 Messaging Rate Microbenchmarks A 12 IB0054606 02 A...
Page 202: ...B SRP Configuration OFED SRP Configuration B 26 IB0054606 02 A Notes...
Page 206: ...C Integration with a Batch Queuing System Clean up PSM Shared Memory Files C 4 IB0054606 02 A...
Page 238: ...E ULP Troubleshooting Troubleshooting SRP Issues E 20 IB0054606 02 A...
Page 242: ...F Write Combining Verify Write Combining is Working F 4 IB0054606 02 A Notes...
Page 280: ...G Commands and Files Summary of Configuration Files G 38 IB0054606 02 A...
Page 283: ......