1! include/omp_lib.f.var 2 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-exception 9!// 10!//===----------------------------------------------------------------------===// 11! 12 13!*** 14!*** Some of the directives for the following routine extend past column 72, 15!*** so process this file in 132-column mode. 16!*** 17 18!dec$ fixedformlinesize:132 19 20 module omp_lib_kinds 21 22 integer, parameter :: omp_integer_kind = 4 23 integer, parameter :: omp_logical_kind = 4 24 integer, parameter :: omp_real_kind = 4 25 integer, parameter :: omp_lock_kind = int_ptr_kind() 26 integer, parameter :: omp_nest_lock_kind = int_ptr_kind() 27 integer, parameter :: omp_sched_kind = omp_integer_kind 28 integer, parameter :: omp_proc_bind_kind = omp_integer_kind 29 integer, parameter :: kmp_pointer_kind = int_ptr_kind() 30 integer, parameter :: kmp_size_t_kind = int_ptr_kind() 31 integer, parameter :: kmp_affinity_mask_kind = int_ptr_kind() 32 integer, parameter :: kmp_cancel_kind = omp_integer_kind 33 integer, parameter :: omp_lock_hint_kind = omp_integer_kind 34 integer, parameter :: omp_control_tool_kind = omp_integer_kind 35 integer, parameter :: omp_control_tool_result_kind = omp_integer_kind 36 integer, parameter :: omp_allocator_handle_kind = int_ptr_kind() 37 integer, parameter :: omp_memspace_handle_kind = int_ptr_kind() 38 integer, parameter :: omp_alloctrait_key_kind = omp_integer_kind 39 integer, parameter :: omp_alloctrait_val_kind = int_ptr_kind() 40 41 type omp_alloctrait 42 integer(kind=omp_alloctrait_key_kind) key 43 integer(kind=omp_alloctrait_val_kind) value 44 end type omp_alloctrait 45 46 integer, parameter :: omp_pause_resource_kind = omp_integer_kind 47 integer, parameter :: omp_depend_kind = int_ptr_kind() 48 integer, parameter :: omp_event_handle_kind = int_ptr_kind() 49 50 end module omp_lib_kinds 51 52 module omp_lib 53 54 use omp_lib_kinds 55 56 integer (kind=omp_integer_kind), parameter :: kmp_version_major = @LIBOMP_VERSION_MAJOR@ 57 integer (kind=omp_integer_kind), parameter :: kmp_version_minor = @LIBOMP_VERSION_MINOR@ 58 integer (kind=omp_integer_kind), parameter :: kmp_version_build = @LIBOMP_VERSION_BUILD@ 59 character(*), parameter :: kmp_build_date = '@LIBOMP_BUILD_DATE@' 60 integer (kind=omp_integer_kind), parameter :: openmp_version = @LIBOMP_OMP_YEAR_MONTH@ 61 62 integer(kind=omp_sched_kind), parameter :: omp_sched_static = 1 63 integer(kind=omp_sched_kind), parameter :: omp_sched_dynamic = 2 64 integer(kind=omp_sched_kind), parameter :: omp_sched_guided = 3 65 integer(kind=omp_sched_kind), parameter :: omp_sched_auto = 4 66 integer(kind=omp_sched_kind), parameter :: omp_sched_monotonic = Z'80000000' 67 68 integer (kind=omp_proc_bind_kind), parameter :: omp_proc_bind_false = 0 69 integer (kind=omp_proc_bind_kind), parameter :: omp_proc_bind_true = 1 70 integer (kind=omp_proc_bind_kind), parameter :: omp_proc_bind_master = 2 71 integer (kind=omp_proc_bind_kind), parameter :: omp_proc_bind_close = 3 72 integer (kind=omp_proc_bind_kind), parameter :: omp_proc_bind_spread = 4 73 74 integer (kind=kmp_cancel_kind), parameter :: kmp_cancel_parallel = 1 75 integer (kind=kmp_cancel_kind), parameter :: kmp_cancel_loop = 2 76 integer (kind=kmp_cancel_kind), parameter :: kmp_cancel_sections = 3 77 integer (kind=kmp_cancel_kind), parameter :: kmp_cancel_taskgroup = 4 78 79 integer (kind=omp_lock_hint_kind), parameter :: omp_lock_hint_none = 0 80 integer (kind=omp_lock_hint_kind), parameter :: omp_lock_hint_uncontended = 1 81 integer (kind=omp_lock_hint_kind), parameter :: omp_lock_hint_contended = 2 82 integer (kind=omp_lock_hint_kind), parameter :: omp_lock_hint_nonspeculative = 4 83 integer (kind=omp_lock_hint_kind), parameter :: omp_lock_hint_speculative = 8 84 integer (kind=omp_lock_hint_kind), parameter :: kmp_lock_hint_hle = 65536 85 integer (kind=omp_lock_hint_kind), parameter :: kmp_lock_hint_rtm = 131072 86 integer (kind=omp_lock_hint_kind), parameter :: kmp_lock_hint_adaptive = 262144 87 88 integer (kind=omp_alloctrait_key_kind), parameter :: omp_atk_threadmodel = 1 89 integer (kind=omp_alloctrait_key_kind), parameter :: omp_atk_alignment = 2 90 integer (kind=omp_alloctrait_key_kind), parameter :: omp_atk_access = 3 91 integer (kind=omp_alloctrait_key_kind), parameter :: omp_atk_pool_size = 4 92 integer (kind=omp_alloctrait_key_kind), parameter :: omp_atk_fallback = 5 93 integer (kind=omp_alloctrait_key_kind), parameter :: omp_atk_fb_data = 6 94 integer (kind=omp_alloctrait_key_kind), parameter :: omp_atk_pinned = 7 95 integer (kind=omp_alloctrait_key_kind), parameter :: omp_atk_partition = 8 96 97 integer (kind=omp_alloctrait_val_kind), parameter :: omp_atv_false = 0 98 integer (kind=omp_alloctrait_val_kind), parameter :: omp_atv_true = 1 99 integer (kind=omp_alloctrait_val_kind), parameter :: omp_atv_default = 2 100 integer (kind=omp_alloctrait_val_kind), parameter :: omp_atv_contended = 3 101 integer (kind=omp_alloctrait_val_kind), parameter :: omp_atv_uncontended = 4 102 integer (kind=omp_alloctrait_val_kind), parameter :: omp_atv_sequential = 5 103 integer (kind=omp_alloctrait_val_kind), parameter :: omp_atv_private = 6 104 integer (kind=omp_alloctrait_val_kind), parameter :: omp_atv_all = 7 105 integer (kind=omp_alloctrait_val_kind), parameter :: omp_atv_thread = 8 106 integer (kind=omp_alloctrait_val_kind), parameter :: omp_atv_pteam = 9 107 integer (kind=omp_alloctrait_val_kind), parameter :: omp_atv_cgroup = 10 108 integer (kind=omp_alloctrait_val_kind), parameter :: omp_atv_default_mem_fb = 11 109 integer (kind=omp_alloctrait_val_kind), parameter :: omp_atv_null_fb = 12 110 integer (kind=omp_alloctrait_val_kind), parameter :: omp_atv_abort_fb = 13 111 integer (kind=omp_alloctrait_val_kind), parameter :: omp_atv_allocator_fb = 14 112 integer (kind=omp_alloctrait_val_kind), parameter :: omp_atv_environment = 15 113 integer (kind=omp_alloctrait_val_kind), parameter :: omp_atv_nearest = 16 114 integer (kind=omp_alloctrait_val_kind), parameter :: omp_atv_blocked = 17 115 integer (kind=omp_alloctrait_val_kind), parameter :: omp_atv_interleaved = 18 116 117 integer (kind=omp_allocator_handle_kind), parameter :: omp_null_allocator = 0 118 integer (kind=omp_allocator_handle_kind), parameter :: omp_default_mem_alloc = 1 119 integer (kind=omp_allocator_handle_kind), parameter :: omp_large_cap_mem_alloc = 2 120 integer (kind=omp_allocator_handle_kind), parameter :: omp_const_mem_alloc = 3 121 integer (kind=omp_allocator_handle_kind), parameter :: omp_high_bw_mem_alloc = 4 122 integer (kind=omp_allocator_handle_kind), parameter :: omp_low_lat_mem_alloc = 5 123 integer (kind=omp_allocator_handle_kind), parameter :: omp_cgroup_mem_alloc = 6 124 integer (kind=omp_allocator_handle_kind), parameter :: omp_pteam_mem_alloc = 7 125 integer (kind=omp_allocator_handle_kind), parameter :: omp_thread_mem_alloc = 8 126 127 integer (kind=omp_memspace_handle_kind), parameter :: omp_default_mem_space = 0 128 integer (kind=omp_memspace_handle_kind), parameter :: omp_large_cap_mem_space = 1 129 integer (kind=omp_memspace_handle_kind), parameter :: omp_const_mem_space = 2 130 integer (kind=omp_memspace_handle_kind), parameter :: omp_high_bw_mem_space = 3 131 integer (kind=omp_memspace_handle_kind), parameter :: omp_low_lat_mem_space = 4 132 133 integer (kind=omp_pause_resource_kind), parameter :: omp_pause_resume = 0 134 integer (kind=omp_pause_resource_kind), parameter :: omp_pause_soft = 1 135 integer (kind=omp_pause_resource_kind), parameter :: omp_pause_hard = 2 136 137 interface 138 139! *** 140! *** omp_* entry points 141! *** 142 143 subroutine omp_set_num_threads(num_threads) 144 use omp_lib_kinds 145 integer (kind=omp_integer_kind) num_threads 146 end subroutine omp_set_num_threads 147 148 subroutine omp_set_dynamic(dynamic_threads) 149 use omp_lib_kinds 150 logical (kind=omp_logical_kind) dynamic_threads 151 end subroutine omp_set_dynamic 152 153 subroutine omp_set_nested(nested) 154 use omp_lib_kinds 155 logical (kind=omp_logical_kind) nested 156 end subroutine omp_set_nested 157 158 function omp_get_num_threads() 159 use omp_lib_kinds 160 integer (kind=omp_integer_kind) omp_get_num_threads 161 end function omp_get_num_threads 162 163 function omp_get_max_threads() 164 use omp_lib_kinds 165 integer (kind=omp_integer_kind) omp_get_max_threads 166 end function omp_get_max_threads 167 168 function omp_get_thread_num() 169 use omp_lib_kinds 170 integer (kind=omp_integer_kind) omp_get_thread_num 171 end function omp_get_thread_num 172 173 function omp_get_num_procs() 174 use omp_lib_kinds 175 integer (kind=omp_integer_kind) omp_get_num_procs 176 end function omp_get_num_procs 177 178 function omp_in_parallel() 179 use omp_lib_kinds 180 logical (kind=omp_logical_kind) omp_in_parallel 181 end function omp_in_parallel 182 183 function omp_in_final() 184 use omp_lib_kinds 185 logical (kind=omp_logical_kind) omp_in_final 186 end function omp_in_final 187 188 function omp_get_dynamic() 189 use omp_lib_kinds 190 logical (kind=omp_logical_kind) omp_get_dynamic 191 end function omp_get_dynamic 192 193 function omp_get_nested() 194 use omp_lib_kinds 195 logical (kind=omp_logical_kind) omp_get_nested 196 end function omp_get_nested 197 198 function omp_get_thread_limit() 199 use omp_lib_kinds 200 integer (kind=omp_integer_kind) omp_get_thread_limit 201 end function omp_get_thread_limit 202 203 subroutine omp_set_max_active_levels(max_levels) 204 use omp_lib_kinds 205 integer (kind=omp_integer_kind) max_levels 206 end subroutine omp_set_max_active_levels 207 208 function omp_get_max_active_levels() 209 use omp_lib_kinds 210 integer (kind=omp_integer_kind) omp_get_max_active_levels 211 end function omp_get_max_active_levels 212 213 function omp_get_level() 214 use omp_lib_kinds 215 integer (kind=omp_integer_kind) omp_get_level 216 end function omp_get_level 217 218 function omp_get_active_level() 219 use omp_lib_kinds 220 integer (kind=omp_integer_kind) omp_get_active_level 221 end function omp_get_active_level 222 223 function omp_get_ancestor_thread_num(level) 224 use omp_lib_kinds 225 integer (kind=omp_integer_kind) level 226 integer (kind=omp_integer_kind) omp_get_ancestor_thread_num 227 end function omp_get_ancestor_thread_num 228 229 function omp_get_team_size(level) 230 use omp_lib_kinds 231 integer (kind=omp_integer_kind) level 232 integer (kind=omp_integer_kind) omp_get_team_size 233 end function omp_get_team_size 234 235 subroutine omp_set_schedule(kind, chunk_size) 236 use omp_lib_kinds 237 integer (kind=omp_sched_kind) kind 238 integer (kind=omp_integer_kind) chunk_size 239 end subroutine omp_set_schedule 240 241 subroutine omp_get_schedule(kind, chunk_size) 242 use omp_lib_kinds 243 integer (kind=omp_sched_kind) kind 244 integer (kind=omp_integer_kind) chunk_size 245 end subroutine omp_get_schedule 246 247 function omp_get_proc_bind() 248 use omp_lib_kinds 249 integer (kind=omp_proc_bind_kind) omp_get_proc_bind 250 end function omp_get_proc_bind 251 252 function omp_get_num_places() 253 use omp_lib_kinds 254 integer (kind=omp_integer_kind) omp_get_num_places 255 end function omp_get_num_places 256 257 function omp_get_place_num_procs(place_num) 258 use omp_lib_kinds 259 integer (kind=omp_integer_kind) place_num 260 integer (kind=omp_integer_kind) omp_get_place_num_procs 261 end function omp_get_place_num_procs 262 263 subroutine omp_get_place_proc_ids(place_num, ids) 264 use omp_lib_kinds 265 integer (kind=omp_integer_kind) place_num 266 integer (kind=omp_integer_kind) ids(*) 267 end subroutine omp_get_place_proc_ids 268 269 function omp_get_place_num() 270 use omp_lib_kinds 271 integer (kind=omp_integer_kind) omp_get_place_num 272 end function omp_get_place_num 273 274 function omp_get_partition_num_places() 275 use omp_lib_kinds 276 integer (kind=omp_integer_kind) omp_get_partition_num_places 277 end function omp_get_partition_num_places 278 279 subroutine omp_get_partition_place_nums(place_nums) 280 use omp_lib_kinds 281 integer (kind=omp_integer_kind) place_nums(*) 282 end subroutine omp_get_partition_place_nums 283 284 function omp_get_wtime() 285 double precision omp_get_wtime 286 end function omp_get_wtime 287 288 function omp_get_wtick () 289 double precision omp_get_wtick 290 end function omp_get_wtick 291 292 function omp_get_default_device() 293 use omp_lib_kinds 294 integer (kind=omp_integer_kind) omp_get_default_device 295 end function omp_get_default_device 296 297 subroutine omp_set_default_device(device_num) 298 use omp_lib_kinds 299 integer (kind=omp_integer_kind) device_num 300 end subroutine omp_set_default_device 301 302 function omp_get_num_devices() 303 use omp_lib_kinds 304 integer (kind=omp_integer_kind) omp_get_num_devices 305 end function omp_get_num_devices 306 307 function omp_get_num_teams() 308 use omp_lib_kinds 309 integer (kind=omp_integer_kind) omp_get_num_teams 310 end function omp_get_num_teams 311 312 function omp_get_team_num() 313 use omp_lib_kinds 314 integer (kind=omp_integer_kind) omp_get_team_num 315 end function omp_get_team_num 316 317 function omp_get_cancellation() 318 use omp_lib_kinds 319 integer (kind=omp_integer_kind) omp_get_cancellation 320 end function omp_get_cancellation 321 322 function omp_is_initial_device() 323 use omp_lib_kinds 324 logical (kind=omp_logical_kind) omp_is_initial_device 325 end function omp_is_initial_device 326 327 function omp_get_initial_device() 328 use omp_lib_kinds 329 integer (kind=omp_integer_kind) omp_get_initial_device 330 end function omp_get_initial_device 331 332 function omp_get_device_num() 333 use omp_lib_kinds 334 integer (kind=omp_integer_kind) omp_get_device_num 335 end function omp_get_device_num 336 337 function omp_pause_resource(kind, device_num) 338 use omp_lib_kinds 339 integer (kind=omp_pause_resource_kind) kind 340 integer (kind=omp_integer_kind) device_num 341 integer (kind=omp_integer_kind) omp_pause_resource 342 end function omp_pause_resource 343 344 function omp_pause_resource_all(kind) 345 use omp_lib_kinds 346 integer (kind=omp_pause_resource_kind) kind 347 integer (kind=omp_integer_kind) omp_pause_resource_all 348 end function omp_pause_resource_all 349 350 function omp_get_supported_active_levels() 351 use omp_lib_kinds 352 integer (kind=omp_integer_kind) omp_get_supported_active_levels 353 end function omp_get_supported_active_levels 354 355 subroutine omp_fulfill_event(event) 356 use omp_lib_kinds 357 integer (kind=omp_event_handle_kind) event 358 end subroutine omp_fulfill_event 359 360 subroutine omp_init_lock(svar) 361!DIR$ IF(__INTEL_COMPILER.GE.1400) 362!DIR$ attributes known_intrinsic :: omp_init_lock 363!DIR$ ENDIF 364 use omp_lib_kinds 365 integer (kind=omp_lock_kind) svar 366 end subroutine omp_init_lock 367 368 subroutine omp_destroy_lock(svar) 369!DIR$ IF(__INTEL_COMPILER.GE.1400) 370!DIR$ attributes known_intrinsic :: omp_destroy_lock 371!DIR$ ENDIF 372 use omp_lib_kinds 373 integer (kind=omp_lock_kind) svar 374 end subroutine omp_destroy_lock 375 376 subroutine omp_set_lock(svar) 377!DIR$ IF(__INTEL_COMPILER.GE.1400) 378!DIR$ attributes known_intrinsic :: omp_set_lock 379!DIR$ ENDIF 380 use omp_lib_kinds 381 integer (kind=omp_lock_kind) svar 382 end subroutine omp_set_lock 383 384 subroutine omp_unset_lock(svar) 385!DIR$ IF(__INTEL_COMPILER.GE.1400) 386!DIR$ attributes known_intrinsic :: omp_unset_lock 387!DIR$ ENDIF 388 use omp_lib_kinds 389 integer (kind=omp_lock_kind) svar 390 end subroutine omp_unset_lock 391 392 function omp_test_lock(svar) 393!DIR$ IF(__INTEL_COMPILER.GE.1400) 394!DIR$ attributes known_intrinsic :: omp_test_lock 395!DIR$ ENDIF 396 use omp_lib_kinds 397 logical (kind=omp_logical_kind) omp_test_lock 398 integer (kind=omp_lock_kind) svar 399 end function omp_test_lock 400 401 subroutine omp_init_nest_lock(nvar) 402!DIR$ IF(__INTEL_COMPILER.GE.1400) 403!DIR$ attributes known_intrinsic :: omp_init_nest_lock 404!DIR$ ENDIF 405 use omp_lib_kinds 406 integer (kind=omp_nest_lock_kind) nvar 407 end subroutine omp_init_nest_lock 408 409 subroutine omp_destroy_nest_lock(nvar) 410!DIR$ IF(__INTEL_COMPILER.GE.1400) 411!DIR$ attributes known_intrinsic :: omp_destroy_nest_lock 412!DIR$ ENDIF 413 use omp_lib_kinds 414 integer (kind=omp_nest_lock_kind) nvar 415 end subroutine omp_destroy_nest_lock 416 417 subroutine omp_set_nest_lock(nvar) 418!DIR$ IF(__INTEL_COMPILER.GE.1400) 419!DIR$ attributes known_intrinsic :: omp_set_nest_lock 420!DIR$ ENDIF 421 use omp_lib_kinds 422 integer (kind=omp_nest_lock_kind) nvar 423 end subroutine omp_set_nest_lock 424 425 subroutine omp_unset_nest_lock(nvar) 426!DIR$ IF(__INTEL_COMPILER.GE.1400) 427!DIR$ attributes known_intrinsic :: omp_unset_nest_lock 428!DIR$ ENDIF 429 use omp_lib_kinds 430 integer (kind=omp_nest_lock_kind) nvar 431 end subroutine omp_unset_nest_lock 432 433 function omp_test_nest_lock(nvar) 434!DIR$ IF(__INTEL_COMPILER.GE.1400) 435!DIR$ attributes known_intrinsic :: omp_test_nest_lock 436!DIR$ ENDIF 437 use omp_lib_kinds 438 integer (kind=omp_integer_kind) omp_test_nest_lock 439 integer (kind=omp_nest_lock_kind) nvar 440 end function omp_test_nest_lock 441 442 function omp_get_max_task_priority() 443 use omp_lib_kinds 444 integer (kind=omp_integer_kind) omp_get_max_task_priority 445 end function omp_get_max_task_priority 446 447 function omp_init_allocator(memspace, ntraits, traits) 448 use omp_lib_kinds 449 integer (omp_allocator_handle_kind) omp_init_allocator 450 integer (omp_memspace_handle_kind) :: memspace 451 integer (omp_integer_kind) :: ntraits 452 type(omp_alloctrait), intent(in) :: traits(*) 453 end function omp_init_allocator 454 455 subroutine omp_destroy_allocator(allocator) bind(c) 456 use omp_lib_kinds 457 integer (omp_allocator_handle_kind), value :: allocator 458 end subroutine omp_destroy_allocator 459 460 subroutine omp_set_default_allocator(allocator) bind(c) 461 use omp_lib_kinds 462 integer (omp_allocator_handle_kind) allocator 463 end subroutine omp_set_default_allocator 464 465 function omp_get_default_allocator() bind(c) 466 use omp_lib_kinds 467 integer(omp_allocator_handle_kind)omp_get_default_allocator 468 end function omp_get_default_allocator 469 470 subroutine omp_set_affinity_format(format) 471 character (len=*) format 472 end subroutine omp_set_affinity_format 473 474 function omp_get_affinity_format(buffer) 475 use omp_lib_kinds 476 character (len=*) buffer 477 integer (kind=kmp_size_t_kind) omp_get_affinity_format 478 end function omp_get_affinity_format 479 480 subroutine omp_display_affinity(format) 481 character (len=*) format 482 end subroutine omp_display_affinity 483 484 function omp_capture_affinity(buffer, format) 485 use omp_lib_kinds 486 character (len=*) format 487 character (len=*) buffer 488 integer (kind=kmp_size_t_kind) omp_capture_affinity 489 end function omp_capture_affinity 490 491! *** 492! *** kmp_* entry points 493! *** 494 495 subroutine kmp_set_stacksize(size) 496 use omp_lib_kinds 497 integer (kind=omp_integer_kind) size 498 end subroutine kmp_set_stacksize 499 500 subroutine kmp_set_stacksize_s(size) 501 use omp_lib_kinds 502 integer (kind=kmp_size_t_kind) size 503 end subroutine kmp_set_stacksize_s 504 505 subroutine kmp_set_blocktime(msec) 506 use omp_lib_kinds 507 integer (kind=omp_integer_kind) msec 508 end subroutine kmp_set_blocktime 509 510 subroutine kmp_set_library_serial() 511 end subroutine kmp_set_library_serial 512 513 subroutine kmp_set_library_turnaround() 514 end subroutine kmp_set_library_turnaround 515 516 subroutine kmp_set_library_throughput() 517 end subroutine kmp_set_library_throughput 518 519 subroutine kmp_set_library(libnum) 520 use omp_lib_kinds 521 integer (kind=omp_integer_kind) libnum 522 end subroutine kmp_set_library 523 524 subroutine kmp_set_defaults(string) 525 character*(*) string 526 end subroutine kmp_set_defaults 527 528 function kmp_get_stacksize() 529 use omp_lib_kinds 530 integer (kind=omp_integer_kind) kmp_get_stacksize 531 end function kmp_get_stacksize 532 533 function kmp_get_stacksize_s() 534 use omp_lib_kinds 535 integer (kind=kmp_size_t_kind) kmp_get_stacksize_s 536 end function kmp_get_stacksize_s 537 538 function kmp_get_blocktime() 539 use omp_lib_kinds 540 integer (kind=omp_integer_kind) kmp_get_blocktime 541 end function kmp_get_blocktime 542 543 function kmp_get_library() 544 use omp_lib_kinds 545 integer (kind=omp_integer_kind) kmp_get_library 546 end function kmp_get_library 547 548 subroutine kmp_set_disp_num_buffers(num) 549 use omp_lib_kinds 550 integer (kind=omp_integer_kind) num 551 end subroutine kmp_set_disp_num_buffers 552 553 function kmp_set_affinity(mask) 554 use omp_lib_kinds 555 integer (kind=omp_integer_kind) kmp_set_affinity 556 integer (kind=kmp_affinity_mask_kind) mask 557 end function kmp_set_affinity 558 559 function kmp_get_affinity(mask) 560 use omp_lib_kinds 561 integer (kind=omp_integer_kind) kmp_get_affinity 562 integer (kind=kmp_affinity_mask_kind) mask 563 end function kmp_get_affinity 564 565 function kmp_get_affinity_max_proc() 566 use omp_lib_kinds 567 integer (kind=omp_integer_kind) kmp_get_affinity_max_proc 568 end function kmp_get_affinity_max_proc 569 570 subroutine kmp_create_affinity_mask(mask) 571 use omp_lib_kinds 572 integer (kind=kmp_affinity_mask_kind) mask 573 end subroutine kmp_create_affinity_mask 574 575 subroutine kmp_destroy_affinity_mask(mask) 576 use omp_lib_kinds 577 integer (kind=kmp_affinity_mask_kind) mask 578 end subroutine kmp_destroy_affinity_mask 579 580 function kmp_set_affinity_mask_proc(proc, mask) 581 use omp_lib_kinds 582 integer (kind=omp_integer_kind) kmp_set_affinity_mask_proc 583 integer (kind=omp_integer_kind) proc 584 integer (kind=kmp_affinity_mask_kind) mask 585 end function kmp_set_affinity_mask_proc 586 587 function kmp_unset_affinity_mask_proc(proc, mask) 588 use omp_lib_kinds 589 integer (kind=omp_integer_kind) kmp_unset_affinity_mask_proc 590 integer (kind=omp_integer_kind) proc 591 integer (kind=kmp_affinity_mask_kind) mask 592 end function kmp_unset_affinity_mask_proc 593 594 function kmp_get_affinity_mask_proc(proc, mask) 595 use omp_lib_kinds 596 integer (kind=omp_integer_kind) kmp_get_affinity_mask_proc 597 integer (kind=omp_integer_kind) proc 598 integer (kind=kmp_affinity_mask_kind) mask 599 end function kmp_get_affinity_mask_proc 600 601 function kmp_malloc(size) 602 use omp_lib_kinds 603 integer (kind=kmp_pointer_kind) kmp_malloc 604 integer (kind=kmp_size_t_kind) size 605 end function kmp_malloc 606 607 function kmp_aligned_malloc(size, alignment) 608 use omp_lib_kinds 609 integer (kind=kmp_pointer_kind) kmp_aligned_malloc 610 integer (kind=kmp_size_t_kind) size 611 integer (kind=kmp_size_t_kind) alignment 612 end function kmp_aligned_malloc 613 614 function kmp_calloc(nelem, elsize) 615 use omp_lib_kinds 616 integer (kind=kmp_pointer_kind) kmp_calloc 617 integer (kind=kmp_size_t_kind) nelem 618 integer (kind=kmp_size_t_kind) elsize 619 end function kmp_calloc 620 621 function kmp_realloc(ptr, size) 622 use omp_lib_kinds 623 integer (kind=kmp_pointer_kind) kmp_realloc 624 integer (kind=kmp_pointer_kind) ptr 625 integer (kind=kmp_size_t_kind) size 626 end function kmp_realloc 627 628 subroutine kmp_free(ptr) 629 use omp_lib_kinds 630 integer (kind=kmp_pointer_kind) ptr 631 end subroutine kmp_free 632 633 subroutine kmp_set_warnings_on() 634 end subroutine kmp_set_warnings_on 635 636 subroutine kmp_set_warnings_off() 637 end subroutine kmp_set_warnings_off 638 639 function kmp_get_cancellation_status(cancelkind) 640 use omp_lib_kinds 641 integer (kind=kmp_cancel_kind) cancelkind 642 logical (kind=omp_logical_kind) kmp_get_cancellation_status 643 end function kmp_get_cancellation_status 644 645 subroutine omp_init_lock_with_hint(svar, hint) 646 use omp_lib_kinds 647 integer (kind=omp_lock_kind) svar 648 integer (kind=omp_lock_hint_kind) hint 649 end subroutine omp_init_lock_with_hint 650 651 subroutine omp_init_nest_lock_with_hint(nvar, hint) 652 use omp_lib_kinds 653 integer (kind=omp_nest_lock_kind) nvar 654 integer (kind=omp_lock_hint_kind) hint 655 end subroutine omp_init_nest_lock_with_hint 656 657 function omp_control_tool(command, modifier) 658 use omp_lib_kinds 659 integer (kind=omp_integer_kind) omp_control_tool 660 integer (kind=omp_control_tool_kind) command 661 integer (kind=omp_control_tool_kind) modifier 662 end function omp_control_tool 663 664 end interface 665 666!dec$ if defined(_WIN32) 667!dec$ if defined(_WIN64) .or. defined(_M_AMD64) 668 669!*** 670!*** The Fortran entry points must be in uppercase, even if the /Qlowercase 671!*** option is specified. The alias attribute ensures that the specified 672!*** string is used as the entry point. 673!*** 674!*** On the Windows* OS IA-32 architecture, the Fortran entry points have an 675!*** underscore prepended. On the Windows* OS Intel(R) 64 676!*** architecture, no underscore is prepended. 677!*** 678 679!dec$ attributes alias:'OMP_SET_NUM_THREADS' :: omp_set_num_threads 680!dec$ attributes alias:'OMP_SET_DYNAMIC' :: omp_set_dynamic 681!dec$ attributes alias:'OMP_SET_NESTED' :: omp_set_nested 682!dec$ attributes alias:'OMP_GET_NUM_THREADS' :: omp_get_num_threads 683!dec$ attributes alias:'OMP_GET_MAX_THREADS' :: omp_get_max_threads 684!dec$ attributes alias:'OMP_GET_THREAD_NUM' :: omp_get_thread_num 685!dec$ attributes alias:'OMP_GET_NUM_PROCS' :: omp_get_num_procs 686!dec$ attributes alias:'OMP_IN_PARALLEL' :: omp_in_parallel 687!dec$ attributes alias:'OMP_GET_DYNAMIC' :: omp_get_dynamic 688!dec$ attributes alias:'OMP_GET_NESTED' :: omp_get_nested 689!dec$ attributes alias:'OMP_GET_THREAD_LIMIT' :: omp_get_thread_limit 690!dec$ attributes alias:'OMP_SET_MAX_ACTIVE_LEVELS' :: omp_set_max_active_levels 691!dec$ attributes alias:'OMP_GET_MAX_ACTIVE_LEVELS' :: omp_get_max_active_levels 692!dec$ attributes alias:'OMP_GET_LEVEL' :: omp_get_level 693!dec$ attributes alias:'OMP_GET_ACTIVE_LEVEL' :: omp_get_active_level 694!dec$ attributes alias:'OMP_GET_ANCESTOR_THREAD_NUM' :: omp_get_ancestor_thread_num 695!dec$ attributes alias:'OMP_GET_TEAM_SIZE' :: omp_get_team_size 696!dec$ attributes alias:'OMP_SET_SCHEDULE' :: omp_set_schedule 697!dec$ attributes alias:'OMP_GET_SCHEDULE' :: omp_get_schedule 698!dec$ attributes alias:'OMP_GET_PROC_BIND' :: omp_get_proc_bind 699!dec$ attributes alias:'OMP_GET_WTIME' :: omp_get_wtime 700!dec$ attributes alias:'OMP_GET_WTICK' :: omp_get_wtick 701!dec$ attributes alias:'OMP_GET_DEFAULT_DEVICE' :: omp_get_default_device 702!dec$ attributes alias:'OMP_SET_DEFAULT_DEVICE' :: omp_set_default_device 703!dec$ attributes alias:'OMP_GET_NUM_DEVICES' :: omp_get_num_devices 704!dec$ attributes alias:'OMP_GET_NUM_TEAMS' :: omp_get_num_teams 705!dec$ attributes alias:'OMP_GET_TEAM_NUM' :: omp_get_team_num 706!dec$ attributes alias:'OMP_GET_CANCELLATION' :: omp_get_cancellation 707!dec$ attributes alias:'OMP_IS_INITIAL_DEVICE' :: omp_is_initial_device 708!dec$ attributes alias:'OMP_GET_INITIAL_DEVICE' :: omp_get_initial_device 709!dec$ attributes alias:'OMP_GET_MAX_TASK_PRIORITY' :: omp_get_max_task_priority 710!dec$ attributes alias:'OMP_GET_DEVICE_NUM' :: omp_get_device_num 711!dec$ attributes alias:'OMP_PAUSE_RESOURCE' :: omp_pause_resource 712!dec$ attributes alias:'OMP_PAUSE_RESOURCE_ALL' :: omp_pause_resource_all 713!dec$ attributes alias:'OMP_GET_SUPPORTED_ACTIVE_LEVELS' :: omp_get_supported_active_levels 714!dec$ attributes alias:'OMP_FULFILL_EVENT' :: omp_fulfill_event 715 716!dec$ attributes alias:'OMP_CONTROL_TOOL' :: omp_control_tool 717!dec$ attributes alias:'OMP_SET_AFFINITY_FORMAT' :: omp_set_affinity_format 718!dec$ attributes alias:'OMP_GET_AFFINITY_FORMAT' :: omp_get_affinity_format 719!dec$ attributes alias:'OMP_DISPLAY_AFFINITY' :: omp_display_affinity 720!dec$ attributes alias:'OMP_CAPTURE_AFFINITY' :: omp_capture_affinity 721 722!dec$ attributes alias:'omp_init_lock' :: omp_init_lock 723!dec$ attributes alias:'omp_init_lock_with_hint' :: omp_init_lock_with_hint 724!dec$ attributes alias:'omp_destroy_lock' :: omp_destroy_lock 725!dec$ attributes alias:'omp_set_lock' :: omp_set_lock 726!dec$ attributes alias:'omp_unset_lock' :: omp_unset_lock 727!dec$ attributes alias:'omp_test_lock' :: omp_test_lock 728!dec$ attributes alias:'omp_init_nest_lock' :: omp_init_nest_lock 729!dec$ attributes alias:'omp_init_nest_lock_with_hint' :: omp_init_nest_lock_with_hint 730!dec$ attributes alias:'omp_destroy_nest_lock' :: omp_destroy_nest_lock 731!dec$ attributes alias:'omp_set_nest_lock' :: omp_set_nest_lock 732!dec$ attributes alias:'omp_unset_nest_lock' :: omp_unset_nest_lock 733!dec$ attributes alias:'omp_test_nest_lock' :: omp_test_nest_lock 734 735!dec$ attributes alias:'KMP_SET_STACKSIZE'::kmp_set_stacksize 736!dec$ attributes alias:'KMP_SET_STACKSIZE_S'::kmp_set_stacksize_s 737!dec$ attributes alias:'KMP_SET_BLOCKTIME'::kmp_set_blocktime 738!dec$ attributes alias:'KMP_SET_LIBRARY_SERIAL'::kmp_set_library_serial 739!dec$ attributes alias:'KMP_SET_LIBRARY_TURNAROUND'::kmp_set_library_turnaround 740!dec$ attributes alias:'KMP_SET_LIBRARY_THROUGHPUT'::kmp_set_library_throughput 741!dec$ attributes alias:'KMP_SET_LIBRARY'::kmp_set_library 742!dec$ attributes alias:'KMP_GET_STACKSIZE'::kmp_get_stacksize 743!dec$ attributes alias:'KMP_GET_STACKSIZE_S'::kmp_get_stacksize_s 744!dec$ attributes alias:'KMP_GET_BLOCKTIME'::kmp_get_blocktime 745!dec$ attributes alias:'KMP_GET_LIBRARY'::kmp_get_library 746!dec$ attributes alias:'KMP_SET_AFFINITY'::kmp_set_affinity 747!dec$ attributes alias:'KMP_GET_AFFINITY'::kmp_get_affinity 748!dec$ attributes alias:'KMP_GET_AFFINITY_MAX_PROC'::kmp_get_affinity_max_proc 749!dec$ attributes alias:'KMP_CREATE_AFFINITY_MASK'::kmp_create_affinity_mask 750!dec$ attributes alias:'KMP_DESTROY_AFFINITY_MASK'::kmp_destroy_affinity_mask 751!dec$ attributes alias:'KMP_SET_AFFINITY_MASK_PROC'::kmp_set_affinity_mask_proc 752!dec$ attributes alias:'KMP_UNSET_AFFINITY_MASK_PROC'::kmp_unset_affinity_mask_proc 753!dec$ attributes alias:'KMP_GET_AFFINITY_MASK_PROC'::kmp_get_affinity_mask_proc 754!dec$ attributes alias:'KMP_MALLOC'::kmp_malloc 755!dec$ attributes alias:'KMP_ALIGNED_MALLOC'::kmp_aligned_malloc 756!dec$ attributes alias:'KMP_CALLOC'::kmp_calloc 757!dec$ attributes alias:'KMP_REALLOC'::kmp_realloc 758!dec$ attributes alias:'KMP_FREE'::kmp_free 759 760!dec$ attributes alias:'KMP_SET_WARNINGS_ON'::kmp_set_warnings_on 761!dec$ attributes alias:'KMP_SET_WARNINGS_OFF'::kmp_set_warnings_off 762 763!dec$ attributes alias:'KMP_GET_CANCELLATION_STATUS' :: kmp_get_cancellation_status 764 765!dec$ else 766 767!*** 768!*** On Windows* OS IA-32 architecture, the Fortran entry points have an underscore prepended. 769!*** 770 771!dec$ attributes alias:'_OMP_SET_NUM_THREADS' :: omp_set_num_threads 772!dec$ attributes alias:'_OMP_SET_DYNAMIC' :: omp_set_dynamic 773!dec$ attributes alias:'_OMP_SET_NESTED' :: omp_set_nested 774!dec$ attributes alias:'_OMP_GET_NUM_THREADS' :: omp_get_num_threads 775!dec$ attributes alias:'_OMP_GET_MAX_THREADS' :: omp_get_max_threads 776!dec$ attributes alias:'_OMP_GET_THREAD_NUM' :: omp_get_thread_num 777!dec$ attributes alias:'_OMP_GET_NUM_PROCS' :: omp_get_num_procs 778!dec$ attributes alias:'_OMP_IN_PARALLEL' :: omp_in_parallel 779!dec$ attributes alias:'_OMP_GET_DYNAMIC' :: omp_get_dynamic 780!dec$ attributes alias:'_OMP_GET_NESTED' :: omp_get_nested 781!dec$ attributes alias:'_OMP_GET_THREAD_LIMIT' :: omp_get_thread_limit 782!dec$ attributes alias:'_OMP_SET_MAX_ACTIVE_LEVELS' :: omp_set_max_active_levels 783!dec$ attributes alias:'_OMP_GET_MAX_ACTIVE_LEVELS' :: omp_get_max_active_levels 784!dec$ attributes alias:'_OMP_GET_LEVEL' :: omp_get_level 785!dec$ attributes alias:'_OMP_GET_ACTIVE_LEVEL' :: omp_get_active_level 786!dec$ attributes alias:'_OMP_GET_ANCESTOR_THREAD_NUM' :: omp_get_ancestor_thread_num 787!dec$ attributes alias:'_OMP_GET_TEAM_SIZE' :: omp_get_team_size 788!dec$ attributes alias:'_OMP_SET_SCHEDULE' :: omp_set_schedule 789!dec$ attributes alias:'_OMP_GET_SCHEDULE' :: omp_get_schedule 790!dec$ attributes alias:'_OMP_GET_PROC_BIND' :: omp_get_proc_bind 791!dec$ attributes alias:'_OMP_GET_WTIME' :: omp_get_wtime 792!dec$ attributes alias:'_OMP_GET_WTICK' :: omp_get_wtick 793!dec$ attributes alias:'_OMP_GET_DEFAULT_DEVICE' :: omp_get_default_device 794!dec$ attributes alias:'_OMP_SET_DEFAULT_DEVICE' :: omp_set_default_device 795!dec$ attributes alias:'_OMP_GET_NUM_DEVICES' :: omp_get_num_devices 796!dec$ attributes alias:'_OMP_GET_NUM_TEAMS' :: omp_get_num_teams 797!dec$ attributes alias:'_OMP_GET_TEAM_NUM' :: omp_get_team_num 798!dec$ attributes alias:'_OMP_GET_CANCELLATION' :: omp_get_cancellation 799!dec$ attributes alias:'_OMP_IS_INITIAL_DEVICE' :: omp_is_initial_device 800!dec$ attributes alias:'_OMP_GET_INITIAL_DEVICE' :: omp_get_initial_device 801!dec$ attributes alias:'_OMP_GET_MAX_TASK_PRIORTY' :: omp_get_max_task_priority 802!dec$ attributes alias:'_OMP_GET_DEVICE_NUM' :: omp_get_device_num 803!dec$ attributes alias:'_OMP_PAUSE_RESOURCE' :: omp_pause_resource 804!dec$ attributes alias:'_OMP_PAUSE_RESOURCE_ALL' :: omp_pause_resource_all 805!dec$ attributes alias:'_OMP_GET_SUPPORTED_ACTIVE_LEVELS' :: omp_get_supported_active_levels 806!dec$ attributes alias:'_OMP_FULFILL_EVENT' :: omp_fulfill_event 807 808!dec$ attributes alias:'_OMP_CONTROL_TOOL' :: omp_control_tool 809!dec$ attributes alias:'_OMP_SET_AFFINITY_FORMAT' :: omp_set_affinity_format 810!dec$ attributes alias:'_OMP_GET_AFFINITY_FORMAT' :: omp_get_affinity_format 811!dec$ attributes alias:'_OMP_DISPLAY_AFFINITY' :: omp_display_affinity 812!dec$ attributes alias:'_OMP_CAPTURE_AFFINITY' :: omp_capture_affinity 813 814!dec$ attributes alias:'_omp_init_lock' :: omp_init_lock 815!dec$ attributes alias:'_omp_init_lock_with_hint' :: omp_init_lock_with_hint 816!dec$ attributes alias:'_omp_destroy_lock' :: omp_destroy_lock 817!dec$ attributes alias:'_omp_set_lock' :: omp_set_lock 818!dec$ attributes alias:'_omp_unset_lock' :: omp_unset_lock 819!dec$ attributes alias:'_omp_test_lock' :: omp_test_lock 820!dec$ attributes alias:'_omp_init_nest_lock' :: omp_init_nest_lock 821!dec$ attributes alias:'_omp_init_nest_lock_with_hint' :: omp_init_nest_lock_with_hint 822!dec$ attributes alias:'_omp_destroy_nest_lock' :: omp_destroy_nest_lock 823!dec$ attributes alias:'_omp_set_nest_lock' :: omp_set_nest_lock 824!dec$ attributes alias:'_omp_unset_nest_lock' :: omp_unset_nest_lock 825!dec$ attributes alias:'_omp_test_nest_lock' :: omp_test_nest_lock 826 827!dec$ attributes alias:'_KMP_SET_STACKSIZE'::kmp_set_stacksize 828!dec$ attributes alias:'_KMP_SET_STACKSIZE_S'::kmp_set_stacksize_s 829!dec$ attributes alias:'_KMP_SET_BLOCKTIME'::kmp_set_blocktime 830!dec$ attributes alias:'_KMP_SET_LIBRARY_SERIAL'::kmp_set_library_serial 831!dec$ attributes alias:'_KMP_SET_LIBRARY_TURNAROUND'::kmp_set_library_turnaround 832!dec$ attributes alias:'_KMP_SET_LIBRARY_THROUGHPUT'::kmp_set_library_throughput 833!dec$ attributes alias:'_KMP_SET_LIBRARY'::kmp_set_library 834!dec$ attributes alias:'_KMP_GET_STACKSIZE'::kmp_get_stacksize 835!dec$ attributes alias:'_KMP_GET_STACKSIZE_S'::kmp_get_stacksize_s 836!dec$ attributes alias:'_KMP_GET_BLOCKTIME'::kmp_get_blocktime 837!dec$ attributes alias:'_KMP_GET_LIBRARY'::kmp_get_library 838!dec$ attributes alias:'_KMP_SET_AFFINITY'::kmp_set_affinity 839!dec$ attributes alias:'_KMP_GET_AFFINITY'::kmp_get_affinity 840!dec$ attributes alias:'_KMP_GET_AFFINITY_MAX_PROC'::kmp_get_affinity_max_proc 841!dec$ attributes alias:'_KMP_CREATE_AFFINITY_MASK'::kmp_create_affinity_mask 842!dec$ attributes alias:'_KMP_DESTROY_AFFINITY_MASK'::kmp_destroy_affinity_mask 843!dec$ attributes alias:'_KMP_SET_AFFINITY_MASK_PROC'::kmp_set_affinity_mask_proc 844!dec$ attributes alias:'_KMP_UNSET_AFFINITY_MASK_PROC'::kmp_unset_affinity_mask_proc 845!dec$ attributes alias:'_KMP_GET_AFFINITY_MASK_PROC'::kmp_get_affinity_mask_proc 846!dec$ attributes alias:'_KMP_MALLOC'::kmp_malloc 847!dec$ attributes alias:'_KMP_ALIGNED_MALLOC'::kmp_aligned_malloc 848!dec$ attributes alias:'_KMP_CALLOC'::kmp_calloc 849!dec$ attributes alias:'_KMP_REALLOC'::kmp_realloc 850!dec$ attributes alias:'_KMP_FREE'::kmp_free 851 852!dec$ attributes alias:'_KMP_SET_WARNINGS_ON'::kmp_set_warnings_on 853!dec$ attributes alias:'_KMP_SET_WARNINGS_OFF'::kmp_set_warnings_off 854 855!dec$ attributes alias:'_KMP_GET_CANCELLATION_STATUS' :: kmp_get_cancellation_status 856 857!dec$ endif 858!dec$ endif 859 860!dec$ if defined(__linux) 861 862!*** 863!*** The Linux* OS entry points are in lowercase, with an underscore appended. 864!*** 865 866!dec$ attributes alias:'omp_set_num_threads_'::omp_set_num_threads 867!dec$ attributes alias:'omp_set_dynamic_'::omp_set_dynamic 868!dec$ attributes alias:'omp_set_nested_'::omp_set_nested 869!dec$ attributes alias:'omp_get_num_threads_'::omp_get_num_threads 870!dec$ attributes alias:'omp_get_max_threads_'::omp_get_max_threads 871!dec$ attributes alias:'omp_get_thread_num_'::omp_get_thread_num 872!dec$ attributes alias:'omp_get_num_procs_'::omp_get_num_procs 873!dec$ attributes alias:'omp_in_parallel_'::omp_in_parallel 874!dec$ attributes alias:'omp_get_dynamic_'::omp_get_dynamic 875!dec$ attributes alias:'omp_get_nested_'::omp_get_nested 876!dec$ attributes alias:'omp_get_thread_limit_'::omp_get_thread_limit 877!dec$ attributes alias:'omp_set_max_active_levels_'::omp_set_max_active_levels 878!dec$ attributes alias:'omp_get_max_active_levels_'::omp_get_max_active_levels 879!dec$ attributes alias:'omp_get_level_'::omp_get_level 880!dec$ attributes alias:'omp_get_active_level_'::omp_get_active_level 881!dec$ attributes alias:'omp_get_ancestor_thread_num_'::omp_get_ancestor_thread_num 882!dec$ attributes alias:'omp_get_team_size_'::omp_get_team_size 883!dec$ attributes alias:'omp_set_schedule_'::omp_set_schedule 884!dec$ attributes alias:'omp_get_schedule_'::omp_get_schedule 885!dec$ attributes alias:'omp_get_proc_bind_' :: omp_get_proc_bind 886!dec$ attributes alias:'omp_get_wtime_'::omp_get_wtime 887!dec$ attributes alias:'omp_get_wtick_'::omp_get_wtick 888!dec$ attributes alias:'omp_get_default_device_'::omp_get_default_device 889!dec$ attributes alias:'omp_set_default_device_'::omp_set_default_device 890!dec$ attributes alias:'omp_get_num_devices_'::omp_get_num_devices 891!dec$ attributes alias:'omp_get_num_teams_'::omp_get_num_teams 892!dec$ attributes alias:'omp_get_team_num_'::omp_get_team_num 893!dec$ attributes alias:'omp_get_cancellation_'::omp_get_cancellation 894!dec$ attributes alias:'omp_is_initial_device_'::omp_is_initial_device 895!dec$ attributes alias:'omp_get_initial_device_'::omp_get_initial_device 896!dec$ attributes alias:'omp_get_max_task_priority_'::omp_get_max_task_priority 897!dec$ attributes alias:'omp_get_device_num_'::omp_get_device_num 898!dec$ attributes alias:'omp_pause_resource_' :: omp_pause_resource 899!dec$ attributes alias:'omp_pause_resource_all_' :: omp_pause_resource_all 900!dec$ attributes alias:'omp_get_supported_active_levels_' :: omp_get_supported_active_levels 901!dec$ attributes alias:'omp_fulfill_event_' :: omp_fulfill_event 902 903!dec$ attributes alias:'omp_set_affinity_format_' :: omp_set_affinity_format 904!dec$ attributes alias:'omp_get_affinity_format_' :: omp_get_affinity_format 905!dec$ attributes alias:'omp_display_affinity_' :: omp_display_affinity 906!dec$ attributes alias:'omp_capture_affinity_' :: omp_capture_affinity 907 908!dec$ attributes alias:'omp_init_lock_'::omp_init_lock 909!dec$ attributes alias:'omp_init_lock_with_hint_'::omp_init_lock_with_hint 910!dec$ attributes alias:'omp_destroy_lock_'::omp_destroy_lock 911!dec$ attributes alias:'omp_set_lock_'::omp_set_lock 912!dec$ attributes alias:'omp_unset_lock_'::omp_unset_lock 913!dec$ attributes alias:'omp_test_lock_'::omp_test_lock 914!dec$ attributes alias:'omp_init_nest_lock_'::omp_init_nest_lock 915!dec$ attributes alias:'omp_init_nest_lock_with_hint_'::omp_init_nest_lock_with_hint 916!dec$ attributes alias:'omp_destroy_nest_lock_'::omp_destroy_nest_lock 917!dec$ attributes alias:'omp_set_nest_lock_'::omp_set_nest_lock 918!dec$ attributes alias:'omp_unset_nest_lock_'::omp_unset_nest_lock 919!dec$ attributes alias:'omp_test_nest_lock_'::omp_test_nest_lock 920!dec$ attributes alias:'omp_control_tool_'::omp_control_tool 921 922!dec$ attributes alias:'kmp_set_stacksize_'::kmp_set_stacksize 923!dec$ attributes alias:'kmp_set_stacksize_s_'::kmp_set_stacksize_s 924!dec$ attributes alias:'kmp_set_blocktime_'::kmp_set_blocktime 925!dec$ attributes alias:'kmp_set_library_serial_'::kmp_set_library_serial 926!dec$ attributes alias:'kmp_set_library_turnaround_'::kmp_set_library_turnaround 927!dec$ attributes alias:'kmp_set_library_throughput_'::kmp_set_library_throughput 928!dec$ attributes alias:'kmp_set_library_'::kmp_set_library 929!dec$ attributes alias:'kmp_get_stacksize_'::kmp_get_stacksize 930!dec$ attributes alias:'kmp_get_stacksize_s_'::kmp_get_stacksize_s 931!dec$ attributes alias:'kmp_get_blocktime_'::kmp_get_blocktime 932!dec$ attributes alias:'kmp_get_library_'::kmp_get_library 933!dec$ attributes alias:'kmp_set_affinity_'::kmp_set_affinity 934!dec$ attributes alias:'kmp_get_affinity_'::kmp_get_affinity 935!dec$ attributes alias:'kmp_get_affinity_max_proc_'::kmp_get_affinity_max_proc 936!dec$ attributes alias:'kmp_create_affinity_mask_'::kmp_create_affinity_mask 937!dec$ attributes alias:'kmp_destroy_affinity_mask_'::kmp_destroy_affinity_mask 938!dec$ attributes alias:'kmp_set_affinity_mask_proc_'::kmp_set_affinity_mask_proc 939!dec$ attributes alias:'kmp_unset_affinity_mask_proc_'::kmp_unset_affinity_mask_proc 940!dec$ attributes alias:'kmp_get_affinity_mask_proc_'::kmp_get_affinity_mask_proc 941!dec$ attributes alias:'kmp_malloc_'::kmp_malloc 942!dec$ attributes alias:'kmp_aligned_malloc_'::kmp_aligned_malloc 943!dec$ attributes alias:'kmp_calloc_'::kmp_calloc 944!dec$ attributes alias:'kmp_realloc_'::kmp_realloc 945!dec$ attributes alias:'kmp_free_'::kmp_free 946 947!dec$ attributes alias:'kmp_set_warnings_on_'::kmp_set_warnings_on 948!dec$ attributes alias:'kmp_set_warnings_off_'::kmp_set_warnings_off 949!dec$ attributes alias:'kmp_get_cancellation_status_'::kmp_get_cancellation_status 950 951!dec$ endif 952 953!dec$ if defined(__APPLE__) 954 955!*** 956!*** The Mac entry points are in lowercase, with both an underscore 957!*** appended and an underscore prepended. 958!*** 959 960!dec$ attributes alias:'_omp_set_num_threads_'::omp_set_num_threads 961!dec$ attributes alias:'_omp_set_dynamic_'::omp_set_dynamic 962!dec$ attributes alias:'_omp_set_nested_'::omp_set_nested 963!dec$ attributes alias:'_omp_get_num_threads_'::omp_get_num_threads 964!dec$ attributes alias:'_omp_get_max_threads_'::omp_get_max_threads 965!dec$ attributes alias:'_omp_get_thread_num_'::omp_get_thread_num 966!dec$ attributes alias:'_omp_get_num_procs_'::omp_get_num_procs 967!dec$ attributes alias:'_omp_in_parallel_'::omp_in_parallel 968!dec$ attributes alias:'_omp_get_dynamic_'::omp_get_dynamic 969!dec$ attributes alias:'_omp_get_nested_'::omp_get_nested 970!dec$ attributes alias:'_omp_get_thread_limit_'::omp_get_thread_limit 971!dec$ attributes alias:'_omp_set_max_active_levels_'::omp_set_max_active_levels 972!dec$ attributes alias:'_omp_get_max_active_levels_'::omp_get_max_active_levels 973!dec$ attributes alias:'_omp_get_level_'::omp_get_level 974!dec$ attributes alias:'_omp_get_active_level_'::omp_get_active_level 975!dec$ attributes alias:'_omp_get_ancestor_thread_num_'::omp_get_ancestor_thread_num 976!dec$ attributes alias:'_omp_get_team_size_'::omp_get_team_size 977!dec$ attributes alias:'_omp_set_schedule_'::omp_set_schedule 978!dec$ attributes alias:'_omp_get_schedule_'::omp_get_schedule 979!dec$ attributes alias:'_omp_get_proc_bind_' :: omp_get_proc_bind 980!dec$ attributes alias:'_omp_get_wtime_'::omp_get_wtime 981!dec$ attributes alias:'_omp_get_wtick_'::omp_get_wtick 982!dec$ attributes alias:'_omp_get_default_device_'::omp_get_default_device 983!dec$ attributes alias:'_omp_set_default_device_'::omp_set_default_device 984!dec$ attributes alias:'_omp_get_num_devices_'::omp_get_num_devices 985!dec$ attributes alias:'_omp_get_num_teams_'::omp_get_num_teams 986!dec$ attributes alias:'_omp_get_team_num_'::omp_get_team_num 987!dec$ attributes alias:'_omp_get_cancellation_'::omp_get_cancellation 988!dec$ attributes alias:'_omp_is_initial_device_'::omp_is_initial_device 989!dec$ attributes alias:'_omp_get_initial_device_'::omp_get_initial_device 990!dec$ attributes alias:'_omp_get_max_task_priorty_'::omp_get_max_task_priority 991!dec$ attributes alias:'_omp_get_device_num_'::omp_get_device_num 992!dec$ attributes alias:'_omp_pause_resource_' :: omp_pause_resource 993!dec$ attributes alias:'_omp_pause_resource_all_' :: omp_pause_resource_all 994!dec$ attributes alias:'_omp_get_supported_active_levels_' :: omp_get_supported_active_levels 995!dec$ attributes alias:'_omp_fulfill_event_' :: omp_fulfill_event 996 997!dec$ attributes alias:'_omp_init_lock_'::omp_init_lock 998!dec$ attributes alias:'_omp_init_lock_with_hint_'::omp_init_lock_with_hint 999!dec$ attributes alias:'_omp_destroy_lock_'::omp_destroy_lock 1000!dec$ attributes alias:'_omp_set_lock_'::omp_set_lock 1001!dec$ attributes alias:'_omp_unset_lock_'::omp_unset_lock 1002!dec$ attributes alias:'_omp_test_lock_'::omp_test_lock 1003!dec$ attributes alias:'_omp_init_nest_lock_'::omp_init_nest_lock 1004!dec$ attributes alias:'_omp_init_nest_lock_with_hint_'::omp_init_nest_lock_with_hint 1005!dec$ attributes alias:'_omp_destroy_nest_lock_'::omp_destroy_nest_lock 1006!dec$ attributes alias:'_omp_set_nest_lock_'::omp_set_nest_lock 1007!dec$ attributes alias:'_omp_unset_nest_lock_'::omp_unset_nest_lock 1008!dec$ attributes alias:'_omp_test_nest_lock_'::omp_test_nest_lock 1009!dec$ attributes alias:'_omp_control_tool_'::omp_control_tool 1010!dec$ attributes alias:'_omp_set_affinity_format_' :: omp_set_affinity_format 1011!dec$ attributes alias:'_omp_get_affinity_format_' :: omp_get_affinity_format 1012!dec$ attributes alias:'_omp_display_affinity_' :: omp_display_affinity 1013!dec$ attributes alias:'_omp_capture_affinity_' :: omp_capture_affinity 1014 1015!dec$ attributes alias:'_kmp_set_stacksize_'::kmp_set_stacksize 1016!dec$ attributes alias:'_kmp_set_stacksize_s_'::kmp_set_stacksize_s 1017!dec$ attributes alias:'_kmp_set_blocktime_'::kmp_set_blocktime 1018!dec$ attributes alias:'_kmp_set_library_serial_'::kmp_set_library_serial 1019!dec$ attributes alias:'_kmp_set_library_turnaround_'::kmp_set_library_turnaround 1020!dec$ attributes alias:'_kmp_set_library_throughput_'::kmp_set_library_throughput 1021!dec$ attributes alias:'_kmp_set_library_'::kmp_set_library 1022!dec$ attributes alias:'_kmp_get_stacksize_'::kmp_get_stacksize 1023!dec$ attributes alias:'_kmp_get_stacksize_s_'::kmp_get_stacksize_s 1024!dec$ attributes alias:'_kmp_get_blocktime_'::kmp_get_blocktime 1025!dec$ attributes alias:'_kmp_get_library_'::kmp_get_library 1026!dec$ attributes alias:'_kmp_set_affinity_'::kmp_set_affinity 1027!dec$ attributes alias:'_kmp_get_affinity_'::kmp_get_affinity 1028!dec$ attributes alias:'_kmp_get_affinity_max_proc_'::kmp_get_affinity_max_proc 1029!dec$ attributes alias:'_kmp_create_affinity_mask_'::kmp_create_affinity_mask 1030!dec$ attributes alias:'_kmp_destroy_affinity_mask_'::kmp_destroy_affinity_mask 1031!dec$ attributes alias:'_kmp_set_affinity_mask_proc_'::kmp_set_affinity_mask_proc 1032!dec$ attributes alias:'_kmp_unset_affinity_mask_proc_'::kmp_unset_affinity_mask_proc 1033!dec$ attributes alias:'_kmp_get_affinity_mask_proc_'::kmp_get_affinity_mask_proc 1034!dec$ attributes alias:'_kmp_malloc_'::kmp_malloc 1035!dec$ attributes alias:'_kmp_aligned_malloc_'::kmp_aligned_malloc 1036!dec$ attributes alias:'_kmp_calloc_'::kmp_calloc 1037!dec$ attributes alias:'_kmp_realloc_'::kmp_realloc 1038!dec$ attributes alias:'_kmp_free_'::kmp_free 1039 1040!dec$ attributes alias:'_kmp_set_warnings_on_'::kmp_set_warnings_on 1041!dec$ attributes alias:'_kmp_set_warnings_off_'::kmp_set_warnings_off 1042 1043!dec$ attributes alias:'_kmp_get_cancellation_status_'::kmp_get_cancellation_status 1044 1045!dec$ endif 1046 1047 end module omp_lib 1048