BioDynaMo  v1.05.0-137fdb15
Public Member Functions | Private Attributes | List of all members
bdm::MemoryManager Class Reference

#include <memory_manager.h>

Collaboration diagram for bdm::MemoryManager:

Public Member Functions

 MemoryManager (uint64_t aligned_pages_shift, real_t growth_rate, uint64_t max_mem_per_thread_factor)
 ~MemoryManager ()
void * New (std::size_t size)
void Delete (void *p)
void SetIgnoreDelete (bool value)

Private Attributes

real_t growth_rate_
uint64_t max_mem_per_thread_factor_
uint64_t page_size_
uint64_t page_shift_
uint64_t aligned_pages_shift_
uint64_t aligned_pages_
uint64_t size_n_pages_
uint64_t num_threads_
bool ignore_delete_ = false
UnorderedFlatmap< std::size_t, memory_manager_detail::PoolAllocator * > allocators_
Spinlock lock_

Detailed Description

Definition at line 149 of file memory_manager.h.

Constructor & Destructor Documentation

◆ MemoryManager()

bdm::MemoryManager::MemoryManager ( uint64_t  aligned_pages_shift,
real_t  growth_rate,
uint64_t  max_mem_per_thread_factor 

Definition at line 332 of file

◆ ~MemoryManager()

bdm::MemoryManager::~MemoryManager ( )

Definition at line 352 of file

Member Function Documentation

◆ Delete()

void bdm::MemoryManager::Delete ( void *  p)

Definition at line 389 of file

◆ New()

void * bdm::MemoryManager::New ( std::size_t  size)

Definition at line 358 of file

◆ SetIgnoreDelete()

void bdm::MemoryManager::SetIgnoreDelete ( bool  value)

Definition at line 402 of file

Member Data Documentation

◆ aligned_pages_

uint64_t bdm::MemoryManager::aligned_pages_

Definition at line 168 of file memory_manager.h.

◆ aligned_pages_shift_

uint64_t bdm::MemoryManager::aligned_pages_shift_

Definition at line 167 of file memory_manager.h.

◆ allocators_

UnorderedFlatmap<std::size_t, memory_manager_detail::PoolAllocator*> bdm::MemoryManager::allocators_

Definition at line 174 of file memory_manager.h.

◆ growth_rate_

real_t bdm::MemoryManager::growth_rate_

Definition at line 163 of file memory_manager.h.

◆ ignore_delete_

bool bdm::MemoryManager::ignore_delete_ = false

Definition at line 171 of file memory_manager.h.

◆ lock_

Spinlock bdm::MemoryManager::lock_

Definition at line 176 of file memory_manager.h.

◆ max_mem_per_thread_factor_

uint64_t bdm::MemoryManager::max_mem_per_thread_factor_

Definition at line 164 of file memory_manager.h.

◆ num_threads_

uint64_t bdm::MemoryManager::num_threads_

Definition at line 170 of file memory_manager.h.

◆ page_shift_

uint64_t bdm::MemoryManager::page_shift_

Definition at line 166 of file memory_manager.h.

◆ page_size_

uint64_t bdm::MemoryManager::page_size_

Definition at line 165 of file memory_manager.h.

◆ size_n_pages_

uint64_t bdm::MemoryManager::size_n_pages_

Definition at line 169 of file memory_manager.h.

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