cache_nt

Date:

01-09-2012

NAME

cache_nt - Specifies objects that should use non-temporal reads and writes

SYNOPSIS

#pragma _CRI cache_nt base_name [,base_name ...]
!DIR$ CACHE_NT base_name [,base_name]
base_name

The base name of the object that should use non-temporal reads and writes. This can be the base name of any object such as an array, scalar structure, and so on, without member references like C[10]. If you specify a pointer in the list, only the references, not the pointer itself, will have the cache non-temporal property.

IMPLEMENTATION

Cray Linux Environment (CLE)

DESCRIPTION

The cache_nt directive is an advisory directive that specifies objects that should use non-temporal reads and writes. Advisory directives are directives the compiler will honor if conditions permit it to. When this directive is honored, the performance of your code may be improved because the cache is not occupied by objects that have a lower cache reuse rate. Theoretically, this makes room for objects that have a higher cache reuse rate.

You should use this directive for objects that should not be placed into the cache.

To use the directive, you must place it only in the specification part, before any executable statement.

This directive may be locally overridden by use of a loop_info or LOOP_INFO directives. This directive overrides automatic cache management decisions (see -h cachen and -O cachen) made on the compiler command line.

SEE ALSO

craycc(1)

Cray C and C++ Reference Manual

Cray Fortran Reference Manual