The runtime routines described here are defined by section 3 of the OpenACC
specifications in version 2.6.
They have C linkage, and do not throw exceptions.
Generally, they are available only for the host, with the exception of
acc_on_device, which is available for both the host and the
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.