Add an nvbench-ctl executable.

This will provide functionality such as clock locking (--lgm),
persistance mode (--pm), device querying (--list), version checking
(--version), and documentation (--help).

This is possible already with any nvbench executable, but having
one with a reliable name will be helpful for scripting and writing
documentation.
This commit is contained in:
Allison Vacanti
2021-12-20 12:04:31 -05:00
parent a8422197a9
commit 20522c807d
9 changed files with 160 additions and 13 deletions

View File

@@ -23,14 +23,14 @@ macro(nvbench_generate_exports)
rapids_export(BUILD NVBench
EXPORT_SET nvbench-targets
NAMESPACE "nvbench::"
GLOBAL_TARGETS nvbench main internal_build_interface
GLOBAL_TARGETS nvbench main ctl internal_build_interface
LANGUAGES CUDA CXX
FINAL_CODE_BLOCK nvbench_build_export_code_block
)
rapids_export(INSTALL NVBench
EXPORT_SET nvbench-targets
NAMESPACE "nvbench::"
GLOBAL_TARGETS nvbench main internal_build_interface
GLOBAL_TARGETS nvbench main ctl internal_build_interface
LANGUAGES CUDA CXX
FINAL_CODE_BLOCK nvbench_install_export_code_block
)

View File

@@ -54,3 +54,8 @@ function(nvbench_install_libraries)
EXPORT nvbench-targets
)
endfunction()
# Call with a list of executables to generate install rules:
function(nvbench_install_executables)
install(TARGETS ${ARGN} EXPORT nvbench-targets)
endfunction()