MCPcopy Create free account
hub / github.com/a2flo/floor / copy

Method copy

compute/opencl/opencl_buffer.cpp:159–172  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

157}
158
159void opencl_buffer::copy(const compute_queue& cqueue, const compute_buffer& src,
160 const size_t size_, const size_t src_offset, const size_t dst_offset) {
161 if(buffer == nullptr) return;
162
163 // use min(src size, dst size) as the default size if no size is specified
164 const size_t src_size = src.get_size();
165 const size_t copy_size = (size_ == 0 ? std::min(src_size, size) : size_);
166 if(!copy_check(size, src_size, copy_size, dst_offset, src_offset)) return;
167
168 // TODO: blocking flag?
169 clEnqueueCopyBuffer((cl_command_queue)const_cast<void*>(cqueue.get_queue_ptr()),
170 ((const opencl_buffer&)src).get_cl_buffer(), buffer, src_offset, dst_offset, copy_size,
171 0, nullptr, nullptr);
172}
173
174bool opencl_buffer::fill(const compute_queue& cqueue,
175 const void* pattern, const size_t& pattern_size,

Callers

nothing calls this directly

Calls 2

minFunction · 0.50
get_queue_ptrMethod · 0.45

Tested by

no test coverage detected