MemoryKernel Class Reference
HiCR
|
HiCR::backend::acl::MemoryKernel Class Referencefinal
#include <memoryKernel.hpp>
Inheritance diagram for HiCR::backend::acl::MemoryKernel:

Public Member Functions | |
MemoryKernel (acl::CommunicationManager *commManager, std::shared_ptr< HiCR::LocalMemorySlot > destination, const size_t destinationOffset, std::shared_ptr< HiCR::LocalMemorySlot > source, const size_t sourceOffset, size_t size) | |
~MemoryKernel () | |
__INLINE__ void | start (const aclrtStream stream) override |
![]() | |
__INLINE__ | ~Kernel ()=default |
Detailed Description
This class represents a replicable Memory Kernel for the acl backend. A Memory Kernel enable the execution of memcopy operations in a stream/sequence of Kernels. Memory Kernels currently supports memcpy operations on the same device, since they are meant to be chained with other Kernels.
Constructor & Destructor Documentation
◆ MemoryKernel()
|
inline |
Constructor for the execution unit class of the acl backend
- Parameters
-
commManager the acl communication manager destination destination pointer destinationOffset destination offset source source pointer sourceOffset source offset size the number of bytes to copy
◆ ~MemoryKernel()
|
inline |
Default destructor
Member Function Documentation
◆ start()
|
inlineoverridevirtual |
Execute the memcpy on the stream
. The operation is just enqueued on the stream, that is, it is async
- Parameters
-
stream ACL stream on which memcpy is executed
Implements HiCR::backend::acl::Kernel.
The documentation for this class was generated from the following file:
- /home/runner/work/HiCR/HiCR/include/hicr/backends/acl/memoryKernel.hpp
Generated by