NVIDIA / NVIDIA/nvbench

Reasonable enum defaults don't work

Open
#84 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

P1: should have type: bug: functional
Dominant language
Cuda
Stars
927
Forks
123
Avg merge
2d 10h
Merged PRs (30d)
2

Description

Not specifying the optional NVBENCH_DECLARE_ENUM_TYPE_STRINGS causes compiler errors:

error: no instance of overloaded function "std::to_string" matches the argument list

This should be easy to reproduce by commenting out the NVBENCH_DECLARE_ENUM_TYPE_STRINGS part of the enums.cu example.

My setup is cuda11.4.3 and gcc10.3.0.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the enums.cu example and reproduce the compiler error using CUDA 11.4.3 and GCC 10.3.0 after commenting out NVBENCH_DECLARE_ENUM_TYPE_STRINGS. Inspect how the optional enum string declaration is handled by the default path; done means the example compiles without that declaration and the reported std::to_string error is gone.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
performance
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.