UMPIRE
Umpire: resource management and provision
umpire::op::OpenMPTargetCopyOperation Class Reference

#include </home/docs/checkouts/readthedocs.org/user_builds/umpire/checkouts/develop/src/umpire/op/OpenMPTargetCopyOperation.hpp>

Inheritance diagram for umpire::op::OpenMPTargetCopyOperation:

Public Member Functions

 OpenMPTargetCopyOperation ()=default
 
void transform (void *src_ptr, void **dst_ptr, umpire::util::AllocationRecord *src_allocation, umpire::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::Resourcetransform_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::Resourceapply_async (void *src_ptr, util::AllocationRecord *src_allocation, int val, std::size_t length, camp::resources::Resource &ctx)
 

Constructor & Destructor Documentation

◆ OpenMPTargetCopyOperation()

umpire::op::OpenMPTargetCopyOperation::OpenMPTargetCopyOperation ( )
default

Member Function Documentation

◆ transform()

void umpire::op::OpenMPTargetCopyOperation::transform ( void *  src_ptr,
void **  dst_ptr,
umpire::util::AllocationRecord src_allocation,
umpire::util::AllocationRecord dst_allocation,
std::size_t  length 
)
virtual

Transform length bytes of memory from src_ptr to dst_ptr.

Parameters
src_ptrPointer to source memory location.
dst_ptrPointer to destinatino memory location.
src_allocationAllocationRecord of source.
dst_allocationAllocationRecord of destination.
lengthNumber of bytes to transform.
Exceptions
util::runtime_error

Reimplemented from umpire::op::MemoryOperation.

References umpire::util::message::Debug, umpire::strategy::AllocationStrategy::getTraits(), umpire::MemoryResourceTraits::id, umpire::util::AllocationRecord::ptr, umpire::util::AllocationRecord::strategy, and UMPIRE_LOG.

◆ transform_async()

camp::resources::EventProxy< camp::resources::Resource > umpire::op::MemoryOperation::transform_async ( void *  src_ptr,
void **  dst_ptr,
util::AllocationRecord src_allocation,
util::AllocationRecord dst_allocation,
std::size_t  length,
camp::resources::Resource ctx 
)
virtualinherited

◆ apply()

void umpire::op::MemoryOperation::apply ( void *  src_ptr,
util::AllocationRecord src_allocation,
int  val,
std::size_t  length 
)
virtualinherited

Apply val to the first length bytes of src_ptr.

Parameters
src_ptrPointer to source memory location.
src_allocationAllocationRecord of source.
valValue to apply.
lengthNumber of bytes to modify.
Exceptions
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 umpire::op::MemoryOperation::apply_async().

◆ apply_async()

camp::resources::EventProxy< camp::resources::Resource > umpire::op::MemoryOperation::apply_async ( void *  src_ptr,
util::AllocationRecord src_allocation,
int  val,
std::size_t  length,
camp::resources::Resource ctx 
)
virtualinherited