cudaprofilingnvidiagpgpunsight-compute

Nsight Compute says: "Profiling is not supported on this device" - why?


I have a machine with an NVIDA GTX 1050 Ti GPU (compute capability 6.1), and am trying to profile a kernel in a program I built with CUDA 11.4. My OS distribution is Devuan GNU/Linux 4 Chimaera (~= Debian 11 Bullseye).

NSight Compute starts my program, and shows me API call after API call, but when I get to the first kernel launch, it gives me an error message in the Details column of the API call listing:

Error: Profiling is not supported on this device

Why? What's wrong with my device? Is it a permissions issue?


Solution

  • tl;dr: Nsight Compute no longer supports Pascal GPUs.

    Nsight Compute used to support Pascal-microarchitecture GPUs (Compute Capability 6.x) - up until version 2019.5.1. Beginning with 2020, Nsight Compute dropped support for Pascal.

    If you're wondering why that is - no reason or justification was given to my knowledge (see also the quote below). This is especially puzzling, or annoying, given the short period of time between the release of post-Pascal GPUs and this dropping of support (as little as 1.5 years if you look at consumer GTX cards).

    On the other hand, you may still use the NVIDIA Visual Profiler tool with Pascal cards, so they didn't throw you entirely under the bus. And you can also download and use Nsight Compute 2019.5.1.

    To quote an NVIDIA moderator's statement on the matter on the NVIDIA developer forums:

    Pascal support was deprecated, then dropped from Nsight Compute after Nsight Compute 2019.5.1. The profiling tools that support Pascal in the CUDA Toolkit 11.1 and later are nvprof and visual profiler.