Package: nsight-compute Version: 2020.3.1.4~11.2.2-3+deb11u1 Severity: important
nvprof has been deprecated, and Nvidia recommends to switch to nsight-compute and nsight-systems. This is necessary for Ampere cards, because nvprof expressly does not support them. However, ncu (from nsight-compute) does not work on bullseye and newer, with a user-configurable workaround on bookworm and above. The issue seems to be the location of the "sections" folder: the ncu binary expects it at: /usr/lib/nsight-compute/<triplet>/sections whereas it is installed in: /usr/lib/nsight-compute/sections Adding a symlink from /usr/lib/nsight-compute/<triplet>/sections to the actual install location fixes the issue. Steps to reproduce ================== Given the attached typical example for a CUDA program and compiling it with, $ nvcc -o MatAdd MatAdd.cu using ncu (as root, to avoid ERR_NVGPUCTRPERM) on bullseye produces the following warning: # ncu MatAdd ==ERROR== Could not deploy stock section files to "/home/username/Documents/NVIDIA Nsight Compute/2020.3.1/Sections". This error is misleading, as it has nothing to do with creating the mentioned directory. There's an option --section-folder which can be used to specify the location of that folder. Oddly, this is ineffective on bullseye, # ncu --section-folder /usr/lib/nsight-compute/sections MatAdd ==ERROR== Could not deploy stock section files to "/home/username/Documents/NVIDIA Nsight Compute/2020.3.1/Sections". but it does work on bookworm and above, where nsight-compute is newer (carets are mine): # ncu --section-folder /usr/lib/nsight-compute/sections MatAdd ==WARNING== Could not deploy stock section files to "/home/username/Documents/NVIDIA Nsight Compute/2021.2.2/Sections". ==WARNING== Using "/usr/lib/x86_64-linux-gnu/nsight-compute/target/linux-desktop-glibc_2_11_3-x64/../../sections" instead. ^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ ==WARNING== See https://docs.nvidia.com/nsight-compute/ProfilingGuide/index.html#faq. ==PROF== Connected to process 5861 (/home/username/MatAdd) ==PROF== Profiling "MatAdd" - 1: 0%....50%....100% - 8 passes ==PROF== Disconnected from process 5861 The warning in the bookworm version already points to the issue mentioned above: "sections" is expected in the path including the <triplet>. Adding a symlink fixes the issue on all systems, and also gets rid of all errors/warnings: # ln -s /usr/lib/nsight-compute/sections /usr/lib/x86_64-linux-gnu/nsight-compute/sections # ncu MatAdd ==PROF== Connected to process 7292 (/home/username/MatAdd) ==PROF== Profiling "MatAdd" - 1: 0%....50%....100% - 8 passes ==PROF== Disconnected from process 7292 ...
MatAdd.cu
Description: application/cu-seeme