Template Class CudaGetAttributeOperation¶
Defined in File CudaGetAttributeOperation.hpp
Inheritance Relationships¶
Base Type¶
public umpire::op::MemoryOperation(Class MemoryOperation)
Class Documentation¶
-
template<cudaMemRangeAttribute
ATTRIBUTE>
classumpire::op::CudaGetAttributeOperation: public umpire::op::MemoryOperation¶ Copy operation to move data from CPU to NVIDIA GPU memory.
Public Functions
-
bool
check_apply(void *src_ptr, umpire::util::AllocationRecord *src_allocation, int val, std::size_t length) override¶ Uses cudaMemRangeGetAtribute to check attributes of a CUDA memory range.
- Parameters
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.
- Exceptions
-
void
transform(void *src_ptr, void **dst_ptr, util::AllocationRecord *src_allocation, util::AllocationRecord *dst_allocation, std::size_t length)¶ Transfrom length bytes of memory from src_ptr to dst_ptr.
- Parameters
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.
- Exceptions
-
camp::resources::Event
transform_async(void *src_ptr, void **dst_ptr, util::AllocationRecord *src_allocation, util::AllocationRecord *dst_allocation, std::size_t length, camp::resources::Resource &ctx)¶
-
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.
- Parameters
src_ptr: Pointer to source memory location.src_allocation: AllocationRecord of source.val: Value to apply.length: Number of bytes to modify.
- Exceptions
-
camp::resources::Event
apply_async(void *src_ptr, util::AllocationRecord *src_allocation, int val, std::size_t length, camp::resources::Resource &ctx)¶
-
bool