int TestMain () { // Increased tolerance for Virtual Machines double tolerance_multiplier = Harness::GetEnv( "VIRTUAL_MACHINE" ) ? 50. : 1.; REMARK( "tolerance_multiplier = %g \n", tolerance_multiplier ); tbb::tick_count t0 = tbb::tick_count::now(); TestSimpleDelay(/*ntrial=*/1000000,/*duration=*/0, /*tolerance=*/2E-6 * tolerance_multiplier); tbb::tick_count t1 = tbb::tick_count::now(); TestSimpleDelay(/*ntrial=*/1000, /*duration=*/0.001,/*tolerance=*/5E-6 * tolerance_multiplier); tbb::tick_count t2 = tbb::tick_count::now(); TestArithmetic(t0,t1,t2); TestResolution(); int num_threads = tbb::tbb_thread::hardware_concurrency(); ASSERT( num_threads > 0, "tbb::thread::hardware_concurrency() has returned an incorrect value" ); if ( num_threads > 1 ) { REMARK( "num_threads = %d\n", num_threads ); TestTickCountDifference( num_threads ); } else { REPORT( "Warning: concurrency is too low for TestTickCountDifference ( num_threads = %d )\n", num_threads ); } return Harness::Done; }
int TestMain () { tbb::tick_count t0 = tbb::tick_count::now(); TestSimpleDelay(/*ntrial=*/1000000,/*duration=*/0, /*tolerance=*/2E-6); tbb::tick_count t1 = tbb::tick_count::now(); TestSimpleDelay(/*ntrial=*/10, /*duration=*/0.125,/*tolerance=*/5E-6); tbb::tick_count t2 = tbb::tick_count::now(); TestArithmetic(t0,t1,t2); for( int n=MinThread; n<=MaxThread; ++n ) { TestTickCountDifference(n); } return Harness::Done; }