cudd  3.0.0
The University of Colorado Decision Diagram Package
Data Fields
DdManager Struct Reference

Specialized DD symbol table. More...

#include <cuddInt.h>

Collaboration diagram for DdManager:
Collaboration graph
[legend]

Data Fields

DdNode sentinel
 
DdNodeone
 
DdNodezero
 
DdNodeplusinfinity
 
DdNodeminusinfinity
 
DdNodebackground
 
DdCacheacache
 
DdCachecache
 
unsigned int cacheSlots
 
int cacheShift
 
double cacheMisses
 
double cacheHits
 
double minHit
 
int cacheSlack
 
unsigned int maxCacheHard
 
int size
 
int sizeZ
 
int maxSize
 
int maxSizeZ
 
DdSubtablesubtables
 
DdSubtablesubtableZ
 
DdSubtable constants
 
unsigned int slots
 
unsigned int keys
 
unsigned int keysZ
 
unsigned int dead
 
unsigned int deadZ
 
unsigned int maxLive
 
unsigned int minDead
 
int gcEnabled
 
double gcFrac
 
unsigned int looseUpTo
 
unsigned int initSlots
 
DdNode ** stack
 
double allocated
 
double reclaimed
 
int * perm
 
int * permZ
 
int * invperm
 
int * invpermZ
 
DdNode ** vars
 
int * map
 
DdNode ** univ
 
unsigned int isolated
 
unsigned int originalSize
 
int linearSize
 
ptruintinteract
 
ptruintlinear
 
DdNode ** memoryList
 
DdNodenextFree
 
char * stash
 
DdNode ** deathRow
 
int deathRowDepth
 
int nextDead
 
unsigned deadMask
 
CUDD_VALUE_TYPE epsilon
 
int reordered
 
unsigned int reorderings
 
unsigned int maxReorderings
 
int siftMaxVar
 
int siftMaxSwap
 
int ddTotalNumberSwapping
 
int zddTotalNumberSwapping
 
int reordCycle
 
double maxGrowth
 
double maxGrowthAlt
 
int autoDyn
 
int autoDynZ
 
Cudd_ReorderingType autoMethod
 
Cudd_ReorderingType autoMethodZ
 
int realign
 
int realignZ
 
unsigned int nextDyn
 
unsigned int countDead
 
MtrNodetree
 
MtrNodetreeZ
 
Cudd_AggregationType groupcheck
 
int recomb
 
int symmviolation
 
int arcviolation
 
int populationSize
 
int numberXovers
 
unsigned int randomizeOrder
 
DdLocalCachelocalCaches
 
void * hooks
 
DdHookpreGCHook
 
DdHookpostGCHook
 
DdHookpreReorderingHook
 
DdHookpostReorderingHook
 
FILE * out
 
FILE * err
 
Cudd_ErrorType errorCode
 
unsigned long startTime
 
unsigned long timeLimit
 
DD_THFP terminationCallback
 
void * tcbArg
 
DD_OOMFP outOfMemCallback
 
DD_TOHFP timeoutHandler
 
void * tohArg
 
size_t memused
 
size_t maxmem
 
size_t maxmemhard
 
int garbageCollections
 
unsigned long GCTime
 
unsigned long reordTime
 
double totCachehits
 
double totCacheMisses
 
double cachecollisions
 
double cacheinserts
 
double cacheLastInserts
 
double cachedeletions
 
unsigned int peakLiveNodes
 
int32_t cuddRand
 
int32_t cuddRand2
 
int32_t shuffleSelect
 
int32_t shuffleTable [64]
 

Detailed Description

Specialized DD symbol table.

Field Documentation

◆ acache

DdCache* DdManager::acache

address of allocated memory for cache

◆ allocated

double DdManager::allocated

number of nodes allocated (not during reordering)

◆ arcviolation

int DdManager::arcviolation

used during group sifting

◆ autoDyn

int DdManager::autoDyn

automatic dynamic reordering flag (BDD)

◆ autoDynZ

int DdManager::autoDynZ

automatic dynamic reordering flag (ZDD)

◆ autoMethod

Cudd_ReorderingType DdManager::autoMethod

default reordering method

◆ autoMethodZ

Cudd_ReorderingType DdManager::autoMethodZ

default reordering method (ZDD)

◆ background

DdNode* DdManager::background

background value

◆ cache

DdCache* DdManager::cache

the cache-based computed table

◆ cachecollisions

double DdManager::cachecollisions

number of cache collisions

◆ cachedeletions

double DdManager::cachedeletions

number of deletions during garbage coll.

◆ cacheHits

double DdManager::cacheHits

number of cache hits (since resizing)

◆ cacheinserts

double DdManager::cacheinserts

number of cache insertions

◆ cacheLastInserts

double DdManager::cacheLastInserts

insertions at the last cache resizing

◆ cacheMisses

double DdManager::cacheMisses

number of cache misses (since resizing)

◆ cacheShift

int DdManager::cacheShift

shift value for cache hash function

◆ cacheSlack

int DdManager::cacheSlack

slots still available for resizing

◆ cacheSlots

unsigned int DdManager::cacheSlots

total number of cache entries

◆ constants

DdSubtable DdManager::constants

unique subtable for the constants

◆ countDead

unsigned int DdManager::countDead

if 0, count deads to trigger reordering

◆ cuddRand

int32_t DdManager::cuddRand

state of the random number generator

◆ cuddRand2

int32_t DdManager::cuddRand2

state of the random number generator

◆ ddTotalNumberSwapping

int DdManager::ddTotalNumberSwapping

number of BDD/ADD swaps completed

◆ dead

unsigned int DdManager::dead

total number of dead BDD and ADD nodes

◆ deadMask

unsigned DdManager::deadMask

mask for circular index update

◆ deadZ

unsigned int DdManager::deadZ

total number of dead ZDD nodes

◆ deathRow

DdNode** DdManager::deathRow

queue for dereferencing

◆ deathRowDepth

int DdManager::deathRowDepth

number of slots in the queue

◆ epsilon

CUDD_VALUE_TYPE DdManager::epsilon

tolerance on comparisons

◆ err

FILE* DdManager::err

stderr for this manager

◆ errorCode

Cudd_ErrorType DdManager::errorCode

info on last error

◆ garbageCollections

int DdManager::garbageCollections

number of garbage collections

◆ gcEnabled

int DdManager::gcEnabled

gc is enabled

◆ gcFrac

double DdManager::gcFrac

gc when this fraction is dead

◆ GCTime

unsigned long DdManager::GCTime

total time spent in garbage collection

◆ groupcheck

Cudd_AggregationType DdManager::groupcheck

used during group sifting

◆ hooks

void* DdManager::hooks

application-specific field (used by vis)

◆ initSlots

unsigned int DdManager::initSlots

initial size of a subtable

◆ interact

ptruint* DdManager::interact

interacting variable matrix

◆ invperm

int* DdManager::invperm

current inv. var. perm. (level to index)

◆ invpermZ

int* DdManager::invpermZ

for ZDD

◆ isolated

unsigned int DdManager::isolated

isolated projection functions

◆ keys

unsigned int DdManager::keys

total number of BDD and ADD nodes

◆ keysZ

unsigned int DdManager::keysZ

total number of ZDD nodes

◆ linear

ptruint* DdManager::linear

linear transform matrix

◆ linearSize

int DdManager::linearSize

number of rows and columns of linear

◆ localCaches

DdLocalCache* DdManager::localCaches

local caches currently in existence

◆ looseUpTo

unsigned int DdManager::looseUpTo

slow growth beyond this limit (measured w.r.t. slots, not keys)

◆ map

int* DdManager::map

variable map for fast swap

◆ maxCacheHard

unsigned int DdManager::maxCacheHard

hard limit for cache size

◆ maxGrowth

double DdManager::maxGrowth

maximum growth during reordering

◆ maxGrowthAlt

double DdManager::maxGrowthAlt

alternate maximum growth for reordering

◆ maxLive

unsigned int DdManager::maxLive

maximum number of live nodes

◆ maxmem

size_t DdManager::maxmem

target maximum memory

◆ maxmemhard

size_t DdManager::maxmemhard

hard limit for maximum memory

◆ maxReorderings

unsigned int DdManager::maxReorderings

maximum number of calls to Cudd_ReduceHeap

◆ maxSize

int DdManager::maxSize

max number of subtables before resizing

◆ maxSizeZ

int DdManager::maxSizeZ

for ZDD

◆ memoryList

DdNode** DdManager::memoryList

memory manager for symbol table

◆ memused

size_t DdManager::memused

total memory allocated for the manager

◆ minDead

unsigned int DdManager::minDead

do not GC if fewer than these dead

◆ minHit

double DdManager::minHit

hit percentage above which to resize

◆ minusinfinity

DdNode* DdManager::minusinfinity

minus infinity

◆ nextDead

int DdManager::nextDead

index in the queue

◆ nextDyn

unsigned int DdManager::nextDyn

reorder if this size is reached

◆ nextFree

DdNode* DdManager::nextFree

list of free nodes

◆ numberXovers

int DdManager::numberXovers

number of crossovers for GA

◆ one

DdNode* DdManager::one

constant 1

◆ originalSize

unsigned int DdManager::originalSize

used by lazy sifting

◆ out

FILE* DdManager::out

stdout for this manager

◆ outOfMemCallback

DD_OOMFP DdManager::outOfMemCallback

out-of-memory callback

◆ peakLiveNodes

unsigned int DdManager::peakLiveNodes

maximum number of live nodes

◆ perm

int* DdManager::perm

current variable perm. (index to level)

◆ permZ

int* DdManager::permZ

for ZDD

◆ plusinfinity

DdNode* DdManager::plusinfinity

plus infinity

◆ populationSize

int DdManager::populationSize

population size for GA

◆ postGCHook

DdHook* DdManager::postGCHook

hooks to be called after GC

◆ postReorderingHook

DdHook* DdManager::postReorderingHook

hooks to be called after reordering

◆ preGCHook

DdHook* DdManager::preGCHook

hooks to be called before GC

◆ preReorderingHook

DdHook* DdManager::preReorderingHook

hooks to be called before reordering

◆ randomizeOrder

unsigned int DdManager::randomizeOrder

perturb the next reordering threshold

◆ realign

int DdManager::realign

realign ZDD order after BDD reordering

◆ realignZ

int DdManager::realignZ

realign BDD order after ZDD reordering

◆ reclaimed

double DdManager::reclaimed

number of nodes brought back from the dead

◆ recomb

int DdManager::recomb

used during group sifting

◆ reordCycle

int DdManager::reordCycle

how often to apply alternate threshold

◆ reordered

int DdManager::reordered

flag set at the end of reordering

◆ reorderings

unsigned int DdManager::reorderings

number of calls to Cudd_ReduceHeap

◆ reordTime

unsigned long DdManager::reordTime

total time spent in reordering

◆ sentinel

DdNode DdManager::sentinel

for collision lists

◆ shuffleSelect

int32_t DdManager::shuffleSelect

state of the random number generator

◆ shuffleTable

int32_t DdManager::shuffleTable[64]

state of the random number generator

◆ siftMaxSwap

int DdManager::siftMaxSwap

maximum number of swaps per sifting

◆ siftMaxVar

int DdManager::siftMaxVar

maximum number of vars sifted

◆ size

int DdManager::size

number of unique subtables

◆ sizeZ

int DdManager::sizeZ

for ZDD

◆ slots

unsigned int DdManager::slots

total number of hash buckets

◆ stack

DdNode** DdManager::stack

stack for iterative procedures

◆ startTime

unsigned long DdManager::startTime

start time in milliseconds

◆ stash

char* DdManager::stash

memory reserve

◆ subtables

DdSubtable* DdManager::subtables

array of unique subtables

◆ subtableZ

DdSubtable* DdManager::subtableZ

for ZDD

◆ symmviolation

int DdManager::symmviolation

used during group sifting

◆ tcbArg

void* DdManager::tcbArg

second argument passed to termination handler

◆ terminationCallback

DD_THFP DdManager::terminationCallback

termination callback

◆ timeLimit

unsigned long DdManager::timeLimit

CPU time limit

◆ timeoutHandler

DD_TOHFP DdManager::timeoutHandler

timeout handler

◆ tohArg

void* DdManager::tohArg

second argument passed to timeout handler

◆ totCachehits

double DdManager::totCachehits

total number of cache hits

◆ totCacheMisses

double DdManager::totCacheMisses

total number of cache misses

◆ tree

MtrNode* DdManager::tree

variable group tree (BDD)

◆ treeZ

MtrNode* DdManager::treeZ

variable group tree (ZDD)

◆ univ

DdNode** DdManager::univ

ZDD 1 for each variable

◆ vars

DdNode** DdManager::vars

projection functions

◆ zddTotalNumberSwapping

int DdManager::zddTotalNumberSwapping

number of ZDD swaps completed

◆ zero

DdNode* DdManager::zero

constant 0


The documentation for this struct was generated from the following file: