NVIDIA/nvbench
Add example showing how to parse additional arguments
Aberta
#87 aberto em 10 de mai. de 2022
P2: nice to havearea: examplesgood first issuetype: enhancement
Métricas do repositório
- Stars
- (914 estrelas)
- Métricas de merge de PR
- (Métricas PR pendentes)
Description
Several users have asked about how to add custom arguments to their benchmarks (e.g. #86).
This is done by implementing an application specific main(argc, argv) function and linking to the nvbench::nvbench CMake target instead of nvbench::main. The custom main will need to parse out additional arguments, and then use the macros defined in main.cuh to parse the remaining args and run NVBench. Something like:
int main(int argc, char** argv)
{
// parse custom args and remove them from (or rebuild) argc/argv here
NVBENCH_MAIN_BODY(argc, argv);
}
A singleton or some global state is then needed to communicate the custom options to the benchmarks.
We should add an example that shows how to do this.