summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAlan Mishchenko <alanmi@berkeley.edu>2012-01-13 18:10:00 -0800
committerAlan Mishchenko <alanmi@berkeley.edu>2012-01-13 18:10:00 -0800
commitedbff75fff4666c6683f448068aa76a59c3de555 (patch)
tree5208dd5c6b231dd0a5bbedf7665fb2a189de66de /src
parenteecbbea24b9aff3b5a1d6f456cf6139c1db7524c (diff)
downloadabc-edbff75fff4666c6683f448068aa76a59c3de555.tar.gz
abc-edbff75fff4666c6683f448068aa76a59c3de555.tar.bz2
abc-edbff75fff4666c6683f448068aa76a59c3de555.zip
New hierarchy manager.
Diffstat (limited to 'src')
-rw-r--r--src/base/abc/abcHieNew.c15
1 files changed, 12 insertions, 3 deletions
diff --git a/src/base/abc/abcHieNew.c b/src/base/abc/abcHieNew.c
index 212b68a9..09de8709 100644
--- a/src/base/abc/abcHieNew.c
+++ b/src/base/abc/abcHieNew.c
@@ -92,6 +92,8 @@ struct Au_Man_t_
Vec_Ptr_t vNtks; // the array of modules
Abc_Nam_t * pFuncs; // hashing functions into integers
int nRefs; // reference counter
+ // statistics
+ int nGiaObjMax; // max number of GIA objects
};
@@ -252,9 +254,9 @@ void Au_NtkPrintStats( Au_Ntk_t * p )
// printf( " lat =%5d", Au_NtkFlopNum(p) );
printf( " nd =%6d", Au_NtkNodeNum(p) );
printf( " box =%5d", Au_NtkBoxNum(p) );
- printf( " obj =%6d", Au_NtkObjNum(p) );
- printf( " max =%6d", Au_NtkObjNumMax(p) );
-// printf( " use =%6d", p->nUseful );
+ printf( " obj =%7d", Au_NtkObjNum(p) );
+ printf( " max =%7d", Au_NtkObjNumMax(p) );
+ printf( " use =%7d", p->nUseful );
printf( " %4.1f %%", 100.0 * (Au_NtkObjNumMax(p) - p->nUseful) / Au_NtkObjNumMax(p) );
printf( " %5.1f Mb", 1.0 * Au_NtkMemUsage(p) / (1 << 20) );
printf( "\n" );
@@ -541,6 +543,8 @@ void Au_NtkDeriveFlatGia_rec( Gia_Man_t * pGia, Au_Ntk_t * p )
Au_ObjSetCopy( pTerm, Au_ObjCopy(Au_ObjFanin0(pTerm)) );
Au_NtkForEachPo( p, pTerm, i )
assert( Au_ObjCopy(pTerm) >= 0 );
+
+ p->pMan->nGiaObjMax = Abc_MaxInt( p->pMan->nGiaObjMax, Gia_ManObjNum(pGia) );
}
/**Function*************************************************************
@@ -669,10 +673,15 @@ Gia_Man_t * Au_ManDeriveTest( Abc_Ntk_t * pRoot )
Au_ManPrintStats( pMan );
+ Abc_PrintTime( 1, "Time all", clock() - clk );
+ Abc_PrintTime( 1, "Time new", clk2 );
+
clk1 = clock();
pGia = Au_NtkDeriveFlatGia( (Au_Ntk_t *)pRoot->pData );
clk3 = clock() - clk1;
+ printf( "GIA objects max = %d.\n", pMan->nGiaObjMax );
+
clk1 = clock();
Au_ManDelete( pMan );
clk2 += clock() - clk1;