table of contents
SHMEM_CACHE(3) | Open MPI | SHMEM_CACHE(3) |
NAME¶
shmem_clear_cache_inv(3), shmem_set_cache_inv(3), shmem_set_cache_line_inv(3), shmem_udcflush(3), shmem_udcflush_line(3) - Controls data cache utilities
SYNOPSIS¶
C or C++:
#include <mpp/shmem.h> void shmem_clear_cache_inv(void); void shmem_clear_cache_line_inv(void *target); void shmem_set_cache_inv(void); void shmem_set_cache_line_inv(void *target); void shmem_udcflush(void); void shmem_udcflush_line(void *target);
Fortran:
INCLUDE "mpp/shmem.fh" CALL SHMEM_CLEAR_CACHE_INV CALL SHMEM_CLEAR_CACHE_LINE_INV(target) CALL SHMEM_SET_CACHE_INV CALL SHMEM_SET_CACHE_LINE_INV(target) CALL SHMEM_UDCFLUSH CALL SHMEM_UDCFLUSH_LINE(target)
DESCRIPTION¶
The following argument is passed to the cache line control routines:
- target
- A data object that is local to the processing element (PE). target can be of any noncharacter type. If you are using Fortran, it can be of any kind.
shmem_clear_cache_inv disables automatic cache coherency mode previously enabled by shmem_set_cache_inv or shmem_set_cache_line_inv.
shmem_clear_cache_line_inv disables automatic cache coherency mode for the cache line associated with the address of target only.
shmem_set_cache_inv enables the OpenSHMEM API to automatically decide the best strategy for cache coherency.
shmem_set_cache_line_inv enables automatic cache coherency mode for the cache line associated with the address of target only.
shmem_clear_cache_inv disables automatic cache coherency mode previously enabled by shmem_set_cache_inv or shmem_set_cache_line_inv.
shmem_udcflush makes the entire user data cache coherent.
shmem_udcflush_line makes coherent the cache line that corresponds with the address specified by target.
NOTES¶
These routines have been retained for improved backward compatability with legacy architectures.
SEE ALSO¶
intro_shmem(3), shmem_put(3), shmem_swap(3)
September 30, 2023 | 4.1.6 |