cuda-api-wrappers
Thin C++-flavored wrappers for the CUDA Runtime API
|
Settings and actions related to the interaction of multiple devices (adding on those already in device.hpp) More...
#include "current_context.hpp"
Go to the source code of this file.
Namespaces | |
cuda | |
Definitions and functionality wrapping CUDA APIs. | |
cuda::device | |
Definitions and functionality related to CUDA devices (not including the device wrapper type cuda::device_t itself) | |
cuda::device::peer_to_peer | |
API functions and definitions relating to communications among peer CUDA GPU devices on the same system. | |
cuda::context::peer_to_peer | |
API functions and definitions relating to communications among "peer" contexts on the same system, which may possibly regard different CUDA devices. | |
Functions | |
void | cuda::context::current::peer_to_peer::enable_access_to (const context_t &peer_context) |
Allows subsequently-executed memory operations and kernels to access the memory associated with the specified peer context - if peer-to-peer access is supported between the two devices. | |
void | cuda::context::current::peer_to_peer::disable_access_to (const context_t &peer_context) |
Prevents subsequently-executed memory operations and kernels from accessing the memory associated with the specified peer context - if peer-to-peer access is supported between the two devices. | |
bool | cuda::context::peer_to_peer::can_access (context_t accessor, context_t peer) |
Check if a CUDA context can access the global memory of another CUDA context. | |
void | cuda::context::peer_to_peer::enable_access (context_t accessor, context_t peer) |
Enable access by one CUDA device to the global memory of another. More... | |
void | cuda::context::peer_to_peer::disable_access (context_t accessor, context_t peer) |
Disable access by one CUDA device to the global memory of another. More... | |
void | cuda::context::peer_to_peer::enable_bidirectional_access (context_t first, context_t second) |
Enable access both by the first to the second context and the other way around. | |
void | cuda::context::peer_to_peer::disable_bidirectional_access (context_t first, context_t second) |
Disable access both by the first to the second context and the other way around. | |
bool | cuda::device::peer_to_peer::can_access (const device_t &accessor, const device_t &peer) |
Determine whether one CUDA device can access the global memory of another CUDA device. More... | |
void | cuda::device::peer_to_peer::enable_access (const device_t &accessor, const device_t &peer) |
Enable access by one CUDA device to the global memory of another. More... | |
void | cuda::device::peer_to_peer::disable_access (const device_t &accessor, const device_t &peer) |
Disable access by one CUDA device to the global memory of another. More... | |
bool | cuda::device::peer_to_peer::can_access_each_other (const device_t &first, const device_t &second) |
Determine whether two CUDA devices can currently access each other. | |
void | cuda::device::peer_to_peer::enable_bidirectional_access (const device_t &first, const device_t &second) |
Enable access both by the first to the second device and the other way around. | |
void | cuda::device::peer_to_peer::disable_bidirectional_access (const device_t &first, const device_t &second) |
Disable access both by the first to the second device and the other way around. | |
attribute_value_t | cuda::device::peer_to_peer::get_attribute (attribute_t attribute, const device_t &first, const device_t &second) |
Get one of the numeric attributes for a(n ordered) pair of devices, relating to their interaction. More... | |
Variables | |
constexpr const attribute_t | cuda::device::peer_to_peer::link_performance_rank = CU_DEVICE_P2P_ATTRIBUTE_PERFORMANCE_RANK |
Aliases for CUDA driver GPU attribute codes. More... | |
constexpr const attribute_t | cuda::device::peer_to_peer::access_support = CU_DEVICE_P2P_ATTRIBUTE_ACCESS_SUPPORTED |
1 if access is supported, 0 otherwise | |
constexpr const attribute_t | cuda::device::peer_to_peer::native_atomics_support = CU_DEVICE_P2P_ATTRIBUTE_NATIVE_ATOMIC_SUPPORTED |
1 if the first device can perform native atomic operations on the second device, 0 otherwise | |
Settings and actions related to the interaction of multiple devices (adding on those already in device.hpp)