24 #ifndef MEMORYMANAGER_H
25 #define MEMORYMANAGER_H
102 (*it)->preGarbageCollect();
118 (*it)->postGarbageCollect();
Definition: MemoryManager.h:39
virtual ~GCHook()
Definition: MemoryManager.h:41
virtual void postGarbageCollect()=0
virtual void preGarbageCollect()=0
This class is the base class representing a Data Decision Diagram.
Definition: DDD.h:49
void mark() const
For garbage collection internals.
Definition: DDD.cpp:308
static unsigned int statistics()
Returns unicity table current size. Gives the number of different nodes created and not yet destroyed...
Definition: DDD.cpp:303
static void garbage()
For garbage collection, do not call this directly, use MemoryManager::garbage() instead.
Definition: DDD.cpp:498
static void pstats(bool reinit=true)
Prints some statistics to std::cout.
Definition: DDD.cpp:318
This class is the base class representing a homomorphism over DDD.
Definition: Hom.h:55
static void pstats(bool reinit=true)
Prints some statistics to std::cout.
Definition: Hom.cpp:2452
static void garbage()
For garbage collection.
Definition: Hom.cpp:2023
static unsigned int statistics()
Returns unicity table current size. Gives the number of different _GHom created and not yet destroyed...
Definition: Hom.cpp:2011
void mark() const
For garbage collection internals. Marks a GHom as in use in garbage collection phase.
Definition: Hom.cpp:2016
static unsigned int statistics()
Returns unicity table current size. Gives the number of different nodes created and not yet destroyed...
Definition: SDD.cpp:255
static void pstats(bool reinit=true)
Prints some statistics to std::cout.
Definition: SDD.cpp:281
static void garbage()
For garbage collection, do not call this directly, use MemoryManager::garbage() instead.
Definition: SDD.cpp:558
static unsigned int statistics()
Return the current size of the unicity table for GShom.
Definition: SHom.cpp:2696
static void garbage()
Collects and destroys unused homomorphisms.
Definition: SHom.cpp:2716
static void pstats(bool reinit=true)
Print some usage statistics on Shom.
Definition: SHom.cpp:3336
static void garbage()
Definition: IntDataSet.cpp:35
static void garbage()
Collects and destroys unused homomorphisms.
Definition: MLHom.cpp:286
This class defines a few utility functions common to DDD.
Definition: MemoryManager.h:52
static unsigned int nbHom()
Returns the size of the unicity table for DDD Homomorphisms.
Definition: MemoryManager.h:64
static void addHook(GCHook *hook)
Definition: MemoryManager.h:146
static unsigned int nbSDED()
Returns the size of the cache unicity table for SDD.
Definition: MemoryManager.h:68
static void setGCThreshold(size_t nbKbyte)
Definition: MemoryManager.h:137
static void garbage()
Garbage collection function.
Definition: MemoryManager.h:100
static hooks_t hooks_
Definition: MemoryManager.h:56
static size_t last_mem
Definition: MemoryManager.h:152
static bool should_garbage()
tester for memory management routine triggering in a top level fixpoint
Definition: MemoryManager.h:80
static unsigned int nbSDD()
Returns the size of the unicity table for SDD.
Definition: MemoryManager.h:66
static unsigned int nbShom()
Returns the size of the unicity table for SDD Homomorphisms.
Definition: MemoryManager.h:70
static void mark(const GHom &h)
Convenience function to mark a Hom as non collectible.
Definition: MemoryManager.h:77
static size_t getPeakMemory()
Definition: MemoryManager.h:141
static void pstats(bool reinit=true)
Prints some statistics about use of unicity tables, also reinitializes peak sizes.
Definition: MemoryManager.h:123
static void mark(const GDDD &g)
Convenience function to mark a node as non collectible.
Definition: MemoryManager.h:74
static unsigned int nbDED()
Returns the size of the cache unicity table for DDD.
Definition: MemoryManager.h:62
std::vector< GCHook * > hooks_t
Definition: MemoryManager.h:53
hooks_t::iterator hooks_it
Definition: MemoryManager.h:54
static unsigned int nbDDD()
Returns the size of the unicity table for DDD.
Definition: MemoryManager.h:60
void garbage()
Definition: DED.cpp:620
unsigned int statistics()
Definition: DED.cpp:573
void pstats(bool reinit=true)
Definition: DED.cpp:577
void pstats(bool reinit=true)
Definition: SDED.cpp:673
unsigned int statistics()
Definition: SDED.cpp:668
void garbage()
Definition: SDED.cpp:694
size_t getResidentMemory()
in Bytes
Definition: process.cpp:120