Nsight Perf SDK Release Notes - v2021.1 Early Access 2
Table of Contents
- Windows 10 or Linux (Ubuntu 20.04 or similar distro).
- NVIDIA Graphics Driver: R465 or newer.
- NVIDIA GeForce, Quadro, or RTX GPU listed below:
| NVIDIA Architecture | Chip Names | GeForce Families | Quadro and NVIDIA RTX Families |
| NVIDIA Ampere GA10x Architecture | GA102, GA104, GA106 | RTX 3090, RTX 3080, RTX 3070, RTX 3060 | RTX A6000, A40 |
| NVIDIA Turing TU10x Architecture | TU102, TU104, TU106 | Titan RTX, RTX 2080, RTX 2070, RTX 2060 | RTX 8000, RTX 6000, RTX 5000, RTX 4000, RTX 3000 |
| NVIDIA Turing TU11x Architecture | TU116, TU117 | GTX 1660, GTX 1650 | T2000, T1000 |
| NVIDIA Volta V100i Architecture | GV100 | Titan V | Quadro GV100 |
- By default, the driver disallows GPU profiling. To enable permissions, follow the instructions at https://developer.nvidia.com/ERR_NVGPUCTRPERM, or try the workarounds described in the Getting Started Guide.
- vkQueueWaitIdle is required before present when profiling Vulkan applications. (3201058)
- Vulkan profiling on desktop linux requires X-windows to be running. (3289536)
- Nsight Perf SDK does not support SLI systems. (PW-2935)
- Each GPU is limited to one profiling session at a time, across the entire system. However, multiple GPUs can be independently profiled concurrently. This is a driver limitation.
- D3D12 Range Profiler is not compatible with the D3D12 debug layer. (PW-925)
- D3D12 Range Profiler does not support PushRange and PopRange commands on Bundles (Command Lists created with D3D12_COMMAND_LIST_TYPE_BUNDLE).
- D3D11 Range Profiler does not support PushRange and PopRange calls on a Deffered Context.
- Vulkan Range Profiler is not compatible with Vulkan layers that perform object-wrapping.
- Vulkan Range Profiler does not support PushRange and PopRange calls on secondary command buffers (VkCommandBuffer created with VK_COMMAND_BUFFER_LEVEL_SECONDARY.
- Vulkan Range Profiler does not support PushRange and PopRange calls on a VkCommandBuffer that is recording with VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT.
- NVPW_Device_SetClockSetting() performs a system-global clock change, that is not undone at process exit. The *SetDeviceClockState() family of NvPerfUtility functions have the same behavior, as they are convenience functions around NVPW_Device_SetClockSetting().
- Not all counters and metrics are available to the Range Profiler APIs, due to driver limitations. The CounterAvailability APIs exist to reveal which metrics are available.
- API Versions
| API | New Version | Previous Version |
| GV100 Graphics Metrics | 0.1.0 | 0.1.0 |
| TU10X Graphics Metrics | 0.1.0 | 0.1.0 |
| TU11X Graphics Metrics | 0.1.0 | 0.1.0 |
| GA10X Graphics Metrics | 0.1.0 | 0.1.0 |
| Metrics Evaluator | 0.1.0 | 0.1.0 |
| D3D11 Profiler | 0.1.0 | 0.1.0 |
| D3D12 Profiler | 0.1.0 | 0.1.0 |
| OpenGL Profiler | 0.1.0 | 0.1.0 |
| Vulkan Profiler | 0.1.0 | 0.1.0 |
- API Versions
| API | New Version | Previous Version |
| GV100 Graphics Metrics | 0.1.0 | N/A |
| TU10X Graphics Metrics | 0.1.0 | N/A |
| TU11X Graphics Metrics | 0.1.0 | N/A |
| GA10X Graphics Metrics | 0.1.0 | N/A |
| Metrics Evaluator | 0.1.0 | N/A |
| D3D11 Profiler | 0.1.0 | N/A |
| D3D12 Profiler | 0.1.0 | N/A |
| OpenGL Profiler | 0.1.0 | N/A |
| Vulkan Profiler | 0.1.0 | N/A |