# HG changeset patch # User alpar # Date 1161081080 0 # Node ID 5deb7b22a0ec8a3382455717fe3831dc5a3c23a6 # Parent 16523135943d4e7c9492385f138ae996e13ac411 Change for better measurement very fast operations (enable a higher number of iterations in runningTimeTest()) diff -r 16523135943d -r 5deb7b22a0ec lemon/time_measure.h --- a/lemon/time_measure.h Sat Oct 14 15:26:05 2006 +0000 +++ b/lemon/time_measure.h Tue Oct 17 10:31:20 2006 +0000 @@ -517,22 +517,19 @@ ///\return The average running time of \c f. template - TimeStamp runningTimeTest(F f,double min_time=10,int *num = NULL, + TimeStamp runningTimeTest(F f,double min_time=10,unsigned int *num = NULL, TimeStamp *full_time=NULL) { + TimeStamp full; + unsigned int total=0; Timer t; - TimeStamp full; - int total=0; - for(int tn=1;tn < 1<<30; tn*=2) { + for(unsigned int tn=1;tn <= 1<<31 && full.realTime()<=min_time; tn*=2) { for(;totalmin_time) { - if(num) *num=total; - if(full_time) *full_time=full; - return full/total; - } } - return TimeStamp(); + if(num) *num=total; + if(full_time) *full_time=full; + return full/total; } /// @} diff -r 16523135943d -r 5deb7b22a0ec test/time_measure_test.cc --- a/test/time_measure_test.cc Sat Oct 14 15:26:05 2006 +0000 +++ b/test/time_measure_test.cc Tue Oct 17 10:31:20 2006 +0000 @@ -43,7 +43,7 @@ int main() { Timer T; - int n; + unsigned int n; for(n=0;T.realTime()<1.0;n++) ; std::cout << T << " (" << n << " time queries)\n"; T.restart();