Caffe2 - C++ API
A deep learning, cross platform ML framework
Public Member Functions
c10::impl::VirtualGuardImpl Class Referencefinal

An implementation of DeviceGuardImplInterface which delegates to virtual dispatch on the DeviceGuardImpl registry. More...

#include <VirtualGuardImpl.h>

Inheritance diagram for c10::impl::VirtualGuardImpl:
c10::impl::DeviceGuardImplInterface

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...
 

Detailed Description

An implementation of DeviceGuardImplInterface which delegates to virtual dispatch on the DeviceGuardImpl registry.

Definition at line 12 of file VirtualGuardImpl.h.

Member Function Documentation

Stream c10::impl::VirtualGuardImpl::exchangeStream ( Stream  ) const
inlineoverridevirtualnoexcept

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.


The documentation for this class was generated from the following file: