Nsight cant find cuda built-ins or items from cuda modified headers.

I have just installed Nsight 9.2 and CUDA 9.2 on an X86_64 Ubuntu 16.04, and I am finding that Nsight cannot detect the basic builtin types and Cuda functions, nor items from modified headers. For example, in the image below, if I CTRL click (or CTRL space for completion options), it will find checkCudaErrors (I copied the heler_cuda.h header from CUDA/samples/common/inc/ to CUDA/include/). However, for builtin functions such as cudaFree/cudaMalloc (threadIdx, etc.), Nsight doesn’t know where to look (while nvcc knows these are builtin). Similarly, in the cuda math.h there is normcdfinv (not usually in math.h but rather in more advanced scientific/statistical libraries), which again Nsight doesn’t seem to comprehend. If I CTRL click on the #include math.h then it takes me to /usr/local/include/c++/8.1.0/math.h (my default cpp compiler being GCC 8.0.1). My suspicion is that I have not configured Nsight correctly to have it realise it will be compiled using nvcc. However, it seems to be fine with global, which seems to suggest it knows about programming for GPUs. Any idea how to resolve this. (PS - sorry for the strange colour scheme, my Ubuntu default is dark and I needed to change the colours to something that is brights as Nsight defaulted to black!).

Hi, oliver.sheridan-methven

It’s true that Nsight have some issues about this feature and this is known to us.

If you want to solve this problem, suggest you use Nsight Eclipse Plugin instead. It’s also released in CUDA 9.2 package. And the installation and usage can be refer:

https://docs.nvidia.com/cuda/nsight-eclipse-plugins-guide/index.html

You can install the plugin based on Eclipse 4.6 or 4.7 version.

Any problem, please let me know. Thanks !

Eclipse 4.8 is the latest IDE version. Should the Nsight plugin still be compatible?

It may be, but this is not guaranteed as we not test on Eclipse 4.8