Add optional types to type axes
Nobody has claimed this yet.
- Dominant language
- Cuda
- Stars
- 927
- Forks
- 123
- Avg merge
- 2d 10h
- Merged PRs (30d)
- 2
Description
I would be nice to be able to specify
NVBENCH_BENCH_TYPES(my_benchmark, NVBENCH_TYPE_AXES_OPT({my_types, my_optional_types}))
.set_type_axis_names({"ValueType"});
such that my_bench_executable --benchmark my_benchmark does only execute (the Cartesian product of) the non-optional my_types, but my_bench_executable --benchmark my_benchmark -a ValueType=SomeOptionalType still works, i.e. the full Cartesian product of the concatenation of my_types and my_optional_types with other type axes (not included in above code) is instantiated.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start from the NVBENCH_TYPE_AXES_OPT macro and the benchmark selection path handling -a ValueType=SomeOptionalType. Trace how type axes are instantiated and how the default benchmark selection is formed. Done means non-optional types run by default, while the named optional type participates when selected and combines correctly with other axes.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- performance
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100