Scroll to navigation

SHMEM_SET_CACHE_LINE_INV(3) Open MPI SHMEM_SET_CACHE_LINE_INV(3)


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:

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 compatibility with legacy architectures.

SEE ALSO:

intro_shmem(3) shmem_put(3) shmem_swap(3)


COPYRIGHT

2003-2024, The Open MPI Community

February 10, 2024