Contents Menu Expand Light mode Dark mode Auto light/dark mode
GNU Offloading and Multi Processing Runtime Library 13.0.1 (experimental 20220101) documentation
Logo
GNU Offloading and Multi Processing Runtime Library 13.0.1 (experimental 20220101) documentation
  • Copyright
  • Introduction
  • Enabling OpenMP
  • OpenMP Implementation Status
    • OpenMP 4.5
    • OpenMP 5.0
    • OpenMP 5.1
    • OpenMP 5.2
  • OpenMP Runtime Library Routines
    • omp_get_active_level – Number of parallel regions
    • omp_get_ancestor_thread_num – Ancestor thread ID
    • omp_get_cancellation – Whether cancellation support is enabled
    • omp_get_default_device – Get the default device for target regions
    • omp_get_device_num – Return device number of current device
    • omp_get_dynamic – Dynamic teams setting
    • omp_get_initial_device – Return device number of initial device
    • omp_get_level – Obtain the current nesting level
    • omp_get_max_active_levels – Current maximum number of active regions
    • omp_get_max_task_priority – Maximum priority value
    • omp_get_max_teams – Maximum number of teams of teams region
    • omp_get_max_threads – Maximum number of threads of parallel region
    • omp_get_nested – Nested parallel regions
    • omp_get_num_devices – Number of target devices
    • omp_get_num_procs – Number of processors online
    • omp_get_num_teams – Number of teams
    • omp_get_num_threads – Size of the active team
    • omp_get_proc_bind – Whether theads may be moved between CPUs
    • omp_get_schedule – Obtain the runtime scheduling method
    • omp_get_supported_active_levels – Maximum number of active regions supported
    • omp_get_team_num – Get team number
    • omp_get_team_size – Number of threads in a team
    • omp_get_teams_thread_limit – Maximum number of threads imposed by teams
    • omp_get_thread_limit – Maximum number of threads
    • omp_get_thread_num – Current thread ID
    • omp_in_parallel – Whether a parallel region is active
    • omp_in_final – Whether in final or included task region
    • omp_is_initial_device – Whether executing on the host device
    • omp_set_default_device – Set the default device for target regions
    • omp_set_dynamic – Enable/disable dynamic teams
    • omp_set_max_active_levels – Limits the number of active parallel regions
    • omp_set_nested – Enable/disable nested parallel regions
    • omp_set_num_teams – Set upper teams limit for teams construct
    • omp_set_num_threads – Set upper team size limit
    • omp_set_schedule – Set the runtime scheduling method
    • omp_set_teams_thread_limit – Set upper thread limit for teams construct
    • omp_init_lock – Initialize simple lock
    • omp_set_lock – Wait for and set simple lock
    • omp_test_lock – Test and set simple lock if available
    • omp_unset_lock – Unset simple lock
    • omp_destroy_lock – Destroy simple lock
    • omp_init_nest_lock – Initialize nested lock
    • omp_set_nest_lock – Wait for and set nested lock
    • omp_test_nest_lock – Test and set nested lock if available
    • omp_unset_nest_lock – Unset nested lock
    • omp_destroy_nest_lock – Destroy nested lock
    • omp_get_wtick – Get timer precision
    • omp_get_wtime – Elapsed wall clock time
    • omp_fulfill_event – Fulfill and destroy an OpenMP event
  • OpenMP Environment Variables
    • OMP_CANCELLATION – Set whether cancellation is activated
    • OMP_DISPLAY_ENV – Show OpenMP version and environment variables
    • OMP_DEFAULT_DEVICE – Set the device used in target regions
    • OMP_DYNAMIC – Dynamic adjustment of threads
    • OMP_MAX_ACTIVE_LEVELS – Set the maximum number of nested parallel regions
    • OMP_MAX_TASK_PRIORITY – Set the maximum priority
    • OMP_NESTED – Nested parallel regions
    • OMP_NUM_TEAMS – Specifies the number of teams to use by teams region
    • OMP_NUM_THREADS – Specifies the number of threads to use
    • OMP_PROC_BIND – Whether theads may be moved between CPUs
    • OMP_PLACES – Specifies on which CPUs the theads should be placed
    • OMP_STACKSIZE – Set default thread stack size
    • OMP_SCHEDULE – How threads are scheduled
    • OMP_TARGET_OFFLOAD – Controls offloading behaviour
    • OMP_TEAMS_THREAD_LIMIT – Set the maximum number of threads imposed by teams
    • OMP_THREAD_LIMIT – Set the maximum number of threads
    • OMP_WAIT_POLICY – How waiting threads are handled
    • GOMP_CPU_AFFINITY – Bind threads to specific CPUs
    • GOMP_DEBUG – Enable debugging output
    • GOMP_STACKSIZE – Set default thread stack size
    • GOMP_SPINCOUNT – Set the busy-wait spin count
    • GOMP_RTEMS_THREAD_POOLS – Set the RTEMS specific thread pools
  • Enabling OpenACC
  • OpenACC Runtime Library Routines
    • acc_get_num_devices – Get number of devices for given device type
    • acc_set_device_type – Set type of device accelerator to use.
    • acc_get_device_type – Get type of device accelerator to be used.
    • acc_set_device_num – Set device number to use.
    • acc_get_device_num – Get device number to be used.
    • acc_get_property – Get device property.
    • acc_async_test – Test for completion of a specific asynchronous operation.
    • acc_async_test_all – Tests for completion of all asynchronous operations.
    • acc_wait – Wait for completion of a specific asynchronous operation.
    • acc_wait_all – Waits for completion of all asynchronous operations.
    • acc_wait_all_async – Wait for completion of all asynchronous operations.
    • acc_wait_async – Wait for completion of asynchronous operations.
    • acc_init – Initialize runtime for a specific device type.
    • acc_shutdown – Shuts down the runtime for a specific device type.
    • acc_on_device – Whether executing on a particular device
    • acc_malloc – Allocate device memory.
    • acc_free – Free device memory.
    • acc_copyin – Allocate device memory and copy host memory to it.
    • acc_present_or_copyin – If the data is not present on the device, allocate device memory and copy from host memory.
    • acc_create – Allocate device memory and map it to host memory.
    • acc_present_or_create – If the data is not present on the device, allocate device memory and map it to host memory.
    • acc_copyout – Copy device memory to host memory.
    • acc_delete – Free device memory.
    • acc_update_device – Update device memory from mapped host memory.
    • acc_update_self – Update host memory from mapped device memory.
    • acc_map_data – Map previously allocated device memory to host memory.
    • acc_unmap_data – Unmap device memory from host memory.
    • acc_deviceptr – Get device pointer associated with specific host address.
    • acc_hostptr – Get host pointer associated with specific device address.
    • acc_is_present – Indicate whether host variable / array is present on device.
    • acc_memcpy_to_device – Copy host memory to device memory.
    • acc_memcpy_from_device – Copy device memory to host memory.
    • acc_attach – Let device pointer point to device-pointer target.
    • acc_detach – Let device pointer point to host-pointer target.
    • acc_get_current_cuda_device – Get CUDA device handle.
    • acc_get_current_cuda_context – Get CUDA context handle.
    • acc_get_cuda_stream – Get CUDA stream handle.
    • acc_set_cuda_stream – Set CUDA stream handle.
    • acc_prof_register – Register callbacks.
    • acc_prof_unregister – Unregister callbacks.
    • acc_prof_lookup – Obtain inquiry functions.
    • acc_register_library – Library registration.
  • OpenACC Environment Variables
    • ACC_DEVICE_TYPE
    • ACC_DEVICE_NUM
    • ACC_PROFLIB
    • GCC_ACC_NOTIFY
  • CUDA Streams Usage
  • OpenACC Library Interoperability
    • Introduction
    • First invocation: NVIDIA CUBLAS library API
    • First invocation: OpenACC library API
    • OpenACC library and environment variables
  • OpenACC Profiling Interface
    • Implementation Status and Implementation-Defined Behavior
  • OpenMP-Implementation Specifics
    • OpenMP Context Selectors
    • Memory allocation with libmemkind
  • Offload-Target Specifics
    • AMD Radeon (GCN)
    • nvptx
  • The libgomp ABI
    • Implementing MASTER construct
    • Implementing CRITICAL construct
    • Implementing ATOMIC construct
    • Implementing FLUSH construct
    • Implementing BARRIER construct
    • Implementing THREADPRIVATE construct
    • Implementing PRIVATE clause
    • Implementing FIRSTPRIVATE LASTPRIVATE COPYIN and COPYPRIVATE clauses
    • Implementing REDUCTION clause
    • Implementing PARALLEL construct
    • Implementing FOR construct
    • Implementing ORDERED construct
    • Implementing SECTIONS construct
    • Implementing SINGLE construct
    • Implementing OpenACC’s PARALLEL construct
  • Reporting Bugs
  • GNU GENERAL PUBLIC LICENSE
  • GNU Free Documentation License
  • Funding Free Software
  • Indexes and tables
Back to top
Edit this page

omp_get_thread_limit – Maximum number of threads#

Description:

Return the maximum number of threads of the program.

C/C++:

Prototype:

int omp_get_thread_limit(void);

Fortran:

Interface:

integer function omp_get_thread_limit()

See also:

omp_get_max_threads – Maximum number of threads of parallel region, OMP_THREAD_LIMIT – Set the maximum number of threads

Reference:

OpenMP specification v4.5, Section 3.2.14.

Next
omp_get_thread_num – Current thread ID
Previous
omp_get_teams_thread_limit – Maximum number of threads imposed by teams
Copyright © 2006-2022 Free Software Foundation, Inc.
Made with Sphinx and @pradyunsg's Furo
Last updated on Nov 08, 2022