Pearu Peterson created ARROW-4861:
-------------------------------------
Summary: [C++] Introduce MemoryPool::Memset method.
Key: ARROW-4861
URL: https://issues.apache.org/jira/browse/ARROW-4861
Project: Apache Arrow
Issue Type: Improvement
Components: C++
Reporter: Pearu Peterson
Assignee: Pearu Peterson
One can define a device MemoryPool subclass (say, CudaMemoryPool) that can be
used for creating a Buffer representing a device memory. The prerequisite for
this to work is that all Buffer memory operations (allocation, deallocation,
reallocation, etc) can be redefined to use the corresponding device specific
operations. No host specific operation would be allowed as the device memory
would be inaccesible from host.
Currently, this is almost possible. Namely, `Buffer::ZeroPadding` uses host
specific `memset` function for zero-padding the allocated Buffer memory.
Suggestion: introduce a new method `MemoryPool::Memset` that
`Buffer::ZeroPadding` can use.
The Memset method would use `memset` by default but device specific MemoryPool
subclasses can override the method to use device driver version of the memset
function.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)