logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

C or C++:

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

       SEEALSO:intro_shmem(3) shmem_put(3) shmem_swap(3)

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)

See Also