From f95969acdf3a2d570f21caccdb96ccbdf123e756 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakub=20Klinkovsk=C3=BD?= <klinkjak@fjfi.cvut.cz> Date: Sat, 19 Mar 2016 20:03:03 +0100 Subject: [PATCH] Added parameter --output-mode to tnl-cuda-benchmarks --- tests/benchmarks/tnl-cuda-benchmarks.h | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/tests/benchmarks/tnl-cuda-benchmarks.h b/tests/benchmarks/tnl-cuda-benchmarks.h index ef936b1057..8ac0760723 100644 --- a/tests/benchmarks/tnl-cuda-benchmarks.h +++ b/tests/benchmarks/tnl-cuda-benchmarks.h @@ -82,6 +82,9 @@ setupConfig( tnlConfigDescription & config ) { config.addDelimiter( "Benchmark settings:" ); config.addEntry< tnlString >( "log-file", "Log file name.", "tnl-cuda-benchmarks.log"); + config.addEntry< tnlString >( "output-mode", "Mode for opening the log file.", "overwrite" ); + config.addEntryEnum( "append" ); + config.addEntryEnum( "overwrite" ); config.addEntry< tnlString >( "precision", "Precision of the arithmetics.", "double" ); config.addEntryEnum( "float" ); config.addEntryEnum( "double" ); @@ -108,7 +111,8 @@ main( int argc, char* argv[] ) return 1; } - ofstream logFile( parameters.getParameter< tnlString >( "log-file" ).getString() ); + const tnlString & logFileName = parameters.getParameter< tnlString >( "log-file" ); + const tnlString & outputMode = parameters.getParameter< tnlString >( "output-mode" ); const tnlString & precision = parameters.getParameter< tnlString >( "precision" ); const unsigned minSize = parameters.getParameter< unsigned >( "min-size" ); const unsigned maxSize = parameters.getParameter< unsigned >( "max-size" ); @@ -122,6 +126,12 @@ main( int argc, char* argv[] ) return EXIT_FAILURE; } + // open log file + auto mode = ios::out; + if( outputMode == "append" ) + mode |= ios::app; + ofstream logFile( logFileName.getString(), mode ); + // init benchmark and common metadata Benchmark benchmark( loops, verbose ); // TODO: add hostname, CPU info, GPU info, date, ... -- GitLab