|
145 | 145 | integer (kind=omp_alloctrait_key_kind), parameter, public :: omp_atk_fb_data = 6
|
146 | 146 | integer (kind=omp_alloctrait_key_kind), parameter, public :: omp_atk_pinned = 7
|
147 | 147 | integer (kind=omp_alloctrait_key_kind), parameter, public :: omp_atk_partition = 8
|
| 148 | + integer (kind=omp_alloctrait_key_kind), parameter, public :: omp_atk_pin_device = 9 |
| 149 | + integer (kind=omp_alloctrait_key_kind), parameter, public :: omp_atk_preferred_device = 10 |
| 150 | + integer (kind=omp_alloctrait_key_kind), parameter, public :: omp_atk_device_access = 11 |
| 151 | + integer (kind=omp_alloctrait_key_kind), parameter, public :: omp_atk_target_access = 12 |
| 152 | + integer (kind=omp_alloctrait_key_kind), parameter, public :: omp_atk_atomic_scope = 13 |
| 153 | + integer (kind=omp_alloctrait_key_kind), parameter, public :: omp_atk_part_size = 14 |
148 | 154 |
|
149 | 155 | integer (kind=omp_alloctrait_val_kind), parameter, public :: omp_atv_default = -1
|
150 | 156 | integer (kind=omp_alloctrait_val_kind), parameter, public :: omp_atv_false = 0
|
|
154 | 160 | integer (kind=omp_alloctrait_val_kind), parameter, public :: omp_atv_serialized = 5
|
155 | 161 | integer (kind=omp_alloctrait_val_kind), parameter, public :: omp_atv_sequential = omp_atv_serialized
|
156 | 162 | integer (kind=omp_alloctrait_val_kind), parameter, public :: omp_atv_private = 6
|
157 |
| - integer (kind=omp_alloctrait_val_kind), parameter, public :: omp_atv_all = 7 |
| 163 | + integer (kind=omp_alloctrait_val_kind), parameter, public :: omp_atv_device = 7 |
158 | 164 | integer (kind=omp_alloctrait_val_kind), parameter, public :: omp_atv_thread = 8
|
159 | 165 | integer (kind=omp_alloctrait_val_kind), parameter, public :: omp_atv_pteam = 9
|
160 | 166 | integer (kind=omp_alloctrait_val_kind), parameter, public :: omp_atv_cgroup = 10
|
|
166 | 172 | integer (kind=omp_alloctrait_val_kind), parameter, public :: omp_atv_nearest = 16
|
167 | 173 | integer (kind=omp_alloctrait_val_kind), parameter, public :: omp_atv_blocked = 17
|
168 | 174 | integer (kind=omp_alloctrait_val_kind), parameter, public :: omp_atv_interleaved = 18
|
| 175 | + integer (kind=omp_alloctrait_val_kind), parameter, public :: omp_atv_all = 19 |
| 176 | + integer (kind=omp_alloctrait_val_kind), parameter, public :: omp_atv_single = 20 |
| 177 | + integer (kind=omp_alloctrait_val_kind), parameter, public :: omp_atv_multiple = 21 |
| 178 | + integer (kind=omp_alloctrait_val_kind), parameter, public :: omp_atv_memspace = 22 |
169 | 179 |
|
170 | 180 | integer (kind=omp_allocator_handle_kind), parameter, public :: omp_null_allocator = 0
|
171 | 181 | integer (kind=omp_allocator_handle_kind), parameter, public :: omp_default_mem_alloc = 1
|
|
182 | 192 | ! Preview of pinned memory support
|
183 | 193 | integer (kind=omp_allocator_handle_kind), parameter :: ompx_pinned_mem_alloc = 120
|
184 | 194 |
|
185 |
| - integer (kind=omp_memspace_handle_kind), parameter, public :: omp_default_mem_space = 0 |
| 195 | + integer (kind=omp_memspace_handle_kind), parameter, public :: omp_null_mem_space = 0 |
| 196 | + integer (kind=omp_memspace_handle_kind), parameter, public :: omp_default_mem_space = 99 |
186 | 197 | integer (kind=omp_memspace_handle_kind), parameter, public :: omp_large_cap_mem_space = 1
|
187 | 198 | integer (kind=omp_memspace_handle_kind), parameter, public :: omp_const_mem_space = 2
|
188 | 199 | integer (kind=omp_memspace_handle_kind), parameter, public :: omp_high_bw_mem_space = 3
|
|
834 | 845 | logical (kind=omp_logical_kind) omp_in_explicit_task
|
835 | 846 | end function omp_in_explicit_task
|
836 | 847 |
|
| 848 | + function omp_get_devices_memspace(ndevs, devs, memspace) |
| 849 | + use omp_lib_kinds |
| 850 | + integer(omp_memspace_handle_kind) :: omp_get_devices_memspace |
| 851 | + integer, intent(in) :: ndevs |
| 852 | + integer, intent(in) :: devs(*) |
| 853 | + integer(omp_memspace_handle_kind), intent(in) :: memspace |
| 854 | + end function omp_get_devices_memspace |
| 855 | + |
| 856 | + function omp_get_device_memspace(dev, memspace) |
| 857 | + use omp_lib_kinds |
| 858 | + integer(omp_memspace_handle_kind) :: omp_get_device_memspace |
| 859 | + integer, intent(in) :: dev |
| 860 | + integer(omp_memspace_handle_kind), intent(in) :: memspace |
| 861 | + end function omp_get_device_memspace |
| 862 | + |
| 863 | + function omp_get_devices_and_host_memspace(ndevs, devs, memspace) |
| 864 | + use omp_lib_kinds |
| 865 | + integer(omp_memspace_handle_kind) :: & |
| 866 | + omp_get_devices_and_host_memspace |
| 867 | + integer, intent(in) :: ndevs |
| 868 | + integer, intent(in) :: devs(*) |
| 869 | + integer(omp_memspace_handle_kind), intent(in) :: memspace |
| 870 | + end function omp_get_devices_and_host_memspace |
| 871 | + |
| 872 | + function omp_get_device_and_host_memspace(dev, memspace) |
| 873 | + use omp_lib_kinds |
| 874 | + integer(omp_memspace_handle_kind) :: & |
| 875 | + omp_get_device_and_host_memspace |
| 876 | + integer, intent(in) :: dev |
| 877 | + integer(omp_memspace_handle_kind), intent(in) :: memspace |
| 878 | + end function omp_get_device_and_host_memspace |
| 879 | + |
| 880 | + function omp_get_devices_all_memspace(memspace) |
| 881 | + use omp_lib_kinds |
| 882 | + integer(omp_memspace_handle_kind) :: omp_get_devices_all_memspace |
| 883 | + integer(omp_memspace_handle_kind), intent(in) :: memspace |
| 884 | + end function omp_get_devices_all_memspace |
| 885 | + |
| 886 | + function omp_get_devices_allocator(ndevs, devs, memspace) |
| 887 | + use omp_lib_kinds |
| 888 | + integer(omp_allocator_handle_kind) :: omp_get_devices_allocator |
| 889 | + integer, intent(in) :: ndevs |
| 890 | + integer, intent(in) :: devs(*) |
| 891 | + integer(omp_memspace_handle_kind), intent(in) :: memspace |
| 892 | + end function omp_get_devices_allocator |
| 893 | + |
| 894 | + function omp_get_device_allocator(dev, memspace) |
| 895 | + use omp_lib_kinds |
| 896 | + integer(omp_allocator_handle_kind) :: omp_get_device_allocator |
| 897 | + integer, intent(in) :: dev |
| 898 | + integer(omp_memspace_handle_kind), intent(in) :: memspace |
| 899 | + end function omp_get_device_allocator |
| 900 | + |
| 901 | + function omp_get_devices_and_host_allocator(ndevs, devs, memspace) |
| 902 | + use omp_lib_kinds |
| 903 | + integer(omp_allocator_handle_kind) :: & |
| 904 | + omp_get_devices_and_host_allocator |
| 905 | + integer, intent(in) :: ndevs |
| 906 | + integer, intent(in) :: devs(*) |
| 907 | + integer(omp_memspace_handle_kind), intent(in) :: memspace |
| 908 | + end function omp_get_devices_and_host_allocator |
| 909 | + |
| 910 | + function omp_get_device_and_host_allocator(dev, memspace) |
| 911 | + use omp_lib_kinds |
| 912 | + integer(omp_allocator_handle_kind) :: & |
| 913 | + omp_get_device_and_host_allocator |
| 914 | + integer, intent(in) :: dev |
| 915 | + integer(omp_memspace_handle_kind), intent(in) :: memspace |
| 916 | + end function omp_get_device_and_host_allocator |
| 917 | + |
| 918 | + function omp_get_devices_all_allocator(memspace) |
| 919 | + use omp_lib_kinds |
| 920 | + integer(omp_allocator_handle_kind) :: & |
| 921 | + omp_get_devices_all_allocator |
| 922 | + integer(omp_memspace_handle_kind), intent(in) :: memspace |
| 923 | + end function omp_get_devices_all_allocator |
| 924 | + |
| 925 | + function omp_get_memspace_num_resources(memspace) |
| 926 | + use omp_lib_kinds |
| 927 | + integer omp_get_memspace_num_resources |
| 928 | + integer(omp_memspace_handle_kind), intent(in) :: memspace |
| 929 | + end function omp_get_memspace_num_resources |
| 930 | + |
| 931 | + function omp_get_submemspace(memspace, num_resources, resources) |
| 932 | + use omp_lib_kinds |
| 933 | + integer(omp_memspace_handle_kind) omp_get_submemspace |
| 934 | + integer(omp_memspace_handle_kind), intent(in) :: memspace |
| 935 | + integer, intent(in) :: num_resources |
| 936 | + integer, intent(in) :: resources(*) |
| 937 | + end function omp_get_submemspace |
| 938 | + |
837 | 939 | ! ***
|
838 | 940 | ! *** kmp_* entry points
|
839 | 941 | ! ***
|
|
0 commit comments