summaryrefslogtreecommitdiff
path: root/test/performance
diff options
context:
space:
mode:
authorCedric Nugteren <web@cedricnugteren.nl>2017-11-22 20:53:20 +0100
committerCedric Nugteren <web@cedricnugteren.nl>2017-11-22 20:53:20 +0100
commit9527c89c3087b4c92bd988340c3b25c1c5e70d8f (patch)
tree9bc6963f4050461f405d7da48b4f632eb5346137 /test/performance
parent8c9ecd97366980200a58a4b8cd77bd7f8b859abc (diff)
Made parameter override in the clients a command-line argument and added support for multi-kernel routines
Diffstat (limited to 'test/performance')
-rw-r--r--test/performance/client.cpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/test/performance/client.cpp b/test/performance/client.cpp
index b2b579b1..8b18b9a9 100644
--- a/test/performance/client.cpp
+++ b/test/performance/client.cpp
@@ -146,6 +146,13 @@ Arguments<U> Client<T,U>::ParseArguments(int argc, char *argv[], const size_t le
args.no_abbrv = CheckArgument(command_line_args, help, kArgNoAbbreviations);
warm_up_ = CheckArgument(command_line_args, help, kArgWarmUp);
+ // Parse the optional JSON file name arguments
+ const auto tuner_files_default = std::string{"<none>"};
+ const auto tuner_files_string = GetArgument(command_line_args, help, kArgTunerFiles, tuner_files_default);
+ if (tuner_files_string != tuner_files_default) {
+ args.tuner_files = split(tuner_files_string, ',');
+ }
+
// Prints the chosen (or defaulted) arguments to screen. This also serves as the help message,
// which is thus always displayed (unless silence is specified).
if (!args.silent) { fprintf(stdout, "%s\n", help.c_str()); }
@@ -196,8 +203,8 @@ void Client<T,U>::PerformanceTest(Arguments<U> &args, const SetMetric set_sizes)
if (args.compare_cublas) { cublasSetup(args); }
#endif
- // Optionally overrides parameters if "CLBLAST_JSON_FILE_OVERRIDE" environmental variable is set
- OverrideParametersFromJSONFiles(device(), args.precision);
+ // Optionally overrides parameters if tuner files are given (semicolon separated)
+ OverrideParametersFromJSONFiles(args.tuner_files, device(), args.precision);
// Prints the header of the output table
PrintTableHeader(args);