|
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
|
|
180 | 190 | integer (kind=omp_allocator_handle_kind), parameter, public :: llvm_omp_target_shared_mem_alloc = 101
|
181 | 191 | integer (kind=omp_allocator_handle_kind), parameter, public :: llvm_omp_target_device_mem_alloc = 102
|
182 | 192 |
|
183 |
| - integer (kind=omp_memspace_handle_kind), parameter, public :: omp_default_mem_space = 0 |
| 193 | + integer (kind=omp_memspace_handle_kind), parameter, public :: omp_null_mem_space = 0 |
| 194 | + integer (kind=omp_memspace_handle_kind), parameter, public :: omp_default_mem_space = 99 |
184 | 195 | integer (kind=omp_memspace_handle_kind), parameter, public :: omp_large_cap_mem_space = 1
|
185 | 196 | integer (kind=omp_memspace_handle_kind), parameter, public :: omp_const_mem_space = 2
|
186 | 197 | integer (kind=omp_memspace_handle_kind), parameter, public :: omp_high_bw_mem_space = 3
|
|
802 | 813 | logical (kind=omp_logical_kind) omp_in_explicit_task
|
803 | 814 | end function omp_in_explicit_task
|
804 | 815 |
|
| 816 | + function omp_get_devices_memspace(ndevs, devs, memspace) |
| 817 | + use omp_lib_kinds |
| 818 | + integer(omp_memspace_handle_kind) :: omp_get_devices_memspace |
| 819 | + integer, intent(in) :: ndevs |
| 820 | + integer, intent(in) :: devs(*) |
| 821 | + integer(omp_memspace_handle_kind), intent(in) :: memspace |
| 822 | + end function omp_get_devices_memspace |
| 823 | + |
| 824 | + function omp_get_device_memspace(dev, memspace) |
| 825 | + use omp_lib_kinds |
| 826 | + integer(omp_memspace_handle_kind) :: omp_get_device_memspace |
| 827 | + integer, intent(in) :: dev |
| 828 | + integer(omp_memspace_handle_kind), intent(in) :: memspace |
| 829 | + end function omp_get_device_memspace |
| 830 | + |
| 831 | + function omp_get_devices_and_host_memspace(ndevs, devs, memspace) |
| 832 | + use omp_lib_kinds |
| 833 | + integer(omp_memspace_handle_kind) :: & |
| 834 | + omp_get_devices_and_host_memspace |
| 835 | + integer, intent(in) :: ndevs |
| 836 | + integer, intent(in) :: devs(*) |
| 837 | + integer(omp_memspace_handle_kind), intent(in) :: memspace |
| 838 | + end function omp_get_devices_and_host_memspace |
| 839 | + |
| 840 | + function omp_get_device_and_host_memspace(dev, memspace) |
| 841 | + use omp_lib_kinds |
| 842 | + integer(omp_memspace_handle_kind) :: & |
| 843 | + omp_get_device_and_host_memspace |
| 844 | + integer, intent(in) :: dev |
| 845 | + integer(omp_memspace_handle_kind), intent(in) :: memspace |
| 846 | + end function omp_get_device_and_host_memspace |
| 847 | + |
| 848 | + function omp_get_devices_all_memspace(memspace) |
| 849 | + use omp_lib_kinds |
| 850 | + integer(omp_memspace_handle_kind) :: omp_get_devices_all_memspace |
| 851 | + integer(omp_memspace_handle_kind), intent(in) :: memspace |
| 852 | + end function omp_get_devices_all_memspace |
| 853 | + |
| 854 | + function omp_get_devices_allocator(ndevs, devs, memspace) |
| 855 | + use omp_lib_kinds |
| 856 | + integer(omp_allocator_handle_kind) :: omp_get_devices_allocator |
| 857 | + integer, intent(in) :: ndevs |
| 858 | + integer, intent(in) :: devs(*) |
| 859 | + integer(omp_memspace_handle_kind), intent(in) :: memspace |
| 860 | + end function omp_get_devices_allocator |
| 861 | + |
| 862 | + function omp_get_device_allocator(dev, memspace) |
| 863 | + use omp_lib_kinds |
| 864 | + integer(omp_allocator_handle_kind) :: omp_get_device_allocator |
| 865 | + integer, intent(in) :: dev |
| 866 | + integer(omp_memspace_handle_kind), intent(in) :: memspace |
| 867 | + end function omp_get_device_allocator |
| 868 | + |
| 869 | + function omp_get_devices_and_host_allocator(ndevs, devs, memspace) |
| 870 | + use omp_lib_kinds |
| 871 | + integer(omp_allocator_handle_kind) :: & |
| 872 | + omp_get_devices_and_host_allocator |
| 873 | + integer, intent(in) :: ndevs |
| 874 | + integer, intent(in) :: devs(*) |
| 875 | + integer(omp_memspace_handle_kind), intent(in) :: memspace |
| 876 | + end function omp_get_devices_and_host_allocator |
| 877 | + |
| 878 | + function omp_get_device_and_host_allocator(dev, memspace) |
| 879 | + use omp_lib_kinds |
| 880 | + integer(omp_allocator_handle_kind) :: & |
| 881 | + omp_get_device_and_host_allocator |
| 882 | + integer, intent(in) :: dev |
| 883 | + integer(omp_memspace_handle_kind), intent(in) :: memspace |
| 884 | + end function omp_get_device_and_host_allocator |
| 885 | + |
| 886 | + function omp_get_devices_all_allocator(memspace) |
| 887 | + use omp_lib_kinds |
| 888 | + integer(omp_allocator_handle_kind) :: & |
| 889 | + omp_get_devices_all_allocator |
| 890 | + integer(omp_memspace_handle_kind), intent(in) :: memspace |
| 891 | + end function omp_get_devices_all_allocator |
| 892 | + |
| 893 | + function omp_get_memspace_num_resources(memspace) |
| 894 | + use omp_lib_kinds |
| 895 | + integer omp_get_memspace_num_resources |
| 896 | + integer(omp_memspace_handle_kind), intent(in) :: memspace |
| 897 | + end function omp_get_memspace_num_resources |
| 898 | + |
| 899 | + function omp_get_submemspace(memspace, num_resources, resources) |
| 900 | + use omp_lib_kinds |
| 901 | + integer(omp_memspace_handle_kind) omp_get_submemspace |
| 902 | + integer(omp_memspace_handle_kind), intent(in) :: memspace |
| 903 | + integer, intent(in) :: num_resources |
| 904 | + integer, intent(in) :: resources(*) |
| 905 | + end function omp_get_submemspace |
| 906 | + |
805 | 907 | ! ***
|
806 | 908 | ! *** kmp_* entry points
|
807 | 909 | ! ***
|
|
0 commit comments