lidavidm commented on a change in pull request #12116:
URL: https://github.com/apache/arrow/pull/12116#discussion_r808372492
##########
File path: cpp/src/arrow/device.h
##########
@@ -223,4 +236,55 @@ class ARROW_EXPORT CPUMemoryManager : public MemoryManager
{
ARROW_EXPORT
std::shared_ptr<MemoryManager> default_cpu_memory_manager();
+/// A memory manager that uses the immutable zeros interface of the given
memory pool,
+/// rather than the normal mutable buffer interface.
Review comment:
I guess the memory manager APIs are fairly new/unused and the contract
hasn't been pinned down here. That said, I also don't see the issue with
sticking to the regular CPU device/memory manager even for immutable buffers.
(After all, regular buffers can also be immutable already.) And to me
'managing' means 'can read the data backed by the buffer', not necessarily
'will allocate you exactly the same buffer'. (For instance: PyBuffer is part of
the CPU memory manager, since it can read the data in that buffer, even if it
can't allocate you a new Python object.)
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]