How can the output metrics be interpreted
Nobody has claimed this yet.
- Dominant language
- Cuda
- Stars
- 927
- Forks
- 123
- Avg merge
- 2d 10h
- Merged PRs (30d)
- 2
Description
I'm fairly new to arena of profiling CUDA kernels and would like to learn more about the basic output metrics of this library. Specifically, looking at the output of nvbench.example.throughput:
| NumElements | DataSize | Samples | CPU Time | Noise | GPU Time | Noise | Elem/s | GlobalMem BW | BWUtil | Samples | Batch GPU |
|-------------|------------|---------|------------|-------|------------|-------|---------|--------------|--------|---------|------------|
| 16777216 | 64.000 MiB | 1750x | 301.822 us | 5.83% | 285.873 us | 0.50% | 58.688G | 469.501 GB/s | 30.19% | 1809x | 279.783 us |
My questions per field are:
- NumElements: Is this the total number of elements processed over the total number of samples taken?
- DataSize: Same question. Is this the total data size processed over successive function calls?
- Samples: I assume this refers to the total number of times the benchamraked function is called. Is this correct? Also, why is it included twice and has a different value for each?
- CPU Time: Total time over successive calls or average?
- GPU Time: Same question. Total time or average?
- Noise: What is the definition of this metric?
- Elem/S: Self explanatory. The number of elements a kernel can process per sec I assume?
- GlobalMem BW: Does this measure the speed of device->host and host->device data movement?
- BW Util: The % being used of the maximum possible BW?
- Batch GPU: How is this different from GPU Time?
Thank you in advance. I just didn't see any documentation or output that explicitly defined these metrics or how to interpret.
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
No documentation file, test, or entry point is named in the issue. Start by locating the documentation and the code that produces the nvbench.example.throughput output, then define each listed metric and explain the distinction between the two Samples columns and between GPU Time and Batch GPU. Done means the output fields are documented clearly enough to answer all ten questions.
Written by the indexing model from the issue text.
Assessment
- Domain
- documentation, performance
- Issue type
- Documentation
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 28/100