Blender  V3.3
Public Member Functions | Static Public Attributes | List of all members
blender::gpu::MTLScratchBufferManager Class Reference

#include <mtl_memory.hh>

Public Member Functions

 MTLScratchBufferManager (MTLContext &context)
 
MTLScratchBufferManager and MTLCircularBuffer implementation.
 ~MTLScratchBufferManager ()
 
void init ()
 
void free ()
 
MTLTemporaryBuffer scratch_buffer_allocate_range (uint64_t alloc_size)
 
MTLTemporaryBuffer scratch_buffer_allocate_range_aligned (uint64_t alloc_size, uint alignment)
 
void ensure_increment_scratch_buffer ()
 
void flush_active_scratch_buffer ()
 

Static Public Attributes

static constexpr uint mtl_scratch_buffer_max_size_ = 128 * 1024 * 1024
 
static constexpr uint mtl_scratch_buffer_initial_size_ = 16 * 1024 * 1024
 

Detailed Description

Definition at line 429 of file mtl_memory.hh.

Constructor & Destructor Documentation

◆ MTLScratchBufferManager()

blender::gpu::MTLScratchBufferManager::MTLScratchBufferManager ( MTLContext context)
inline

Definition at line 458 of file mtl_memory.hh.

◆ ~MTLScratchBufferManager()

blender::gpu::MTLScratchBufferManager::~MTLScratchBufferManager ( )

Definition at line 622 of file mtl_memory.mm.

References free().

Member Function Documentation

◆ ensure_increment_scratch_buffer()

void blender::gpu::MTLScratchBufferManager::ensure_increment_scratch_buffer ( )

◆ flush_active_scratch_buffer()

void blender::gpu::MTLScratchBufferManager::flush_active_scratch_buffer ( )

◆ free()

void blender::gpu::MTLScratchBufferManager::free ( )

Definition at line 645 of file mtl_memory.mm.

Referenced by ~MTLScratchBufferManager().

◆ init()

void blender::gpu::MTLScratchBufferManager::init ( )

◆ scratch_buffer_allocate_range()

MTLTemporaryBuffer blender::gpu::MTLScratchBufferManager::scratch_buffer_allocate_range ( uint64_t  alloc_size)

Definition at line 657 of file mtl_memory.mm.

References scratch_buffer_allocate_range_aligned().

◆ scratch_buffer_allocate_range_aligned()

MTLTemporaryBuffer blender::gpu::MTLScratchBufferManager::scratch_buffer_allocate_range_aligned ( uint64_t  alloc_size,
uint  alignment 
)

Member Data Documentation

◆ mtl_scratch_buffer_initial_size_

constexpr uint blender::gpu::MTLScratchBufferManager::mtl_scratch_buffer_initial_size_ = 16 * 1024 * 1024
staticconstexpr

Definition at line 444 of file mtl_memory.hh.

Referenced by init().

◆ mtl_scratch_buffer_max_size_

constexpr uint blender::gpu::MTLScratchBufferManager::mtl_scratch_buffer_max_size_ = 128 * 1024 * 1024
staticconstexpr

The documentation for this class was generated from the following files: