A variant of OptionalDeviceGuard that is specialized for CUDA. More...
#include <CUDAGuard.h>
Public Member Functions | |
OptionalCUDAGuard () | |
Create an uninitialized OptionalCUDAGuard. | |
OptionalCUDAGuard (optional< Device > device_opt) | |
Set the current CUDA device to the passed Device, if it is not nullopt. | |
OptionalCUDAGuard (optional< DeviceIndex > device_index_opt) | |
Set the current CUDA device to the passed device index, if it is not nullopt. | |
OptionalCUDAGuard (const OptionalCUDAGuard &)=delete | |
OptionalCUDAGuard & | operator= (const OptionalCUDAGuard &)=delete |
OptionalCUDAGuard (OptionalCUDAGuard &&other)=delete | |
OptionalCUDAGuard & | operator= (OptionalCUDAGuard &&other)=delete |
void | set_device (Device device) |
Sets the CUDA device to the given device, initializing the guard if it is not already initialized. More... | |
void | reset_device (Device device) |
Sets the CUDA device to the given device, initializing the guard if it is not already initialized. More... | |
void | set_index (DeviceIndex device_index) |
Sets the CUDA device to the given device index, initializing the guard if it is not already initialized. More... | |
optional< Device > | original_device () const |
Returns the device that was set immediately prior to initialization of the guard, or nullopt if the guard is uninitialized. More... | |
optional< Device > | current_device () const |
Returns the most recent device that was set using this device guard, either from construction, or via set_device, if the guard is initialized, or nullopt if the guard is uninitialized. More... | |
void | reset () |
Restore the original CUDA device, resetting this guard to uninitialized state. | |
A variant of OptionalDeviceGuard that is specialized for CUDA.
See CUDAGuard for when you can use this.
Definition at line 65 of file CUDAGuard.h.
Returns the most recent device that was set using this device guard, either from construction, or via set_device, if the guard is initialized, or nullopt if the guard is uninitialized.
Definition at line 106 of file CUDAGuard.h.
Returns the device that was set immediately prior to initialization of the guard, or nullopt if the guard is uninitialized.
Definition at line 101 of file CUDAGuard.h.
|
inline |
Sets the CUDA device to the given device, initializing the guard if it is not already initialized.
Errors if the given device is not a CUDA device. (This method is provided for uniformity with OptionalDeviceGuard).
Definition at line 93 of file CUDAGuard.h.
|
inline |
Sets the CUDA device to the given device, initializing the guard if it is not already initialized.
Errors if the given device is not a CUDA device.
Definition at line 88 of file CUDAGuard.h.
|
inline |
Sets the CUDA device to the given device index, initializing the guard if it is not already initialized.
Definition at line 97 of file CUDAGuard.h.