1184 lines · plain
1! include/omp_lib.f90.var2 3!4!//===----------------------------------------------------------------------===//5!//6!// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.7!// See https://llvm.org/LICENSE.txt for license information.8!// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception9!//10!//===----------------------------------------------------------------------===//11!12 13 module omp_lib_kinds14 15 use, intrinsic :: iso_c_binding16 17 ! Set PRIVATE by default to explicitly only export what is meant18 ! to be exported by this MODULE.19 private20 21 integer, parameter, public :: omp_integer_kind = c_int22 integer, parameter, public :: omp_logical_kind = 423 integer, parameter, public :: omp_real_kind = c_float24 integer, parameter, public :: kmp_double_kind = c_double25 integer, parameter, public :: omp_lock_kind = c_intptr_t26 integer, parameter, public :: omp_nest_lock_kind = c_intptr_t27 integer, parameter, public :: omp_sched_kind = omp_integer_kind28 integer, parameter, public :: omp_proc_bind_kind = omp_integer_kind29 integer, parameter, public :: kmp_pointer_kind = c_intptr_t30 integer, parameter, public :: kmp_size_t_kind = c_size_t31 integer, parameter, public :: kmp_affinity_mask_kind = c_intptr_t32 integer, parameter, public :: kmp_cancel_kind = omp_integer_kind33 integer, parameter, public :: omp_sync_hint_kind = omp_integer_kind34 integer, parameter, public :: omp_lock_hint_kind = omp_sync_hint_kind35 integer, parameter, public :: omp_control_tool_kind = omp_integer_kind36 integer, parameter, public :: omp_control_tool_result_kind = omp_integer_kind37 integer, parameter, public :: omp_allocator_handle_kind = c_intptr_t38 integer, parameter, public :: omp_memspace_handle_kind = c_intptr_t39 integer, parameter, public :: omp_alloctrait_key_kind = omp_integer_kind40 integer, parameter, public :: omp_alloctrait_val_kind = c_intptr_t41 integer, parameter, public :: omp_interop_kind = c_intptr_t42 integer, parameter, public :: omp_interop_fr_kind = omp_integer_kind43 44 type omp_alloctrait45 integer(kind=omp_alloctrait_key_kind) key46 integer(kind=omp_alloctrait_val_kind) value47 end type omp_alloctrait48 public :: omp_alloctrait49 50 integer, parameter, public :: omp_pause_resource_kind = omp_integer_kind51 integer, parameter, public :: omp_depend_kind = c_intptr_t52 integer, parameter, public :: omp_event_handle_kind = c_intptr_t53 54 end module omp_lib_kinds55 56 module omp_lib57 58 use omp_lib_kinds59 60 ! Set PRIVATE by default to explicitly only export what is meant61 ! to be exported by this MODULE.62 private63 64 ! Re-export definitions in omp_lib_kinds65 public :: omp_integer_kind66 public :: omp_logical_kind67 public :: omp_real_kind68 public :: kmp_double_kind69 public :: omp_lock_kind70 public :: omp_nest_lock_kind71 public :: omp_sched_kind72 public :: omp_proc_bind_kind73 public :: kmp_pointer_kind74 public :: kmp_size_t_kind75 public :: kmp_affinity_mask_kind76 public :: kmp_cancel_kind77 public :: omp_sync_hint_kind78 public :: omp_lock_hint_kind79 public :: omp_control_tool_kind80 public :: omp_control_tool_result_kind81 public :: omp_allocator_handle_kind82 public :: omp_memspace_handle_kind83 public :: omp_alloctrait_key_kind84 public :: omp_alloctrait_val_kind85 public :: omp_interop_kind86 public :: omp_interop_fr_kind87 public :: omp_alloctrait88 public :: omp_pause_resource_kind89 public :: omp_depend_kind90 public :: omp_event_handle_kind91 92 integer (kind=omp_integer_kind), parameter, public :: openmp_version = @LIBOMP_OMP_YEAR_MONTH@93 integer (kind=omp_integer_kind), parameter, public :: kmp_version_major = @LIBOMP_VERSION_MAJOR@94 integer (kind=omp_integer_kind), parameter, public :: kmp_version_minor = @LIBOMP_VERSION_MINOR@95 integer (kind=omp_integer_kind), parameter, public :: kmp_version_build = @LIBOMP_VERSION_BUILD@96 character(*) kmp_build_date97 parameter( kmp_build_date = '@LIBOMP_BUILD_DATE@' )98 99 integer(kind=omp_sched_kind), parameter, public :: omp_sched_static = 1100 integer(kind=omp_sched_kind), parameter, public :: omp_sched_dynamic = 2101 integer(kind=omp_sched_kind), parameter, public :: omp_sched_guided = 3102 integer(kind=omp_sched_kind), parameter, public :: omp_sched_auto = 4103 integer(kind=omp_sched_kind), parameter, public :: omp_sched_monotonic = int(Z'80000000', kind=omp_sched_kind)104 105 integer (kind=omp_proc_bind_kind), parameter, public :: omp_proc_bind_false = 0106 integer (kind=omp_proc_bind_kind), parameter, public :: omp_proc_bind_true = 1107 integer (kind=omp_proc_bind_kind), parameter, public :: omp_proc_bind_master = 2108 integer (kind=omp_proc_bind_kind), parameter, public :: omp_proc_bind_close = 3109 integer (kind=omp_proc_bind_kind), parameter, public :: omp_proc_bind_spread = 4110 111 integer (kind=kmp_cancel_kind), parameter, public :: kmp_cancel_parallel = 1112 integer (kind=kmp_cancel_kind), parameter, public :: kmp_cancel_loop = 2113 integer (kind=kmp_cancel_kind), parameter, public :: kmp_cancel_sections = 3114 integer (kind=kmp_cancel_kind), parameter, public :: kmp_cancel_taskgroup = 4115 116 integer (kind=omp_sync_hint_kind), parameter, public :: omp_sync_hint_none = 0117 integer (kind=omp_sync_hint_kind), parameter, public :: omp_sync_hint_uncontended = 1118 integer (kind=omp_sync_hint_kind), parameter, public :: omp_sync_hint_contended = 2119 integer (kind=omp_sync_hint_kind), parameter, public :: omp_sync_hint_nonspeculative = 4120 integer (kind=omp_sync_hint_kind), parameter, public :: omp_sync_hint_speculative = 8121 integer (kind=omp_lock_hint_kind), parameter, public :: omp_lock_hint_none = omp_sync_hint_none122 integer (kind=omp_lock_hint_kind), parameter, public :: omp_lock_hint_uncontended = omp_sync_hint_uncontended123 integer (kind=omp_lock_hint_kind), parameter, public :: omp_lock_hint_contended = omp_sync_hint_contended124 integer (kind=omp_lock_hint_kind), parameter, public :: omp_lock_hint_nonspeculative = omp_sync_hint_nonspeculative125 integer (kind=omp_lock_hint_kind), parameter, public :: omp_lock_hint_speculative = omp_sync_hint_speculative126 integer (kind=omp_lock_hint_kind), parameter, public :: kmp_lock_hint_hle = 65536127 integer (kind=omp_lock_hint_kind), parameter, public :: kmp_lock_hint_rtm = 131072128 integer (kind=omp_lock_hint_kind), parameter, public :: kmp_lock_hint_adaptive = 262144129 130 integer (kind=omp_control_tool_kind), parameter, public :: omp_control_tool_start = 1131 integer (kind=omp_control_tool_kind), parameter, public :: omp_control_tool_pause = 2132 integer (kind=omp_control_tool_kind), parameter, public :: omp_control_tool_flush = 3133 integer (kind=omp_control_tool_kind), parameter, public :: omp_control_tool_end = 4134 135 integer (kind=omp_control_tool_result_kind), parameter, public :: omp_control_tool_notool = -2136 integer (kind=omp_control_tool_result_kind), parameter, public :: omp_control_tool_nocallback = -1137 integer (kind=omp_control_tool_result_kind), parameter, public :: omp_control_tool_success = 0138 integer (kind=omp_control_tool_result_kind), parameter, public :: omp_control_tool_ignored = 1139 140 integer (kind=omp_alloctrait_key_kind), parameter, public :: omp_atk_sync_hint = 1141 integer (kind=omp_alloctrait_key_kind), parameter, public :: omp_atk_alignment = 2142 integer (kind=omp_alloctrait_key_kind), parameter, public :: omp_atk_access = 3143 integer (kind=omp_alloctrait_key_kind), parameter, public :: omp_atk_pool_size = 4144 integer (kind=omp_alloctrait_key_kind), parameter, public :: omp_atk_fallback = 5145 integer (kind=omp_alloctrait_key_kind), parameter, public :: omp_atk_fb_data = 6146 integer (kind=omp_alloctrait_key_kind), parameter, public :: omp_atk_pinned = 7147 integer (kind=omp_alloctrait_key_kind), parameter, public :: omp_atk_partition = 8148 integer (kind=omp_alloctrait_key_kind), parameter, public :: omp_atk_pin_device = 9149 integer (kind=omp_alloctrait_key_kind), parameter, public :: omp_atk_preferred_device = 10150 integer (kind=omp_alloctrait_key_kind), parameter, public :: omp_atk_device_access = 11151 integer (kind=omp_alloctrait_key_kind), parameter, public :: omp_atk_target_access = 12152 integer (kind=omp_alloctrait_key_kind), parameter, public :: omp_atk_atomic_scope = 13153 integer (kind=omp_alloctrait_key_kind), parameter, public :: omp_atk_part_size = 14154 155 integer (kind=omp_alloctrait_val_kind), parameter, public :: omp_atv_default = -1156 integer (kind=omp_alloctrait_val_kind), parameter, public :: omp_atv_false = 0157 integer (kind=omp_alloctrait_val_kind), parameter, public :: omp_atv_true = 1158 integer (kind=omp_alloctrait_val_kind), parameter, public :: omp_atv_contended = 3159 integer (kind=omp_alloctrait_val_kind), parameter, public :: omp_atv_uncontended = 4160 integer (kind=omp_alloctrait_val_kind), parameter, public :: omp_atv_serialized = 5161 integer (kind=omp_alloctrait_val_kind), parameter, public :: omp_atv_sequential = omp_atv_serialized162 integer (kind=omp_alloctrait_val_kind), parameter, public :: omp_atv_private = 6163 integer (kind=omp_alloctrait_val_kind), parameter, public :: omp_atv_device = 7164 integer (kind=omp_alloctrait_val_kind), parameter, public :: omp_atv_thread = 8165 integer (kind=omp_alloctrait_val_kind), parameter, public :: omp_atv_pteam = 9166 integer (kind=omp_alloctrait_val_kind), parameter, public :: omp_atv_cgroup = 10167 integer (kind=omp_alloctrait_val_kind), parameter, public :: omp_atv_default_mem_fb = 11168 integer (kind=omp_alloctrait_val_kind), parameter, public :: omp_atv_null_fb = 12169 integer (kind=omp_alloctrait_val_kind), parameter, public :: omp_atv_abort_fb = 13170 integer (kind=omp_alloctrait_val_kind), parameter, public :: omp_atv_allocator_fb = 14171 integer (kind=omp_alloctrait_val_kind), parameter, public :: omp_atv_environment = 15172 integer (kind=omp_alloctrait_val_kind), parameter, public :: omp_atv_nearest = 16173 integer (kind=omp_alloctrait_val_kind), parameter, public :: omp_atv_blocked = 17174 integer (kind=omp_alloctrait_val_kind), parameter, public :: omp_atv_interleaved = 18175 integer (kind=omp_alloctrait_val_kind), parameter, public :: omp_atv_all = 19176 integer (kind=omp_alloctrait_val_kind), parameter, public :: omp_atv_single = 20177 integer (kind=omp_alloctrait_val_kind), parameter, public :: omp_atv_multiple = 21178 integer (kind=omp_alloctrait_val_kind), parameter, public :: omp_atv_memspace = 22179 180 integer (kind=omp_allocator_handle_kind), parameter, public :: omp_null_allocator = 0181 integer (kind=omp_allocator_handle_kind), parameter, public :: omp_default_mem_alloc = 1182 integer (kind=omp_allocator_handle_kind), parameter, public :: omp_large_cap_mem_alloc = 2183 integer (kind=omp_allocator_handle_kind), parameter, public :: omp_const_mem_alloc = 3184 integer (kind=omp_allocator_handle_kind), parameter, public :: omp_high_bw_mem_alloc = 4185 integer (kind=omp_allocator_handle_kind), parameter, public :: omp_low_lat_mem_alloc = 5186 integer (kind=omp_allocator_handle_kind), parameter, public :: omp_cgroup_mem_alloc = 6187 integer (kind=omp_allocator_handle_kind), parameter, public :: omp_pteam_mem_alloc = 7188 integer (kind=omp_allocator_handle_kind), parameter, public :: omp_thread_mem_alloc = 8189 integer (kind=omp_allocator_handle_kind), parameter, public :: llvm_omp_target_host_mem_alloc = 100190 integer (kind=omp_allocator_handle_kind), parameter, public :: llvm_omp_target_shared_mem_alloc = 101191 integer (kind=omp_allocator_handle_kind), parameter, public :: llvm_omp_target_device_mem_alloc = 102192 193 integer (kind=omp_memspace_handle_kind), parameter, public :: omp_null_mem_space = 0194 integer (kind=omp_memspace_handle_kind), parameter, public :: omp_default_mem_space = 99195 integer (kind=omp_memspace_handle_kind), parameter, public :: omp_large_cap_mem_space = 1196 integer (kind=omp_memspace_handle_kind), parameter, public :: omp_const_mem_space = 2197 integer (kind=omp_memspace_handle_kind), parameter, public :: omp_high_bw_mem_space = 3198 integer (kind=omp_memspace_handle_kind), parameter, public :: omp_low_lat_mem_space = 4199 integer (kind=omp_memspace_handle_kind), parameter, public :: llvm_omp_target_host_mem_space = 100200 integer (kind=omp_memspace_handle_kind), parameter, public :: llvm_omp_target_shared_mem_space = 101201 integer (kind=omp_memspace_handle_kind), parameter, public :: llvm_omp_target_device_mem_space = 102202 203 integer (kind=omp_pause_resource_kind), parameter, public :: omp_pause_resume = 0204 integer (kind=omp_pause_resource_kind), parameter, public :: omp_pause_soft = 1205 integer (kind=omp_pause_resource_kind), parameter, public :: omp_pause_hard = 2206 integer (kind=omp_pause_resource_kind), parameter, public :: omp_pause_stop_tool = 3207 208 integer (kind=omp_interop_fr_kind), parameter, public :: omp_ifr_cuda = 1209 integer (kind=omp_interop_fr_kind), parameter, public :: omp_ifr_cuda_driver = 2210 integer (kind=omp_interop_fr_kind), parameter, public :: omp_ifr_opencl = 3211 integer (kind=omp_interop_fr_kind), parameter, public :: omp_ifr_sycl = 4212 integer (kind=omp_interop_fr_kind), parameter, public :: omp_ifr_hip = 5213 integer (kind=omp_interop_fr_kind), parameter, public :: omp_ifr_level_zero = 6214 integer (kind=omp_interop_fr_kind), parameter, public :: omp_ifr_last = 7215 216 integer (kind=omp_interop_kind), parameter, public :: omp_interop_none = 0217 218 interface219 220! ***221! *** omp_* entry points222! ***223 224 subroutine omp_set_num_threads(num_threads) bind(c)225 use omp_lib_kinds226 integer (kind=omp_integer_kind), value :: num_threads227 end subroutine omp_set_num_threads228 229 subroutine omp_set_dynamic(dynamic_threads) bind(c)230 use omp_lib_kinds231 logical (kind=omp_logical_kind), value :: dynamic_threads232 end subroutine omp_set_dynamic233 234 subroutine omp_set_nested(nested) bind(c)235 use omp_lib_kinds236 logical (kind=omp_logical_kind), value :: nested237 end subroutine omp_set_nested238 239 function omp_get_num_threads() bind(c)240 use omp_lib_kinds241 integer (kind=omp_integer_kind) omp_get_num_threads242 end function omp_get_num_threads243 244 function omp_get_max_threads() bind(c)245 use omp_lib_kinds246 integer (kind=omp_integer_kind) omp_get_max_threads247 end function omp_get_max_threads248 249 function omp_get_thread_num() bind(c)250 use omp_lib_kinds251 integer (kind=omp_integer_kind) omp_get_thread_num252 end function omp_get_thread_num253 254 function omp_get_num_procs() bind(c)255 use omp_lib_kinds256 integer (kind=omp_integer_kind) omp_get_num_procs257 end function omp_get_num_procs258 259 function omp_in_parallel() bind(c)260 use omp_lib_kinds261 logical (kind=omp_logical_kind) omp_in_parallel262 end function omp_in_parallel263 264 function omp_in_final() bind(c)265 use omp_lib_kinds266 logical (kind=omp_logical_kind) omp_in_final267 end function omp_in_final268 269 function omp_get_dynamic() bind(c)270 use omp_lib_kinds271 logical (kind=omp_logical_kind) omp_get_dynamic272 end function omp_get_dynamic273 274 function omp_get_nested() bind(c)275 use omp_lib_kinds276 logical (kind=omp_logical_kind) omp_get_nested277 end function omp_get_nested278 279 function omp_get_thread_limit() bind(c)280 use omp_lib_kinds281 integer (kind=omp_integer_kind) omp_get_thread_limit282 end function omp_get_thread_limit283 284 subroutine omp_set_max_active_levels(max_levels) bind(c)285 use omp_lib_kinds286 integer (kind=omp_integer_kind), value :: max_levels287 end subroutine omp_set_max_active_levels288 289 function omp_get_max_active_levels() bind(c)290 use omp_lib_kinds291 integer (kind=omp_integer_kind) omp_get_max_active_levels292 end function omp_get_max_active_levels293 294 function omp_get_level() bind(c)295 use omp_lib_kinds296 integer (kind=omp_integer_kind) omp_get_level297 end function omp_get_level298 299 function omp_get_active_level() bind(c)300 use omp_lib_kinds301 integer (kind=omp_integer_kind) omp_get_active_level302 end function omp_get_active_level303 304 function omp_get_ancestor_thread_num(level) bind(c)305 use omp_lib_kinds306 integer (kind=omp_integer_kind) omp_get_ancestor_thread_num307 integer (kind=omp_integer_kind), value :: level308 end function omp_get_ancestor_thread_num309 310 function omp_get_team_size(level) bind(c)311 use omp_lib_kinds312 integer (kind=omp_integer_kind) omp_get_team_size313 integer (kind=omp_integer_kind), value :: level314 end function omp_get_team_size315 316 subroutine omp_set_schedule(kind, chunk_size) bind(c)317 use omp_lib_kinds318 integer (kind=omp_sched_kind), value :: kind319 integer (kind=omp_integer_kind), value :: chunk_size320 end subroutine omp_set_schedule321 322 subroutine omp_get_schedule(kind, chunk_size) bind(c)323 use omp_lib_kinds324 integer (kind=omp_sched_kind) kind325 integer (kind=omp_integer_kind) chunk_size326 end subroutine omp_get_schedule327 328 function omp_get_proc_bind() bind(c)329 use omp_lib_kinds330 integer (kind=omp_proc_bind_kind) omp_get_proc_bind331 end function omp_get_proc_bind332 333 function omp_get_num_places() bind(c)334 use omp_lib_kinds335 integer (kind=omp_integer_kind) omp_get_num_places336 end function omp_get_num_places337 338 function omp_get_place_num_procs(place_num) bind(c)339 use omp_lib_kinds340 integer (kind=omp_integer_kind), value :: place_num341 integer (kind=omp_integer_kind) omp_get_place_num_procs342 end function omp_get_place_num_procs343 344 subroutine omp_get_place_proc_ids(place_num, ids) bind(c)345 use omp_lib_kinds346 integer (kind=omp_integer_kind), value :: place_num347 integer (kind=omp_integer_kind) ids(*)348 end subroutine omp_get_place_proc_ids349 350 function omp_get_place_num() bind(c)351 use omp_lib_kinds352 integer (kind=omp_integer_kind) omp_get_place_num353 end function omp_get_place_num354 355 function omp_get_partition_num_places() bind(c)356 use omp_lib_kinds357 integer (kind=omp_integer_kind) omp_get_partition_num_places358 end function omp_get_partition_num_places359 360 subroutine omp_get_partition_place_nums(place_nums) bind(c)361 use omp_lib_kinds362 integer (kind=omp_integer_kind) place_nums(*)363 end subroutine omp_get_partition_place_nums364 365 function omp_get_wtime() bind(c)366 use omp_lib_kinds367 real (kind=kmp_double_kind) omp_get_wtime368 end function omp_get_wtime369 370 function omp_get_wtick() bind(c)371 use omp_lib_kinds372 real (kind=kmp_double_kind) omp_get_wtick373 end function omp_get_wtick374 375 function omp_get_default_device() bind(c)376 use omp_lib_kinds377 integer (kind=omp_integer_kind) omp_get_default_device378 end function omp_get_default_device379 380 subroutine omp_set_default_device(device_num) bind(c)381 use omp_lib_kinds382 integer (kind=omp_integer_kind), value :: device_num383 end subroutine omp_set_default_device384 385 function omp_get_num_devices() bind(c)386 use omp_lib_kinds387 integer (kind=omp_integer_kind) omp_get_num_devices388 end function omp_get_num_devices389 390 function omp_get_num_teams() bind(c)391 use omp_lib_kinds392 integer (kind=omp_integer_kind) omp_get_num_teams393 end function omp_get_num_teams394 395 function omp_get_team_num() bind(c)396 use omp_lib_kinds397 integer (kind=omp_integer_kind) omp_get_team_num398 end function omp_get_team_num399 400 function omp_get_cancellation() bind(c)401 use omp_lib_kinds402 logical (kind=omp_logical_kind) omp_get_cancellation403 end function omp_get_cancellation404 405 function omp_is_initial_device() bind(c)406 use omp_lib_kinds407 logical (kind=omp_logical_kind) omp_is_initial_device408 end function omp_is_initial_device409 410 function omp_get_initial_device() bind(c)411 use omp_lib_kinds412 integer (kind=omp_integer_kind) omp_get_initial_device413 end function omp_get_initial_device414 415 function omp_get_device_num() bind(c)416 use omp_lib_kinds417 integer (kind=omp_integer_kind) omp_get_device_num418 end function omp_get_device_num419 420 function omp_pause_resource(kind, device_num) bind(c)421 use omp_lib_kinds422 integer (kind=omp_pause_resource_kind), value :: kind423 integer (kind=omp_integer_kind), value :: device_num424 integer (kind=omp_integer_kind) omp_pause_resource425 end function omp_pause_resource426 427 function omp_pause_resource_all(kind) bind(c)428 use omp_lib_kinds429 integer (kind=omp_pause_resource_kind), value :: kind430 integer (kind=omp_integer_kind) omp_pause_resource_all431 end function omp_pause_resource_all432 433 function omp_get_supported_active_levels() bind(c)434 use omp_lib_kinds435 integer (kind=omp_integer_kind) omp_get_supported_active_levels436 end function omp_get_supported_active_levels437 438 subroutine omp_fulfill_event(event) bind(c)439 use omp_lib_kinds440 integer (kind=omp_event_handle_kind), value :: event441 end subroutine omp_fulfill_event442 443 subroutine omp_init_lock(svar) bind(c)444#ifdef __INTEL_COMPILER445!DIR$ IF(__INTEL_COMPILER.GE.1400)446!DIR$ attributes known_intrinsic :: omp_init_lock447!DIR$ ENDIF448#endif449 use omp_lib_kinds450 integer (kind=omp_lock_kind) svar451 end subroutine omp_init_lock452 453 subroutine omp_destroy_lock(svar) bind(c)454#ifdef __INTEL_COMPILER455!DIR$ IF(__INTEL_COMPILER.GE.1400)456!DIR$ attributes known_intrinsic :: omp_destroy_lock457!DIR$ ENDIF458#endif459 use omp_lib_kinds460 integer (kind=omp_lock_kind) svar461 end subroutine omp_destroy_lock462 463 subroutine omp_set_lock(svar) bind(c)464#ifdef __INTEL_COMPILER465!DIR$ IF(__INTEL_COMPILER.GE.1400)466!DIR$ attributes known_intrinsic :: omp_set_lock467!DIR$ ENDIF468#endif469 use omp_lib_kinds470 integer (kind=omp_lock_kind) svar471 end subroutine omp_set_lock472 473 subroutine omp_unset_lock(svar) bind(c)474#ifdef __INTEL_COMPILER475!DIR$ IF(__INTEL_COMPILER.GE.1400)476!DIR$ attributes known_intrinsic :: omp_unset_lock477!DIR$ ENDIF478#endif479 use omp_lib_kinds480 integer (kind=omp_lock_kind) svar481 end subroutine omp_unset_lock482 483 function omp_test_lock(svar) bind(c)484#ifdef __INTEL_COMPILER485!DIR$ IF(__INTEL_COMPILER.GE.1400)486!DIR$ attributes known_intrinsic :: omp_test_lock487!DIR$ ENDIF488#endif489 use omp_lib_kinds490 logical (kind=omp_logical_kind) omp_test_lock491 integer (kind=omp_lock_kind) svar492 end function omp_test_lock493 494 subroutine omp_init_nest_lock(nvar) bind(c)495#ifdef __INTEL_COMPILER496!DIR$ IF(__INTEL_COMPILER.GE.1400)497!DIR$ attributes known_intrinsic :: omp_init_nest_lock498!DIR$ ENDIF499#endif500 use omp_lib_kinds501 integer (kind=omp_nest_lock_kind) nvar502 end subroutine omp_init_nest_lock503 504 subroutine omp_destroy_nest_lock(nvar) bind(c)505#ifdef __INTEL_COMPILER506!DIR$ IF(__INTEL_COMPILER.GE.1400)507!DIR$ attributes known_intrinsic :: omp_destroy_nest_lock508!DIR$ ENDIF509#endif510 use omp_lib_kinds511 integer (kind=omp_nest_lock_kind) nvar512 end subroutine omp_destroy_nest_lock513 514 subroutine omp_set_nest_lock(nvar) bind(c)515#ifdef __INTEL_COMPILER516!DIR$ IF(__INTEL_COMPILER.GE.1400)517!DIR$ attributes known_intrinsic :: omp_set_nest_lock518!DIR$ ENDIF519#endif520 use omp_lib_kinds521 integer (kind=omp_nest_lock_kind) nvar522 end subroutine omp_set_nest_lock523 524 subroutine omp_unset_nest_lock(nvar) bind(c)525#ifdef __INTEL_COMPILER526!DIR$ IF(__INTEL_COMPILER.GE.1400)527!DIR$ attributes known_intrinsic :: omp_unset_nest_lock528!DIR$ ENDIF529#endif530 use omp_lib_kinds531 integer (kind=omp_nest_lock_kind) nvar532 end subroutine omp_unset_nest_lock533 534 function omp_test_nest_lock(nvar) bind(c)535#ifdef __INTEL_COMPILER536!DIR$ IF(__INTEL_COMPILER.GE.1400)537!DIR$ attributes known_intrinsic :: omp_test_nest_lock538!DIR$ ENDIF539#endif540 use omp_lib_kinds541 integer (kind=omp_integer_kind) omp_test_nest_lock542 integer (kind=omp_nest_lock_kind) nvar543 end function omp_test_nest_lock544 545 function omp_get_max_task_priority() bind(c)546 use omp_lib_kinds547 integer (kind=omp_integer_kind) omp_get_max_task_priority548 end function omp_get_max_task_priority549 550 subroutine omp_init_lock_with_hint(svar, hint) bind(c)551 use omp_lib_kinds552 integer (kind=omp_lock_kind) svar553 integer (kind=omp_lock_hint_kind), value :: hint554 end subroutine omp_init_lock_with_hint555 556 subroutine omp_init_nest_lock_with_hint(nvar, hint) bind(c)557 use omp_lib_kinds558 integer (kind=omp_nest_lock_kind) nvar559 integer (kind=omp_lock_hint_kind), value :: hint560 end subroutine omp_init_nest_lock_with_hint561 562 function omp_control_tool(command, modifier, arg) bind(c)563 use omp_lib_kinds564 integer (kind=omp_integer_kind) omp_control_tool565 integer (kind=omp_control_tool_kind), value :: command566 integer (kind=omp_control_tool_kind), value :: modifier567 integer (kind=kmp_pointer_kind), optional :: arg568 end function omp_control_tool569 570 function omp_init_allocator(memspace, ntraits, traits)571 use omp_lib_kinds572 integer (kind=omp_allocator_handle_kind) omp_init_allocator573 integer (kind=omp_memspace_handle_kind) :: memspace574 integer (kind=omp_integer_kind) :: ntraits575 type(omp_alloctrait), intent(in) :: traits(*)576 end function omp_init_allocator577 578 subroutine omp_destroy_allocator(allocator) bind(c)579 use omp_lib_kinds580 integer (kind=omp_allocator_handle_kind), value :: allocator581 end subroutine omp_destroy_allocator582 583 subroutine omp_set_default_allocator(allocator) bind(c)584 use omp_lib_kinds585 integer (kind=omp_allocator_handle_kind), value :: allocator586 end subroutine omp_set_default_allocator587 588 function omp_get_default_allocator() bind(c)589 use omp_lib_kinds590 integer (kind=omp_allocator_handle_kind) omp_get_default_allocator591 end function omp_get_default_allocator592 593 subroutine omp_set_affinity_format(format)594 character (len=*) :: format595 end subroutine omp_set_affinity_format596 597 function omp_get_affinity_format(buffer)598 use omp_lib_kinds599 character (len=*) :: buffer600 integer (kind=kmp_size_t_kind) :: omp_get_affinity_format601 end function omp_get_affinity_format602 603 subroutine omp_display_affinity(format)604 character (len=*) :: format605 end subroutine omp_display_affinity606 607 function omp_capture_affinity(buffer, format)608 use omp_lib_kinds609 character (len=*) :: format610 character (len=*) :: buffer611 integer (kind=kmp_size_t_kind) :: omp_capture_affinity612 end function omp_capture_affinity613 614 subroutine omp_set_num_teams(num_teams) bind(c)615 use omp_lib_kinds616 integer (kind=omp_integer_kind), value :: num_teams617 end subroutine omp_set_num_teams618 619 function omp_get_max_teams() bind(c)620 use omp_lib_kinds621 integer (kind=omp_integer_kind) omp_get_max_teams622 end function omp_get_max_teams623 624 subroutine omp_set_teams_thread_limit(thread_limit) bind(c)625 use omp_lib_kinds626 integer (kind=omp_integer_kind), value :: thread_limit627 end subroutine omp_set_teams_thread_limit628 629 function omp_get_teams_thread_limit() bind(c)630 use omp_lib_kinds631 integer (kind=omp_integer_kind) omp_get_teams_thread_limit632 end function omp_get_teams_thread_limit633 634 subroutine omp_display_env(verbose) bind(c)635 use omp_lib_kinds636 logical (kind=omp_logical_kind), value :: verbose637 end subroutine omp_display_env638 639 function omp_target_alloc(size, device_num) bind(c)640 use, intrinsic :: iso_c_binding, only: c_ptr, c_size_t, c_int641 type(c_ptr) omp_target_alloc642 integer(c_size_t), value :: size643 integer(c_int), value :: device_num644 end function omp_target_alloc645 646 subroutine omp_target_free(device_ptr, device_num) bind(c)647 use, intrinsic :: iso_c_binding, only: c_ptr, c_int648 type(c_ptr), value :: device_ptr649 integer(c_int), value :: device_num650 end subroutine omp_target_free651 652 function omp_target_is_present(ptr, device_num) bind(c)653 use, intrinsic :: iso_c_binding, only: c_ptr, c_int654 integer(c_int) omp_target_is_present655 type(c_ptr), value :: ptr656 integer(c_int), value :: device_num657 end function omp_target_is_present658 659 function omp_target_memcpy(dst, src, length, dst_offset, src_offset, &660 dst_device_num, src_device_num) bind(c)661 use, intrinsic :: iso_c_binding, only: c_ptr, c_size_t, c_int662 integer(c_int) omp_target_memcpy663 type(c_ptr), value :: dst, src664 integer(c_size_t), value :: length, dst_offset, src_offset665 integer(c_int), value :: dst_device_num, src_device_num666 end function omp_target_memcpy667 668 function omp_target_memcpy_rect(dst, src, element_size, num_dims, &669 volume, dst_offsets, src_offsets, dst_dimensions, &670 src_dimensions, dst_device_num, src_device_num) bind(c)671 use, intrinsic :: iso_c_binding, only: c_ptr, c_size_t, c_int672 integer(c_int) omp_target_memcpy_rect673 type(c_ptr), value :: dst, src674 integer(c_size_t), value :: element_size675 integer(c_int), value :: num_dims, dst_device_num, src_device_num676 integer(c_size_t), intent(in) :: volume(*), dst_offsets(*), &677 src_offsets(*), dst_dimensions(*), src_dimensions(*)678 end function omp_target_memcpy_rect679 680 function omp_target_memcpy_async(dst, src, length, dst_offset, &681 src_offset, dst_device_num, src_device_num, depobj_count, &682 depobj_list) bind(c)683 use omp_lib_kinds684 use, intrinsic :: iso_c_binding, only: c_ptr, c_size_t, c_int685 integer(c_int) omp_target_memcpy_async686 type(c_ptr), value :: dst, src687 integer(c_size_t), value :: length, dst_offset, src_offset688 integer(c_int), value :: dst_device_num, src_device_num, &689 depobj_count690 integer(omp_depend_kind), optional :: depobj_list(*)691 end function omp_target_memcpy_async692 693 function omp_target_memcpy_rect_async(dst, src, element_size, &694 num_dims, volume, dst_offsets, src_offsets, dst_dimensions, &695 src_dimensions, dst_device_num, src_device_num, depobj_count, &696 depobj_list) bind(c)697 use omp_lib_kinds698 use, intrinsic :: iso_c_binding, only: c_ptr, c_size_t, c_int699 integer(c_int) omp_target_memcpy_rect_async700 type(c_ptr), value :: dst, src701 integer(c_size_t), value :: element_size702 integer(c_int), value :: num_dims, dst_device_num, src_device_num, &703 depobj_count704 integer(c_size_t), intent(in) :: volume(*), dst_offsets(*), &705 src_offsets(*), dst_dimensions(*), src_dimensions(*)706 integer (omp_depend_kind), optional :: depobj_list(*)707 end function omp_target_memcpy_rect_async708 709 function omp_target_memset(ptr, val, count, device_num) bind(c)710 use, intrinsic :: iso_c_binding, only : c_ptr, c_int, c_size_t711 type(c_ptr) :: omp_target_memset712 type(c_ptr), value :: ptr713 integer(c_int), value :: val714 integer(c_size_t), value :: count715 integer(c_int), value :: device_num716 end function717 718 function omp_target_memset_async(ptr, val, count, device_num, &719 depobj_count, depobj_list) bind(c)720 use omp_lib_kinds721 use, intrinsic :: iso_c_binding, only : c_ptr, c_int, c_size_t722 type(c_ptr) :: omp_target_memset_async723 type(c_ptr), value :: ptr724 integer(c_int), value :: val725 integer(c_size_t), value :: count726 integer(c_int), value :: device_num727 integer(c_int), value :: depobj_count728 integer(omp_depend_kind), optional :: depobj_list(*)729 end function730 731 function omp_target_associate_ptr(host_ptr, device_ptr, size, &732 device_offset, device_num) bind(c)733 use, intrinsic :: iso_c_binding, only: c_ptr, c_size_t, c_int734 integer(c_int) omp_target_associate_ptr735 type(c_ptr), value :: host_ptr, device_ptr736 integer(c_size_t), value :: size, device_offset737 integer(c_int), value :: device_num738 end function omp_target_associate_ptr739 740 function omp_get_mapped_ptr(ptr, device_num) bind(c)741 use, intrinsic :: iso_c_binding, only: c_ptr, c_int742 type(c_ptr) omp_get_mapped_ptr743 type(c_ptr), value :: ptr744 integer(c_int), value :: device_num745 end function omp_get_mapped_ptr746 747 function omp_target_disassociate_ptr(ptr, device_num) bind(c)748 use, intrinsic :: iso_c_binding, only: c_ptr, c_int749 integer(c_int) omp_target_disassociate_ptr750 type(c_ptr), value :: ptr751 integer(c_int), value :: device_num752 end function omp_target_disassociate_ptr753 754 function omp_target_is_accessible(ptr, size, device_num) bind(c)755 use, intrinsic :: iso_c_binding, only : c_ptr, c_size_t, c_int756 integer(c_int) omp_target_is_accessible757 type(c_ptr), value :: ptr758 integer(c_size_t), value :: size759 integer(c_int), value :: device_num760 end function omp_target_is_accessible761 762 function omp_alloc(size, allocator) bind(c)763 use omp_lib_kinds764 use, intrinsic :: iso_c_binding, only : c_ptr, c_size_t765 type(c_ptr) omp_alloc766 integer(c_size_t), value :: size767 integer(omp_allocator_handle_kind), value :: allocator768 end function omp_alloc769 770 function omp_aligned_alloc(alignment, size, allocator) bind(c)771 use omp_lib_kinds772 use, intrinsic :: iso_c_binding, only : c_ptr, c_size_t773 type(c_ptr) omp_aligned_alloc774 integer(c_size_t), value :: alignment, size775 integer(omp_allocator_handle_kind), value :: allocator776 end function omp_aligned_alloc777 778 function omp_calloc(nmemb, size, allocator) bind(c)779 use omp_lib_kinds780 use, intrinsic :: iso_c_binding, only : c_ptr, c_size_t781 type(c_ptr) omp_calloc782 integer(c_size_t), value :: nmemb, size783 integer(omp_allocator_handle_kind), value :: allocator784 end function omp_calloc785 786 function omp_aligned_calloc(alignment, nmemb, size, allocator) bind(c)787 use omp_lib_kinds788 use, intrinsic :: iso_c_binding, only : c_ptr, c_size_t789 type(c_ptr) omp_aligned_calloc790 integer(c_size_t), value :: alignment, nmemb, size791 integer(omp_allocator_handle_kind), value :: allocator792 end function omp_aligned_calloc793 794 function omp_realloc(ptr, size, allocator, free_allocator) bind(c)795 use omp_lib_kinds796 use, intrinsic :: iso_c_binding, only : c_ptr, c_size_t797 type(c_ptr) omp_realloc798 type(c_ptr), value :: ptr799 integer(c_size_t), value :: size800 integer(omp_allocator_handle_kind), value :: allocator801 integer(omp_allocator_handle_kind), value :: free_allocator802 end function omp_realloc803 804 subroutine omp_free(ptr, allocator) bind(c)805 use omp_lib_kinds806 use, intrinsic :: iso_c_binding, only : c_ptr807 type(c_ptr), value :: ptr808 integer(omp_allocator_handle_kind), value :: allocator809 end subroutine omp_free810 811 function omp_in_explicit_task() bind(c)812 use omp_lib_kinds813 logical (kind=omp_logical_kind) omp_in_explicit_task814 end function omp_in_explicit_task815 816 function omp_get_devices_memspace(ndevs, devs, memspace)817 use omp_lib_kinds818 integer(omp_memspace_handle_kind) :: omp_get_devices_memspace819 integer, intent(in) :: ndevs820 integer, intent(in) :: devs(*)821 integer(omp_memspace_handle_kind), intent(in) :: memspace822 end function omp_get_devices_memspace823 824 function omp_get_device_memspace(dev, memspace)825 use omp_lib_kinds826 integer(omp_memspace_handle_kind) :: omp_get_device_memspace827 integer, intent(in) :: dev828 integer(omp_memspace_handle_kind), intent(in) :: memspace829 end function omp_get_device_memspace830 831 function omp_get_devices_and_host_memspace(ndevs, devs, memspace)832 use omp_lib_kinds833 integer(omp_memspace_handle_kind) :: &834 omp_get_devices_and_host_memspace835 integer, intent(in) :: ndevs836 integer, intent(in) :: devs(*)837 integer(omp_memspace_handle_kind), intent(in) :: memspace838 end function omp_get_devices_and_host_memspace839 840 function omp_get_device_and_host_memspace(dev, memspace)841 use omp_lib_kinds842 integer(omp_memspace_handle_kind) :: &843 omp_get_device_and_host_memspace844 integer, intent(in) :: dev845 integer(omp_memspace_handle_kind), intent(in) :: memspace846 end function omp_get_device_and_host_memspace847 848 function omp_get_devices_all_memspace(memspace)849 use omp_lib_kinds850 integer(omp_memspace_handle_kind) :: omp_get_devices_all_memspace851 integer(omp_memspace_handle_kind), intent(in) :: memspace852 end function omp_get_devices_all_memspace853 854 function omp_get_devices_allocator(ndevs, devs, memspace)855 use omp_lib_kinds856 integer(omp_allocator_handle_kind) :: omp_get_devices_allocator857 integer, intent(in) :: ndevs858 integer, intent(in) :: devs(*)859 integer(omp_memspace_handle_kind), intent(in) :: memspace860 end function omp_get_devices_allocator861 862 function omp_get_device_allocator(dev, memspace)863 use omp_lib_kinds864 integer(omp_allocator_handle_kind) :: omp_get_device_allocator865 integer, intent(in) :: dev866 integer(omp_memspace_handle_kind), intent(in) :: memspace867 end function omp_get_device_allocator868 869 function omp_get_devices_and_host_allocator(ndevs, devs, memspace)870 use omp_lib_kinds871 integer(omp_allocator_handle_kind) :: &872 omp_get_devices_and_host_allocator873 integer, intent(in) :: ndevs874 integer, intent(in) :: devs(*)875 integer(omp_memspace_handle_kind), intent(in) :: memspace876 end function omp_get_devices_and_host_allocator877 878 function omp_get_device_and_host_allocator(dev, memspace)879 use omp_lib_kinds880 integer(omp_allocator_handle_kind) :: &881 omp_get_device_and_host_allocator882 integer, intent(in) :: dev883 integer(omp_memspace_handle_kind), intent(in) :: memspace884 end function omp_get_device_and_host_allocator885 886 function omp_get_devices_all_allocator(memspace)887 use omp_lib_kinds888 integer(omp_allocator_handle_kind) :: &889 omp_get_devices_all_allocator890 integer(omp_memspace_handle_kind), intent(in) :: memspace891 end function omp_get_devices_all_allocator892 893 function omp_get_memspace_num_resources(memspace)894 use omp_lib_kinds895 integer omp_get_memspace_num_resources896 integer(omp_memspace_handle_kind), intent(in) :: memspace897 end function omp_get_memspace_num_resources898 899 function omp_get_submemspace(memspace, num_resources, resources)900 use omp_lib_kinds901 integer(omp_memspace_handle_kind) omp_get_submemspace902 integer(omp_memspace_handle_kind), intent(in) :: memspace903 integer, intent(in) :: num_resources904 integer, intent(in) :: resources(*)905 end function omp_get_submemspace906 907! ***908! *** kmp_* entry points909! ***910 911 subroutine kmp_set_stacksize(size) bind(c)912 use omp_lib_kinds913 integer (kind=omp_integer_kind), value :: size914 end subroutine kmp_set_stacksize915 916 subroutine kmp_set_stacksize_s(size) bind(c)917 use omp_lib_kinds918 integer (kind=kmp_size_t_kind), value :: size919 end subroutine kmp_set_stacksize_s920 921 subroutine kmp_set_blocktime(msec) bind(c)922 use omp_lib_kinds923 integer (kind=omp_integer_kind), value :: msec924 end subroutine kmp_set_blocktime925 926 subroutine kmp_set_library_serial() bind(c)927 end subroutine kmp_set_library_serial928 929 subroutine kmp_set_library_turnaround() bind(c)930 end subroutine kmp_set_library_turnaround931 932 subroutine kmp_set_library_throughput() bind(c)933 end subroutine kmp_set_library_throughput934 935 subroutine kmp_set_library(libnum) bind(c)936 use omp_lib_kinds937 integer (kind=omp_integer_kind), value :: libnum938 end subroutine kmp_set_library939 940 subroutine kmp_set_defaults(string)941 character (len=*) :: string942 end subroutine kmp_set_defaults943 944 function kmp_get_stacksize() bind(c)945 use omp_lib_kinds946 integer (kind=omp_integer_kind) kmp_get_stacksize947 end function kmp_get_stacksize948 949 function kmp_get_stacksize_s() bind(c)950 use omp_lib_kinds951 integer (kind=kmp_size_t_kind) kmp_get_stacksize_s952 end function kmp_get_stacksize_s953 954 function kmp_get_blocktime() bind(c)955 use omp_lib_kinds956 integer (kind=omp_integer_kind) kmp_get_blocktime957 end function kmp_get_blocktime958 959 function kmp_get_library() bind(c)960 use omp_lib_kinds961 integer (kind=omp_integer_kind) kmp_get_library962 end function kmp_get_library963 964 subroutine kmp_set_disp_num_buffers(num) bind(c)965 use omp_lib_kinds966 integer (kind=omp_integer_kind), value :: num967 end subroutine kmp_set_disp_num_buffers968 969 function kmp_set_affinity(mask) bind(c)970 use omp_lib_kinds971 integer (kind=omp_integer_kind) kmp_set_affinity972 integer (kind=kmp_affinity_mask_kind) mask973 end function kmp_set_affinity974 975 function kmp_get_affinity(mask) bind(c)976 use omp_lib_kinds977 integer (kind=omp_integer_kind) kmp_get_affinity978 integer (kind=kmp_affinity_mask_kind) mask979 end function kmp_get_affinity980 981 function kmp_get_affinity_max_proc() bind(c)982 use omp_lib_kinds983 integer (kind=omp_integer_kind) kmp_get_affinity_max_proc984 end function kmp_get_affinity_max_proc985 986 subroutine kmp_create_affinity_mask(mask) bind(c)987 use omp_lib_kinds988 integer (kind=kmp_affinity_mask_kind) mask989 end subroutine kmp_create_affinity_mask990 991 subroutine kmp_destroy_affinity_mask(mask) bind(c)992 use omp_lib_kinds993 integer (kind=kmp_affinity_mask_kind) mask994 end subroutine kmp_destroy_affinity_mask995 996 function kmp_set_affinity_mask_proc(proc, mask) bind(c)997 use omp_lib_kinds998 integer (kind=omp_integer_kind) kmp_set_affinity_mask_proc999 integer (kind=omp_integer_kind), value :: proc1000 integer (kind=kmp_affinity_mask_kind) mask1001 end function kmp_set_affinity_mask_proc1002 1003 function kmp_unset_affinity_mask_proc(proc, mask) bind(c)1004 use omp_lib_kinds1005 integer (kind=omp_integer_kind) kmp_unset_affinity_mask_proc1006 integer (kind=omp_integer_kind), value :: proc1007 integer (kind=kmp_affinity_mask_kind) mask1008 end function kmp_unset_affinity_mask_proc1009 1010 function kmp_get_affinity_mask_proc(proc, mask) bind(c)1011 use omp_lib_kinds1012 integer (kind=omp_integer_kind) kmp_get_affinity_mask_proc1013 integer (kind=omp_integer_kind), value :: proc1014 integer (kind=kmp_affinity_mask_kind) mask1015 end function kmp_get_affinity_mask_proc1016 1017 function kmp_malloc(size) bind(c)1018 use omp_lib_kinds1019 integer (kind=kmp_pointer_kind) kmp_malloc1020 integer (kind=kmp_size_t_kind), value :: size1021 end function kmp_malloc1022 1023 function kmp_aligned_malloc(size, alignment) bind(c)1024 use omp_lib_kinds1025 integer (kind=kmp_pointer_kind) kmp_aligned_malloc1026 integer (kind=kmp_size_t_kind), value :: size1027 integer (kind=kmp_size_t_kind), value :: alignment1028 end function kmp_aligned_malloc1029 1030 function kmp_calloc(nelem, elsize) bind(c)1031 use omp_lib_kinds1032 integer (kind=kmp_pointer_kind) kmp_calloc1033 integer (kind=kmp_size_t_kind), value :: nelem1034 integer (kind=kmp_size_t_kind), value :: elsize1035 end function kmp_calloc1036 1037 function kmp_realloc(ptr, size) bind(c)1038 use omp_lib_kinds1039 integer (kind=kmp_pointer_kind) kmp_realloc1040 integer (kind=kmp_pointer_kind), value :: ptr1041 integer (kind=kmp_size_t_kind), value :: size1042 end function kmp_realloc1043 1044 subroutine kmp_free(ptr) bind(c)1045 use omp_lib_kinds1046 integer (kind=kmp_pointer_kind), value :: ptr1047 end subroutine kmp_free1048 1049 subroutine kmp_set_warnings_on() bind(c)1050 end subroutine kmp_set_warnings_on1051 1052 subroutine kmp_set_warnings_off() bind(c)1053 end subroutine kmp_set_warnings_off1054 1055 function kmp_get_cancellation_status(cancelkind) bind(c)1056 use omp_lib_kinds1057 integer (kind=kmp_cancel_kind), value :: cancelkind1058 logical (kind=omp_logical_kind) kmp_get_cancellation_status1059 end function kmp_get_cancellation_status1060 1061 end interface1062 1063 ! make the above routine definitions public1064 public :: omp_set_num_threads1065 public :: omp_set_dynamic1066 public :: omp_set_nested1067 public :: omp_get_num_threads1068 public :: omp_get_max_threads1069 public :: omp_get_thread_num1070 public :: omp_get_num_procs1071 public :: omp_in_parallel1072 public :: omp_in_final1073 public :: omp_get_dynamic1074 public :: omp_get_nested1075 public :: omp_get_thread_limit1076 public :: omp_set_max_active_levels1077 public :: omp_get_max_active_levels1078 public :: omp_get_level1079 public :: omp_get_active_level1080 public :: omp_get_ancestor_thread_num1081 public :: omp_get_team_size1082 public :: omp_set_schedule1083 public :: omp_get_schedule1084 public :: omp_get_proc_bind1085 public :: omp_get_num_places1086 public :: omp_get_place_num_procs1087 public :: omp_get_place_proc_ids1088 public :: omp_get_place_num1089 public :: omp_get_partition_num_places1090 public :: omp_get_partition_place_nums1091 public :: omp_get_wtime1092 public :: omp_get_wtick1093 public :: omp_get_default_device1094 public :: omp_set_default_device1095 public :: omp_get_num_devices1096 public :: omp_get_num_teams1097 public :: omp_get_team_num1098 public :: omp_get_cancellation1099 public :: omp_is_initial_device1100 public :: omp_get_initial_device1101 public :: omp_get_device_num1102 public :: omp_pause_resource1103 public :: omp_pause_resource_all1104 public :: omp_get_supported_active_levels1105 public :: omp_fulfill_event1106 public :: omp_init_lock1107 public :: omp_destroy_lock1108 public :: omp_set_lock1109 public :: omp_unset_lock1110 public :: omp_test_lock1111 public :: omp_init_nest_lock1112 public :: omp_destroy_nest_lock1113 public :: omp_set_nest_lock1114 public :: omp_unset_nest_lock1115 public :: omp_test_nest_lock1116 public :: omp_get_max_task_priority1117 public :: omp_init_lock_with_hint1118 public :: omp_init_nest_lock_with_hint1119 public :: omp_control_tool1120 public :: omp_init_allocator1121 public :: omp_destroy_allocator1122 public :: omp_set_default_allocator1123 public :: omp_get_default_allocator1124 public :: omp_set_affinity_format1125 public :: omp_get_affinity_format1126 public :: omp_display_affinity1127 public :: omp_capture_affinity1128 public :: omp_set_num_teams1129 public :: omp_get_max_teams1130 public :: omp_set_teams_thread_limit1131 public :: omp_get_teams_thread_limit1132 public :: omp_display_env1133 public :: omp_target_alloc1134 public :: omp_target_free1135 public :: omp_target_is_present1136 public :: omp_target_memcpy1137 public :: omp_target_memcpy_rect1138 public :: omp_target_memcpy_async1139 public :: omp_target_memcpy_rect_async1140 public :: omp_target_memset1141 public :: omp_target_memset_async1142 public :: omp_target_associate_ptr1143 public :: omp_get_mapped_ptr1144 public :: omp_target_disassociate_ptr1145 public :: omp_target_is_accessible1146 public :: omp_alloc1147 public :: omp_aligned_alloc1148 public :: omp_calloc1149 public :: omp_aligned_calloc1150 public :: omp_realloc1151 public :: omp_free1152 public :: omp_in_explicit_task1153 public :: kmp_set_stacksize1154 public :: kmp_set_stacksize_s1155 public :: kmp_set_blocktime1156 public :: kmp_set_library_serial1157 public :: kmp_set_library_turnaround1158 public :: kmp_set_library_throughput1159 public :: kmp_set_library1160 public :: kmp_set_defaults1161 public :: kmp_get_stacksize1162 public :: kmp_get_stacksize_s1163 public :: kmp_get_blocktime1164 public :: kmp_get_library1165 public :: kmp_set_disp_num_buffers1166 public :: kmp_set_affinity1167 public :: kmp_get_affinity1168 public :: kmp_get_affinity_max_proc1169 public :: kmp_create_affinity_mask1170 public :: kmp_destroy_affinity_mask1171 public :: kmp_set_affinity_mask_proc1172 public :: kmp_unset_affinity_mask_proc1173 public :: kmp_get_affinity_mask_proc1174 public :: kmp_malloc1175 public :: kmp_aligned_malloc1176 public :: kmp_calloc1177 public :: kmp_realloc1178 public :: kmp_free1179 public :: kmp_set_warnings_on1180 public :: kmp_set_warnings_off1181 public :: kmp_get_cancellation_status1182 1183 end module omp_lib1184