Nsight Compute get stuck at cusparse function calling: CUDA_ERROR_NO_BINARY_FOR_GPU(209)

I am using Nsight Compute to profile my code. My code calls cusparse SPMM funtion somewhere, and there is target_link_libraries(${PROJECT_NAME} PUBLIC cusparse) in my CMakeLists file. The code compiles and runs successfully. But if I run it in Nsight Compute connection, it will get stuck at cusparse function calling, shown as
API Name cuLibraryGetModule, Func Return CUDA_ERROR_NO_BINARY_FOR_GPU(209). How to solve it?

Thanks for submitting this issue. It’s hard to say exactly what is going on. For completeness, is this all done on a single machine with a GPU or are any remote connections involved? And what GPU is this running on?

Does this problem occur with both an interactive and non-interactive profile?

This problem occurs with an interactive profile. Both local and remote GPU, 3060laptop and 3090.
The non-interactive profile is successful.

The issue here is that the GUI has the “Break on Error” (see screenshot below) turned on, which is the default. Sometimes the CUDA APIs throw errors that can still be handled by the application and it will run correctly. However, with this toggle on, it stops in an interactive profile. You should be able to “Run to Next Kernel” or “Run to Next API Call” in an interactive profiling session even if this error is encountered. You can also disable this toggle and it won’t stop here anymore.

1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.