OpenMP memory spaces represent storage resources where variables can be stored and retrieved. 6.1 shows the list of predefined memory spaces. The selection of a given memory space expresses an intent to use storage with certain traits for the allocations. The actual storage resources that each memory space represents are implementation defined.
tablePredefined Memory Spaces
Memory space name | Storage selection intent |
omp_default_mem_space | Represents the system default storage |
omp_large_cap_mem_space | Represents storage with large capacity |
omp_const_mem_space | Represents storage optimized for variables with constant values |
omp_high_bw_mem_space | Represents storage with high bandwidth |
omp_low_lat_mem_space | Represents storage with low latency |
Variables allocated in the omp_const_mem_space memory space may be initialized through the firstprivate clause or with compile time constants for static and constant variables. Implementation-defined mechanisms to provide the constant value of these variables may also be supported.
Restrictions
Restrictions to OpenMP memory spaces are as follows: