I have no issue running nvvp, but when I try to do the instruction level profiling, I get a view of the disassembled kernel. I’d like to see the source file.
In some box of the Results section, it says:
" The source-assembly viewer could not be shown because source-file mappings are missing from the kernel. You can enable source-file mappings by using the -lineinfo flag when compiling the kernels"
I’ve tried adding -linfo to the compiling, i.e. my makefile executes:
nvcc -x cu -O3 -std=c++11 -lineinfo -dc main.cpp
nvcc -x cu -O3 -std=c++11 -lineinfo -dc DG.cpp
nvcc -x cu -O3 -std=c++11 -lineinfo -dc Problem_functions.cpp
nvcc main.o DG.o Problem_functions.o -lineinfo -o DG1D
but it doesn’t help.
I have cuda 9.0. I’m on linux, and execute the profiler with “nvvp ./DG1D”
I was working on my desktop computer. Fortunately, I have access to a cluster with more recent GPUs. So one alternative that I’ve found is to use run my code with nvprof on the cluster to create an analysis.prof file for my code.
I have a similar problem here (Ubuntu 18.04, CUDA 10.1, GTX 1070). The program was compiled by a simple Makefile, so all of the .cu source files were compiled by commands like this:
NVVP complained about missing source file mappings for kernels in one file (file1.cu). When I moved these kernels to other .cu source files, the complaint would be gone. I have also checked the PTX code (file1.ptx), in which I could find
I’ve had the same problem with 10.1.243 (the 2nd re-release of 10.1) on a couple of different machines, but but found that downgrading CUDA to the original release of 10.1, where nvcc --version reports 10.1.105, resolved this problem for me.