An implementation of DeviceGuardImplInterface which delegates to virtual dispatch on the DeviceGuardImpl registry. More...
#include <VirtualGuardImpl.h>
Public Member Functions | |
VirtualGuardImpl (DeviceType device_type) | |
VirtualGuardImpl (const DeviceGuardImplInterface *impl) | |
DeviceType | type () const override |
Return the type of device managed by this guard implementation. | |
Device | exchangeDevice (Device d) const override |
Set the current device to Device, and return the previous Device. | |
Device | getDevice () const override |
Get the current device. | |
void | setDevice (Device d) const override |
Set the current device to Device. | |
void | uncheckedSetDevice (Device d) const noexceptoverride |
Set the current device to Device, without checking for errors (so, e.g., this can be called from a destructor). | |
Stream | getStream (Device d) const noexceptoverride |
Get the current stream for a given device. | |
Stream | exchangeStream (Stream s) const noexceptoverride |
Set a stream to be the thread local current stream for its device. More... | |
DeviceIndex | deviceCount () const override |
Get the number of devices. | |
Public Member Functions inherited from c10::impl::DeviceGuardImplInterface | |
virtual | ~DeviceGuardImplInterface ()=default |
Intended use of this class is to leak the DeviceGuardImpl at program end. More... | |
An implementation of DeviceGuardImplInterface which delegates to virtual dispatch on the DeviceGuardImpl registry.
Definition at line 12 of file VirtualGuardImpl.h.
Set a stream to be the thread local current stream for its device.
Return the previous stream for that device. You are NOT required to set the current device to match the device of this stream.
Implements c10::impl::DeviceGuardImplInterface.
Definition at line 40 of file VirtualGuardImpl.h.