Arquivos
rocm-systems/catch/hipTestMain/main.cc
T
milos-mozetic 5fbbdcae68 EXSWHTEC-231 - Implement custom Benchmarking tool for Performance tests (#117)
- Introduce performance tests to project.
- Improve benchmarking utilities.
- Delete copy constructors from Timer and Benchmark classes.
- Disable Catch2's benchmarking functionalities.
- Address review comments and add progress bar/display output to the Benchmarking tool
- Add flushing of the buffer on the benchmark name display
- Introduce command line options.
- Add allocation type to string helper function.
- Add output modifier to Benchmark class.
- Fix invalid calculation of deviation
- Update performance_common.hh
- Resolve build error on Windows by adding include for reduce and accumulate
2023-07-18 12:53:27 +05:30

45 linhas
1.3 KiB
C++

#define CATCH_CONFIG_RUNNER
#include <cmd_options.hh>
#include <hip_test_common.hh>
#include <iostream>
CmdOptions cmd_options;
int main(int argc, char** argv) {
auto& context = TestContext::get(argc, argv);
if (context.skipTest()) {
// CTest uses this regex to figure out if the test has been skipped
std::cout << "HIP_SKIP_THIS_TEST" << std::endl;
return 0;
}
Catch::Session session;
using namespace Catch::clara;
// clang-format off
auto cli = session.cli()
| Opt(cmd_options.iterations, "iterations")
["-I"]["--iterations"]
("Number of iterations used for performance tests (default: 1000)")
| Opt(cmd_options.warmups, "warmups")
["-W"]["--warmups"]
("Number of warmup iterations used for performance tests (default: 100)")
| Opt(cmd_options.no_display)
["-S"]["--no-display"]
("Do not display the output of performance tests")
| Opt(cmd_options.progress)
["-P"]["--progress"]
("Show progress bar when running performance tests")
| Opt(cmd_options.extended_run)
["-E"]["--extended-run"]
("TODO: Description goes here")
;
// clang-format on
session.cli(cli);
int out = session.run(argc, argv);
TestContext::get().cleanContext();
return out;
}