ALLOCATE Clause

Directive Clause: Specifies the memory allocator to be used for one or more private variables or common blocks of a construct. This feature is only available for ifx.

ALLOCATE ([allocator :] list)

allocator

Is an integer expression with a kind type of omp_allocator_handle_kind.

list

Is a comma-separated list of variables or named common blocks that have been specified in a data sharing clause on the same directive that makes the variable or common block private for the construct. A common block name must be enclosed in slashes (/ /).

The storage for the private copies of an object specified in the list are allocated using the specified memory allocator. If no allocator is specified in a clause, the allocation is performed using the default memory allocator specified by the internal control variable (ICV) def-allocator-var.

An ALLOCATE clause on a TARGET directive or directive within a TARGET region must specify an allocator expression.

The result of allocating private variables with a memory allocator whose access trait is set to thread by a TASK, TASKLOOP, or TARGET directive is undefined.

See Also