21.02
|
Concrete class that tracks the lifetime of registered tensors and calculates the systems memory requirements in terms of blobs. More...
#include <BlobLifetimeManager.h>
Public Types | |
using | info_type = std::vector< BlobInfo > |
Public Member Functions | |
BlobLifetimeManager () | |
Constructor. More... | |
BlobLifetimeManager (const BlobLifetimeManager &)=delete | |
Prevent instances of this class to be copy constructed. More... | |
BlobLifetimeManager & | operator= (const BlobLifetimeManager &)=delete |
Prevent instances of this class to be copied. More... | |
BlobLifetimeManager (BlobLifetimeManager &&)=default | |
Allow instances of this class to be move constructed. More... | |
BlobLifetimeManager & | operator= (BlobLifetimeManager &&)=default |
Allow instances of this class to be moved. More... | |
const info_type & | info () const |
Accessor to the pool internal configuration meta-data. More... | |
std::unique_ptr< IMemoryPool > | create_pool (IAllocator *allocator) override |
Creates a memory pool depending on the memory requirements. More... | |
MappingType | mapping_type () const override |
Returns the type of mappings that the lifetime manager returns. More... | |
Public Member Functions inherited from ISimpleLifetimeManager | |
ISimpleLifetimeManager () | |
Constructor. More... | |
ISimpleLifetimeManager (const ISimpleLifetimeManager &)=delete | |
Prevent instances of this class to be copy constructed. More... | |
ISimpleLifetimeManager & | operator= (const ISimpleLifetimeManager &)=delete |
Prevent instances of this class to be copied. More... | |
ISimpleLifetimeManager (ISimpleLifetimeManager &&)=default | |
Allow instances of this class to be move constructed. More... | |
ISimpleLifetimeManager & | operator= (ISimpleLifetimeManager &&)=default |
Allow instances of this class to be moved. More... | |
void | register_group (IMemoryGroup *group) override |
Registers a group to the lifetime manager and assigns a group id. More... | |
bool | release_group (IMemoryGroup *group) override |
Unbound and release elements associated with a group. More... | |
void | start_lifetime (void *obj) override |
Registers and starts lifetime of an object. More... | |
void | end_lifetime (void *obj, IMemory &obj_memory, size_t size, size_t alignment) override |
Ends lifetime of an object. More... | |
bool | are_all_finalized () const override |
Checks if the lifetime of the registered object is complete. More... | |
Public Member Functions inherited from ILifetimeManager | |
virtual | ~ILifetimeManager ()=default |
Virtual Destructor. More... | |
Concrete class that tracks the lifetime of registered tensors and calculates the systems memory requirements in terms of blobs.
Definition at line 41 of file BlobLifetimeManager.h.
Definition at line 44 of file BlobLifetimeManager.h.
|
delete |
Prevent instances of this class to be copy constructed.
|
default |
Allow instances of this class to be move constructed.
|
overridevirtual |
Creates a memory pool depending on the memory requirements.
allocator | Allocator to use |
Implements ILifetimeManager.
Definition at line 47 of file BlobLifetimeManager.cpp.
References arm_compute::test::validation::allocator(), and ARM_COMPUTE_ERROR_ON.
const BlobLifetimeManager::info_type & info | ( | ) | const |
Accessor to the pool internal configuration meta-data.
Definition at line 42 of file BlobLifetimeManager.cpp.
|
overridevirtual |
Returns the type of mappings that the lifetime manager returns.
Implements ILifetimeManager.
Definition at line 53 of file BlobLifetimeManager.cpp.
References BlobInfo::alignment, ISimpleLifetimeManager::are_all_finalized(), ARM_COMPUTE_ERROR_ON, arm_compute::test::validation::b, arm_compute::BLOBS, arm_compute::mlgo::parser::end(), BlobInfo::owners, and BlobInfo::size.
|
delete |
Prevent instances of this class to be copied.
|
default |
Allow instances of this class to be moved.