Expose function to clear memory cache (#1032)

* expose function to clear memory cache

* fix linux build

* fix metal tests
This commit is contained in:
Awni Hannun
2024-04-24 16:48:51 -07:00
committed by GitHub
parent 20a01bbd9f
commit 771575d27b
9 changed files with 31 additions and 2 deletions

View File

@@ -209,6 +209,11 @@ Buffer MetalAllocator::malloc(size_t size, bool allow_swap /* = false */) {
return Buffer{static_cast<void*>(buf)};
}
void MetalAllocator::clear_cache() {
std::unique_lock lk(mutex_);
buffer_cache_.clear();
}
void MetalAllocator::free(Buffer buffer) {
auto buf = static_cast<MTL::Buffer*>(buffer.ptr());
std::unique_lock lk(mutex_);
@@ -242,6 +247,9 @@ size_t get_peak_memory() {
size_t get_cache_memory() {
return allocator().get_cache_memory();
}
void clear_cache() {
return allocator().clear_cache();
}
} // namespace metal