ONE - On-device Neural Engine
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
onert::backend::train::DisposableMemoryManager Class Reference

#include <MemoryManager.h>

Public Member Functions

 DisposableMemoryManager ()
 
void allocate (void)
 
uint8_t * getBuffer (const DisposableTensorIndex &ind) const
 
void deallocate (void)
 
void claimPlan (const DisposableTensorIndex &ind, uint32_t size)
 
void releasePlan (const DisposableTensorIndex &ind)
 
std::shared_ptr< basic::AllocatorgetMemAlloc ()
 

Detailed Description

Definition at line 44 of file MemoryManager.h.

Constructor & Destructor Documentation

◆ DisposableMemoryManager()

onert::backend::train::DisposableMemoryManager::DisposableMemoryManager ( )

Definition at line 52 of file MemoryManager.cc.

52 : _mem_planner{createMemoryPlanner()}
53{
54 // DO NOTHING
55}

Member Function Documentation

◆ allocate()

void onert::backend::train::DisposableMemoryManager::allocate ( void  )

Definition at line 79 of file MemoryManager.cc.

80{
81 _mem_alloc = std::make_shared<basic::Allocator>(_mem_planner->capacity());
82 assert(_mem_alloc->base());
83}

◆ claimPlan()

void onert::backend::train::DisposableMemoryManager::claimPlan ( const DisposableTensorIndex ind,
uint32_t  size 
)

Definition at line 69 of file MemoryManager.cc.

70{
71 _mem_planner->claim(ind, size);
72}
int32_t size[5]
Definition Slice.cpp:35

References size.

◆ deallocate()

void onert::backend::train::DisposableMemoryManager::deallocate ( void  )
inline

Definition at line 51 of file MemoryManager.h.

51{ _mem_alloc->release(); }

◆ getBuffer()

uint8_t * onert::backend::train::DisposableMemoryManager::getBuffer ( const DisposableTensorIndex ind) const

Definition at line 85 of file MemoryManager.cc.

86{
87 assert(_mem_planner->memory_plans().find(ind) != _mem_planner->memory_plans().end());
88 const auto &mem_blk = _mem_planner->memory_plans().at(ind);
89 return _mem_alloc->base() + mem_blk.offset;
90}

◆ getMemAlloc()

std::shared_ptr< basic::Allocator > onert::backend::train::DisposableMemoryManager::getMemAlloc ( )
inline

Definition at line 56 of file MemoryManager.h.

56{ return _mem_alloc; }

◆ releasePlan()

void onert::backend::train::DisposableMemoryManager::releasePlan ( const DisposableTensorIndex ind)

Definition at line 74 of file MemoryManager.cc.

75{
76 _mem_planner->release(ind);
77}

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