ComputeManager Class Reference
HiCR
|
#include <computeManager.hpp>

Public Member Functions | |
ComputeManager () | |
~ComputeManager () override=default | |
__INLINE__ std::shared_ptr< HiCR::ExecutionUnit > | createExecutionUnit (const std::vector< std::shared_ptr< ascend::Kernel > > &kernelOperations) |
__INLINE__ std::unique_ptr< HiCR::ExecutionState > | createExecutionState (std::shared_ptr< HiCR::ExecutionUnit > executionUnit, void *const argument=nullptr) const override |
__INLINE__ std::unique_ptr< HiCR::ProcessingUnit > | createProcessingUnit (std::shared_ptr< HiCR::ComputeResource > resource) const override |
![]() | |
virtual std::unique_ptr< HiCR::ProcessingUnit > | createProcessingUnit (std::shared_ptr< HiCR::ComputeResource > resource) const =0 |
virtual std::unique_ptr< HiCR::ExecutionState > | createExecutionState (std::shared_ptr< HiCR::ExecutionUnit > executionUnit, void *const argument=nullptr) const =0 |
__INLINE__ void | initialize (std::unique_ptr< HiCR::ProcessingUnit > &processingUnit) |
__INLINE__ void | start (std::unique_ptr< HiCR::ProcessingUnit > &processingUnit, std::unique_ptr< HiCR::ExecutionState > &executionState) |
__INLINE__ void | suspend (std::unique_ptr< HiCR::ProcessingUnit > &processingUnit) |
__INLINE__ void | resume (std::unique_ptr< HiCR::ProcessingUnit > &processingUnit) |
__INLINE__ void | terminate (std::unique_ptr< HiCR::ProcessingUnit > &processingUnit) |
__INLINE__ void | await (std::unique_ptr< HiCR::ProcessingUnit > &processingUnit) |
Protected Member Functions | |
__INLINE__ void | initializeImpl (std::unique_ptr< HiCR::ProcessingUnit > &processingUnit) override |
__INLINE__ void | startImpl (std::unique_ptr< HiCR::ProcessingUnit > &processingUnit, std::unique_ptr< HiCR::ExecutionState > &executionState) override |
__INLINE__ void | suspendImpl (std::unique_ptr< HiCR::ProcessingUnit > &processingUnit) override |
__INLINE__ void | resumeImpl (std::unique_ptr< HiCR::ProcessingUnit > &processingUnit) override |
__INLINE__ void | terminateImpl (std::unique_ptr< HiCR::ProcessingUnit > &processingUnit) override |
__INLINE__ void | awaitImpl (std::unique_ptr< HiCR::ProcessingUnit > &processingUnit) override |
![]() | |
virtual void | initializeImpl (std::unique_ptr< HiCR::ProcessingUnit > &processingUnit)=0 |
virtual void | startImpl (std::unique_ptr< HiCR::ProcessingUnit > &processingUnit, std::unique_ptr< HiCR::ExecutionState > &executionState)=0 |
virtual void | suspendImpl (std::unique_ptr< HiCR::ProcessingUnit > &processingUnit)=0 |
virtual void | resumeImpl (std::unique_ptr< HiCR::ProcessingUnit > &processingUnit)=0 |
virtual void | terminateImpl (std::unique_ptr< HiCR::ProcessingUnit > &processingUnit)=0 |
virtual void | awaitImpl (std::unique_ptr< HiCR::ProcessingUnit > &processingUnit)=0 |
Detailed Description
Implementation of the HiCR Ascend backend compute manager.
It stores the processing units detected by Ascend Computing Language.
Constructor & Destructor Documentation
◆ ComputeManager()
|
inline |
Constructor for the Compute Manager class for the Ascend backend
◆ ~ComputeManager()
|
overridevirtualdefault |
Default destructor
Reimplemented from HiCR::ComputeManager.
Member Function Documentation
◆ awaitImpl()
|
inlineoverrideprotected |
Internal implementation of awaitImpl
- Parameters
-
processingUnit the processing unit to operate on
◆ createExecutionState()
|
inlineoverride |
Creates an execution state using the device context information and the exection unit to run on the Ascend
- Parameters
-
[in] executionUnit execution Unit to launch on the ascend [in] argument argument (not required by ascend)
- Returns
- return a unique pointer to the newly created Execution State
◆ createExecutionUnit()
|
inline |
Creates an execution unit given a stream/vector of kernelOperations
to be executed on the device
- Parameters
-
[in] kernelOperations the sequence of kernel operations to executed
- Returns
- a pointer to the new execution unit
◆ createProcessingUnit()
|
inlineoverride |
Create a new processing unit for the specified resource
(device)
- Parameters
-
[in] resource the deviceId in which the processing unit is to be created
- Returns
- a pointer to the new processing unit
◆ initializeImpl()
|
inlineoverrideprotected |
Internal implementation of initailizeImpl
- Parameters
-
processingUnit the processing unit to operate on
◆ resumeImpl()
|
inlineoverrideprotected |
Internal implementation of resumeImpl
- Parameters
-
processingUnit the processing unit to operate on
◆ startImpl()
|
inlineoverrideprotected |
Internal implementation of initailizeImpl
- Parameters
-
processingUnit the processing unit to operate on executionState the execution state to operate on
◆ suspendImpl()
|
inlineoverrideprotected |
Internal implementation of suspendImpl
- Parameters
-
processingUnit the processing unit to operate on
◆ terminateImpl()
|
inlineoverrideprotected |
Internal implementation of terminateImpl
- Parameters
-
processingUnit the processing unit to operate on
The documentation for this class was generated from the following file:
- /home/runner/work/HiCR/HiCR/include/hicr/backends/ascend/computeManager.hpp
Generated by