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