omp_get_active_level
– Number of parallel regionsomp_get_ancestor_thread_num
– Ancestor thread IDomp_get_cancellation
– Whether cancellation support is enabledomp_get_default_device
– Get the default device for target regionsomp_get_dynamic
– Dynamic teams settingomp_get_level
– Obtain the current nesting levelomp_get_max_active_levels
– Maximum number of active regionsomp_get_max_task_priority
– Maximum priority valueomp_get_max_threads
– Maximum number of threads of parallel regionomp_get_nested
– Nested parallel regionsomp_get_num_devices
– Number of target devicesomp_get_num_procs
– Number of processors onlineomp_get_num_teams
– Number of teamsomp_get_num_threads
– Size of the active teamomp_get_proc_bind
– Whether theads may be moved between CPUsomp_get_schedule
– Obtain the runtime scheduling methodomp_get_team_num
– Get team numberomp_get_team_size
– Number of threads in a teamomp_get_thread_limit
– Maximum number of threadsomp_get_thread_num
– Current thread IDomp_in_parallel
– Whether a parallel region is activeomp_in_final
– Whether in final or included task regionomp_is_initial_device
– Whether executing on the host deviceomp_set_default_device
– Set the default device for target regionsomp_set_dynamic
– Enable/disable dynamic teamsomp_set_max_active_levels
– Limits the number of active parallel regionsomp_set_nested
– Enable/disable nested parallel regionsomp_set_num_threads
– Set upper team size limitomp_set_schedule
– Set the runtime scheduling methodomp_init_lock
– Initialize simple lockomp_set_lock
– Wait for and set simple lockomp_test_lock
– Test and set simple lock if availableomp_unset_lock
– Unset simple lockomp_destroy_lock
– Destroy simple lockomp_init_nest_lock
– Initialize nested lockomp_set_nest_lock
– Wait for and set nested lockomp_test_nest_lock
– Test and set nested lock if availableomp_unset_nest_lock
– Unset nested lockomp_destroy_nest_lock
– Destroy nested lockomp_get_wtick
– Get timer precisionomp_get_wtime
– Elapsed wall clock timeOMP_CANCELLATION
– Set whether cancellation is activatedOMP_DISPLAY_ENV
– Show OpenMP version and environment variablesOMP_DEFAULT_DEVICE
– Set the device used in target regionsOMP_DYNAMIC
– Dynamic adjustment of threadsOMP_MAX_ACTIVE_LEVELS
– Set the maximum number of nested parallel regionsOMP_MAX_TASK_PRIORITY
– Set the maximum priorityOMP_NESTED
– Nested parallel regionsOMP_NUM_THREADS
– Specifies the number of threads to useOMP_PROC_BIND
– Whether theads may be moved between CPUsOMP_PLACES
– Specifies on which CPUs the theads should be placedOMP_STACKSIZE
– Set default thread stack sizeOMP_SCHEDULE
– How threads are scheduledOMP_THREAD_LIMIT
– Set the maximum number of threadsOMP_WAIT_POLICY
– How waiting threads are handledGOMP_CPU_AFFINITY
– Bind threads to specific CPUsGOMP_DEBUG
– Enable debugging outputGOMP_STACKSIZE
– Set default thread stack sizeGOMP_SPINCOUNT
– Set the busy-wait spin countGOMP_RTEMS_THREAD_POOLS
– Set the RTEMS specific thread poolsacc_get_num_devices
– Get number of devices for given device typeacc_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_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 deviceacc_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_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.Next: Enabling OpenMP, Up: (dir) [Contents][Index]
This manual documents the usage of libgomp, the GNU Offloading and Multi Processing Runtime Library. This includes the GNU implementation of the OpenMP Application Programming Interface (API) for multi-platform shared-memory parallel programming in C/C++ and Fortran, and the GNU implementation of the OpenACC Application Programming Interface (API) for offloading of code to accelerator devices in C/C++ and Fortran.
Originally, libgomp implemented the GNU OpenMP Runtime Library. Based on this, support for OpenACC and offloading (both OpenACC and OpenMP 4’s target construct) has been added later on, and the library’s name changed to GNU Offloading and Multi Processing Runtime Library.
• Enabling OpenMP: | How to enable OpenMP for your applications. | |
• Runtime Library Routines: | The OpenMP runtime application programming interface. | |
• Environment Variables: | Influencing runtime behavior with environment variables. | |
• Enabling OpenACC: | How to enable OpenACC for your applications. | |
• OpenACC Runtime Library Routines: | The OpenACC runtime application programming interface. | |
• OpenACC Environment Variables: | Influencing OpenACC runtime behavior with environment variables. | |
• CUDA Streams Usage: | Notes on the implementation of asynchronous operations. | |
• OpenACC Library Interoperability: | OpenACC library interoperability with the NVIDIA CUBLAS library. | |
• The libgomp ABI: | Notes on the external ABI presented by libgomp. | |
• Reporting Bugs: | How to report bugs in the GNU Offloading and Multi Processing Runtime Library. | |
• Copying: | GNU general public license says how you can copy and share libgomp. | |
• GNU Free Documentation License: | How you can copy and share this manual. | |
• Funding: | How to help assure continued work for free software. | |
• Library Index: | Index of this documentation. |
Next: Enabling OpenMP, Up: (dir) [Contents][Index]