Mila
Deep Neural Network Library
|
Abstract base class for compute resources. More...
Public Member Functions | |
ComputeResource ()=default | |
Default constructor. | |
ComputeResource (ComputeResource &&)=delete | |
Move constructor (deleted). | |
ComputeResource (const ComputeResource &)=delete | |
Copy constructor (deleted). | |
virtual | ~ComputeResource ()=default |
Virtual destructor. | |
ComputeResource & | operator= (ComputeResource &&)=delete |
Move assignment operator (deleted). | |
ComputeResource & | operator= (const ComputeResource &)=delete |
Copy assignment operator (deleted). | |
Abstract base class for compute resources.
The ComputeResource class serves as a non-copyable, non-movable base class for device-specific compute resource implementations (CPU, CUDA, etc.). It provides a common interface for managing computational resources required for neural network operations.
Derived classes like HostComputeResource and DeviceComputeResource typically extend this class to provide device-specific implementations that manage memory resources and other device capabilities.
|
default |
Default constructor.
Creates an empty compute resource. Derived classes are responsible for initializing any specific resources they manage.
|
delete |
Copy constructor (deleted).
ComputeResource instances cannot be copied because they typically manage unique system resources.
|
delete |
Move constructor (deleted).
ComputeResource instances cannot be moved because they typically represent non-transferable system resources.
|
virtualdefault |
Virtual destructor.
Allows derived classes to properly clean up their resources.
|
delete |
Move assignment operator (deleted).
ComputeResource instances cannot be moved because they typically represent non-transferable system resources.
|
delete |
Copy assignment operator (deleted).
ComputeResource instances cannot be copied because they typically manage unique system resources.