diff options
author | Alan Mishchenko <alanmi@berkeley.edu> | 2013-05-27 15:09:23 -0700 |
---|---|---|
committer | Alan Mishchenko <alanmi@berkeley.edu> | 2013-05-27 15:09:23 -0700 |
commit | 19c25fd6aab057b2373717f996fe538507c1b1e1 (patch) | |
tree | 7aa7cd7609a5de31d11b3455b6388fd9300c8d0f /src/misc/extra/extraBddMisc.c | |
parent | 94356f0d1fa8e671303299717f631ecf0ca2f17e (diff) | |
download | abc-19c25fd6aab057b2373717f996fe538507c1b1e1.tar.gz abc-19c25fd6aab057b2373717f996fe538507c1b1e1.tar.bz2 abc-19c25fd6aab057b2373717f996fe538507c1b1e1.zip |
Adding a wrapper around clock() for more accurate time counting in ABC.
Diffstat (limited to 'src/misc/extra/extraBddMisc.c')
-rw-r--r-- | src/misc/extra/extraBddMisc.c | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/src/misc/extra/extraBddMisc.c b/src/misc/extra/extraBddMisc.c index 6575f7b0..7d9c26d5 100644 --- a/src/misc/extra/extraBddMisc.c +++ b/src/misc/extra/extraBddMisc.c @@ -1348,9 +1348,9 @@ extraTransferPermuteRecur( if ( st__lookup( table, ( char * ) f, ( char ** ) &res ) ) return ( Cudd_NotCond( res, comple ) ); - if ( ddS->TimeStop && clock() > ddS->TimeStop ) + if ( ddS->TimeStop && Abc_Clock() > ddS->TimeStop ) return NULL; - if ( ddD->TimeStop && clock() > ddD->TimeStop ) + if ( ddD->TimeStop && Abc_Clock() > ddD->TimeStop ) return NULL; /* Recursive step. */ @@ -1909,9 +1909,9 @@ DdNode * extraBddAndPermute( DdHashTable * table, DdManager * ddF, DdNode * bF, return bRes; Counter++; - if ( ddF->TimeStop && clock() > ddF->TimeStop ) + if ( ddF->TimeStop && Abc_Clock() > ddF->TimeStop ) return NULL; - if ( ddG->TimeStop && clock() > ddG->TimeStop ) + if ( ddG->TimeStop && Abc_Clock() > ddG->TimeStop ) return NULL; // find the topmost variable in F and G using var order of F @@ -1982,7 +1982,7 @@ void Extra_TestAndPerm( DdManager * ddF, DdNode * bF, DdNode * bG ) { DdManager * ddG; DdNode * bG2, * bRes1, * bRes2; - clock_t clk; + abctime clk; // disable variable ordering in ddF Cudd_AutodynDisable( ddF ); @@ -1995,15 +1995,15 @@ void Extra_TestAndPerm( DdManager * ddF, DdNode * bF, DdNode * bG ) Cudd_ReduceHeap( ddG, CUDD_REORDER_SYMM_SIFT, 1 ); // compute the result -clk = clock(); +clk = Abc_Clock(); bRes1 = Cudd_bddAnd( ddF, bF, bG ); Cudd_Ref( bRes1 ); -Abc_PrintTime( 1, "Runtime of Cudd_bddAnd ", clock() - clk ); +Abc_PrintTime( 1, "Runtime of Cudd_bddAnd ", Abc_Clock() - clk ); // compute the result Counter = 0; -clk = clock(); +clk = Abc_Clock(); bRes2 = Extra_bddAndPermute( ddF, bF, ddG, bG2, NULL ); Cudd_Ref( bRes2 ); -Abc_PrintTime( 1, "Runtime of new procedure", clock() - clk ); +Abc_PrintTime( 1, "Runtime of new procedure", Abc_Clock() - clk ); printf( "Recursive calls = %d\n", Counter ); printf( "|F| =%6d |G| =%6d |H| =%6d |F|*|G| =%9d ", Cudd_DagSize(bF), Cudd_DagSize(bG), Cudd_DagSize(bRes2), |