diff --git a/taichi/rhi/cuda/cuda_caching_allocator.cpp b/taichi/rhi/cuda/cuda_caching_allocator.cpp index e87cbda7c2d9f9..def47e761f9329 100644 --- a/taichi/rhi/cuda/cuda_caching_allocator.cpp +++ b/taichi/rhi/cuda/cuda_caching_allocator.cpp @@ -10,7 +10,7 @@ CudaCachingAllocator::CudaCachingAllocator(LlvmDevice *device) uint64_t *CudaCachingAllocator::allocate( const LlvmDevice::LlvmRuntimeAllocParams ¶ms) { - auto &mem_blocks_ = UnifiedMemoryPool::get_instance().size_set_; + // auto &mem_blocks_ = UnifiedMemoryPool::get_instance().size_set_; uint64_t *ret{nullptr}; auto size_aligned = taichi::iroundup(params.size, taichi_page_size); @@ -34,7 +34,7 @@ uint64_t *CudaCachingAllocator::allocate( } void CudaCachingAllocator::release(size_t sz, uint64_t *ptr) { - auto &mem_blocks_ = UnifiedMemoryPool::get_instance().size_set_; + // auto &mem_blocks_ = UnifiedMemoryPool::get_instance().size_set_; mem_blocks_.insert(std::make_pair(sz, reinterpret_cast(ptr))); } diff --git a/taichi/rhi/cuda/cuda_caching_allocator.h b/taichi/rhi/cuda/cuda_caching_allocator.h index 5dc825e2887e99..64cfda2ddcf476 100644 --- a/taichi/rhi/cuda/cuda_caching_allocator.h +++ b/taichi/rhi/cuda/cuda_caching_allocator.h @@ -19,7 +19,7 @@ class CudaCachingAllocator { void release(size_t sz, uint64_t *ptr); private: - // std::set> mem_blocks_; + std::set> mem_blocks_; LlvmDevice *device_{nullptr}; }; diff --git a/taichi/runtime/llvm/snode_tree_buffer_manager.cpp b/taichi/runtime/llvm/snode_tree_buffer_manager.cpp index ee66f886536274..5f6506cbedffac 100644 --- a/taichi/runtime/llvm/snode_tree_buffer_manager.cpp +++ b/taichi/runtime/llvm/snode_tree_buffer_manager.cpp @@ -4,8 +4,8 @@ namespace taichi::lang { UnifiedMemoryPool &UnifiedMemoryPool::get_instance() { - static UnifiedMemoryPool *mem_pool = new UnifiedMemoryPool; - return *mem_pool; + static UnifiedMemoryPool mem_pool = UnifiedMemoryPool(); + return mem_pool; } void UnifiedMemoryPool::merge_and_insert(Ptr ptr, std::size_t size) {