6 #include <hip/hip_runtime.h>
16 for(uint64_t i = threadIdx.x; i < buffer_element_size; i += blockDim.x)
83 void ToDevice(
const void* p,
const std::size_t cpySize)
const
88 hipMemcpy(
mpDeviceBuf,
const_cast<void*
>(p), cpySize, hipMemcpyHostToDevice));
111 template <
typename T>
116 std::size_t host_elements = (cpySize +
sizeof(T) - 1) /
sizeof(T);
124 template <
typename T>
137 template <
typename T>
144 throw std::runtime_error(
"wrong! not entire DeviceMem will be set");
159 catch(std::runtime_error& re)
161 std::cerr << re.what() << std::endl;
#define HIP_CHECK_ERROR(retval_or_funcall)
Definition: hip_check_error.hpp:22
Definition: cluster_descriptor.hpp:13
__global__ void set_buffer_value(T *p, T x, uint64_t buffer_element_size)
Definition: device_memory.hpp:14
Container for storing data in GPU device memory.
Definition: device_memory.hpp:27
DeviceMem()
Definition: device_memory.hpp:28
DeviceMem(std::size_t mem_size)
Definition: device_memory.hpp:29
void SetValue(T x) const
Definition: device_memory.hpp:138
void ToDevice(const void *p, const std::size_t cpySize) const
Definition: device_memory.hpp:83
void Realloc(std::size_t mem_size)
Definition: device_memory.hpp:53
std::size_t mMemSize
Definition: device_memory.hpp:167
DeviceMem(const HostTensor< T > &t)
Definition: device_memory.hpp:41
void * GetDeviceBuffer() const
Definition: device_memory.hpp:69
void FromDevice(void *p) const
Definition: device_memory.hpp:91
void SetZero() const
Definition: device_memory.hpp:130
void FromDevice(void *p, const std::size_t cpySize) const
Definition: device_memory.hpp:102
HostTensor< T > ToHost()
Definition: device_memory.hpp:125
std::size_t GetBufferSize() const
Definition: device_memory.hpp:70
~DeviceMem()
Definition: device_memory.hpp:151
HostTensor< T > ToHost(std::size_t cpySize)
Definition: device_memory.hpp:112
void * mpDeviceBuf
Definition: device_memory.hpp:166
void ToDevice(const void *p) const
Definition: device_memory.hpp:71
Definition: host_tensor.hpp:279
Data::pointer data()
Definition: host_tensor.hpp:523