From b91f46c68cd3fc5bdae9fc08231b89ddf4839589 Mon Sep 17 00:00:00 2001 From: Wenlei Xie Date: Wed, 24 Aug 2022 23:01:49 -0700 Subject: [PATCH] Use rootMemoryPool to construct execContext Summary: It originally use `memory::getDefaultScopedMemoryPool()` since `ExecCtx` constructor expects `unique_ptr`. Since https://github.com/facebookincubator/velox/commit/15eeddb8e7d50de39afdbde4049f9a1310edf5e5, `ExecCtx` now expects `MemoryPool*`, so we can use `&velox::memory::getProcessDefaultMemoryManager().getRoot()` returned by `TorchArrowGlobalStatic::rootMemoryPool`. This makes TorchArrow always use this process default root memory pool. Differential Revision: D39010989 fbshipit-source-id: ef9aa702d5649a73bbcd5d9cce910a2573e4195f --- csrc/velox/column.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/csrc/velox/column.cpp b/csrc/velox/column.cpp index 1e26f23a2..c7a4ce312 100644 --- a/csrc/velox/column.cpp +++ b/csrc/velox/column.cpp @@ -553,9 +553,9 @@ velox::core::QueryCtx& TorchArrowGlobalStatic::queryContext() { } velox::core::ExecCtx& TorchArrowGlobalStatic::execContext() { - static auto pool = velox::memory::getDefaultScopedMemoryPool(); static velox::core::ExecCtx execContext( - pool.get(), &TorchArrowGlobalStatic::queryContext()); + TorchArrowGlobalStatic::rootMemoryPool(), + &TorchArrowGlobalStatic::queryContext()); return execContext; }