HOME
| OPENMP API Specification: Version 5.1 November 2020

3.13.1  Memory Management Types

The following type definitions are used by the memory management routines:

SVG-Viewer needed.

 

 
typedef enum omp_alloctrait_key_t { 
  omp_atk_sync_hint = 1, 
  omp_atk_alignment = 2, 
  omp_atk_access = 3, 
  omp_atk_pool_size = 4, 
  omp_atk_fallback = 5, 
  omp_atk_fb_data = 6, 
  omp_atk_pinned = 7, 
  omp_atk_partition = 8 
} omp_alloctrait_key_t; 
 
typedef enum omp_alloctrait_value_t { 
  omp_atv_false = 0, 
  omp_atv_true = 1, 
  omp_atv_contended = 3, 
  omp_atv_uncontended = 4, 
  omp_atv_serialized = 5, 
  omp_atv_sequential = omp_atv_serialized, // (deprecated) 
  omp_atv_private = 6, 
  omp_atv_all = 7, 
  omp_atv_thread = 8, 
  omp_atv_pteam = 9, 
  omp_atv_cgroup = 10, 
  omp_atv_default_mem_fb = 11, 
  omp_atv_null_fb = 12, 
  omp_atv_abort_fb = 13, 
  omp_atv_allocator_fb = 14, 
  omp_atv_environment = 15, 
  omp_atv_nearest = 16, 
  omp_atv_blocked = 17, 
  omp_atv_interleaved = 18 
} omp_alloctrait_value_t; 
 
typedef struct omp_alloctrait_t { 
  omp_alloctrait_key_t key; 
  omp_uintptr_t value; 
} omp_alloctrait_t;  

SVG-Viewer needed.

SVG-Viewer needed.

 

 
 
integer(kind=omp_alloctrait_key_kind), & 
   parameter :: omp_atk_sync_hint = 1 
integer(kind=omp_alloctrait_key_kind), & 
   parameter :: omp_atk_alignment = 2 
integer(kind=omp_alloctrait_key_kind), & 
   parameter :: omp_atk_access = 3 
integer(kind=omp_alloctrait_key_kind), & 
   parameter :: omp_atk_pool_size = 4 
integer(kind=omp_alloctrait_key_kind), & 
   parameter :: omp_atk_fallback = 5 
integer(kind=omp_alloctrait_key_kind), & 
   parameter :: omp_atk_fb_data = 6 
integer(kind=omp_alloctrait_key_kind), & 
   parameter :: omp_atk_pinned = 7 
integer(kind=omp_alloctrait_key_kind), & 
   parameter :: omp_atk_partition = 8 
 
integer(kind=omp_alloctrait_val_kind), & 
  parameter :: omp_atv_default = -1 
integer(kind=omp_alloctrait_val_kind), & 
  parameter :: omp_atv_false = 0 
integer(kind=omp_alloctrait_val_kind), & 
  parameter :: omp_atv_true = 1 
integer(kind=omp_alloctrait_val_kind), & 
  parameter :: omp_atv_contended = 3 
integer(kind=omp_alloctrait_val_kind), & 
  parameter :: omp_atv_uncontended = 4 
integer(kind=omp_alloctrait_val_kind), & 
  parameter :: omp_atv_serialized = 5 
integer(kind=omp_alloctrait_val_kind), & 
  parameter :: omp_atv_sequential = & 
    omp_atv_serialized ! (deprecated) 
integer(kind=omp_alloctrait_val_kind), & 
  parameter :: omp_atv_private = 6 
integer(kind=omp_alloctrait_val_kind), & 
  parameter :: omp_atv_all = 7 
integer(kind=omp_alloctrait_val_kind), & 
  parameter :: omp_atv_thread = 8 
integer(kind=omp_alloctrait_val_kind), & 
  parameter :: omp_atv_pteam = 9 
integer(kind=omp_alloctrait_val_kind), & 
  parameter :: omp_atv_cgroup = 10 
integer(kind=omp_alloctrait_val_kind), & 
  parameter :: omp_atv_default_mem_fb = 11 
integer(kind=omp_alloctrait_val_kind), & 
  parameter :: omp_atv_null_fb = 12 
integer(kind=omp_alloctrait_val_kind), & 
  parameter :: omp_atv_abort_fb = 13 
integer(kind=omp_alloctrait_val_kind), & 
  parameter :: omp_atv_allocator_fb = 14 
integer(kind=omp_alloctrait_val_kind), & 
  parameter :: omp_atv_environment = 15 
integer(kind=omp_alloctrait_val_kind), & 
  parameter :: omp_atv_nearest = 16 
integer(kind=omp_alloctrait_val_kind), & 
  parameter :: omp_atv_blocked = 17 
integer(kind=omp_alloctrait_val_kind), & 
  parameter :: omp_atv_interleaved = 18 
 
! omp_alloctrait might not be provided in omp_lib.h. 
type omp_alloctrait 
  integer(kind=omp_alloctrait_key_kind) key 
  integer(kind=omp_alloctrait_val_kind) value 
end type omp_alloctrait 
 
integer(kind=omp_allocator_handle_kind), & 
  parameter :: omp_null_allocator = 0  

SVG-Viewer needed.