Benchmarking and Profiling
Published:
(work in progress…)
In real-time rendering, often the frame rate (fps) is presented as the computational improvement. However, the frame rate sometimes miss the important evaluation criteria. Therefore, the frame time (aka. render time (in millisecond)) could be a better option. For more, see this excellent article.
Many of the existing graphics debugger tools work in this philosophy to evaluate per frame rendering time to find the drawbacks. Some of the popular debuggers are:
- NVidia: NVIDIA Nsight Graphics, NSight Developer Tools, NSight Visual Studio add-ons
- Microsoft:
- RenderDoc, RenderDoc UE Plugin (Vulkan, D3D11, D3D12, D3DR, OpenGL, OpenGL ES supported)
- PIX DX12, support DX12
- Visual Studio Graphics Analyzer on Windows, Linux, Android, and Nintendo Switch
- Intel: VTune, Graphics Performance Analyzer (GAP)
- AMD: AMD GPU PerfStudio, Radeon Developer Tools Suite, Radeon Ray Tracing Analyzer
Other than, there are several other debuggers, e.g.,
- awesome-benchmark
- TauBench: A Dynamic Benchmark for Graphics Rendering (Dataset Reference Frames from Tampere University’s VGA Group
- qv: histogram, pixel value inspection, and statistics of rendered image
- NVAPI and Shader Execution Recording
