|
UMPIRE
Umpire: resource management and provision
|
Base class of an operation on memory. More...
#include </home/docs/checkouts/readthedocs.org/user_builds/umpire/checkouts/develop/src/umpire/op/MemoryOperation.hpp>

Public Member Functions | |
| virtual | ~MemoryOperation ()=default |
| virtual void | transform (void *src_ptr, void **dst_ptr, util::AllocationRecord *src_allocation, util::AllocationRecord *dst_allocation, std::size_t length) |
| Transform length bytes of memory from src_ptr to dst_ptr. More... | |
| virtual camp::resources::EventProxy< camp::resources::Resource > | transform_async (void *src_ptr, void **dst_ptr, util::AllocationRecord *src_allocation, util::AllocationRecord *dst_allocation, std::size_t length, camp::resources::Resource &ctx) |
| virtual void | apply (void *src_ptr, util::AllocationRecord *src_allocation, int val, std::size_t length) |
| Apply val to the first length bytes of src_ptr. More... | |
| virtual camp::resources::EventProxy< camp::resources::Resource > | apply_async (void *src_ptr, util::AllocationRecord *src_allocation, int val, std::size_t length, camp::resources::Resource &ctx) |
Base class of an operation on memory.
Neither the transform or apply methods are pure virtual, so inheriting classes only need overload the appropriate method. However, both methods will throw an error if called.
|
virtualdefault |
|
virtual |
Transform length bytes of memory from src_ptr to dst_ptr.
| src_ptr | Pointer to source memory location. |
| dst_ptr | Pointer to destinatino memory location. |
| src_allocation | AllocationRecord of source. |
| dst_allocation | AllocationRecord of destination. |
| length | Number of bytes to transform. |
| util::runtime_error |
Reimplemented in umpire::op::SyclCopyToOperation, umpire::op::SyclCopyFromOperation, umpire::op::SyclCopyOperation, umpire::op::OpenMPTargetCopyOperation, umpire::op::NumaMoveOperation, umpire::op::HostCopyOperation, umpire::op::HipCopyOperation, umpire::op::CudaCopyOperation, umpire::op::HostReallocateOperation, and umpire::op::GenericReallocateOperation.
References UMPIRE_ERROR.
Referenced by transform_async().
|
virtual |
Reimplemented in umpire::op::HipCopyOperation, umpire::op::CudaCopyOperation, and umpire::op::GenericReallocateOperation.
References transform(), UMPIRE_LOG, and umpire::util::message::Warning.
|
virtual |
Apply val to the first length bytes of src_ptr.
| src_ptr | Pointer to source memory location. |
| src_allocation | AllocationRecord of source. |
| val | Value to apply. |
| length | Number of bytes to modify. |
| util::runtime_error |
Reimplemented in umpire::op::HipAdviseOperation, umpire::op::CudaAdviseOperation, umpire::op::SyclMemsetOperation, umpire::op::HipMemsetOperation, umpire::op::CudaMemsetOperation, umpire::op::HostMemsetOperation, umpire::op::SyclMemPrefetchOperation, umpire::op::OpenMPTargetMemsetOperation, and umpire::op::CudaMemPrefetchOperation.
References UMPIRE_ERROR.
Referenced by apply_async().
|
virtual |
Reimplemented in umpire::op::HipMemsetOperation, umpire::op::CudaMemsetOperation, and umpire::op::CudaMemPrefetchOperation.
References apply(), UMPIRE_LOG, and umpire::util::message::Warning.