OpenCL performance analysis: utilization zero

i have installed nsight visual studio edition to my laptop with win8.1 and visual studio 2012 and opencl analysis via performance analysis -> Trace settings -> OpenCL was working fine and timeline was great.
Then i have to work on project with opengl and i wanted to try graphics debuging, but it wasn’t working at all. I reinstalled nvidia nsight and after this, i can see graphs but i could not pause application and trace it -> i can but visual studio crashed …
It was ok, i didnt need it so i dont find out where problem is, when i get back to my opencl project, when i used opencl tracing i cant see opencl device utilization and timeline is bad.

Utilization screen


Then i tried reinstall nsight again - didn’t help.
I tried remove opencl.dll from my system, install new driver - didn’t help.
I download older version of nsight, install it - didn’t help.
I removed nsight, download whole cuda 6.5 again and install it with their old drivers and old nsight - didn’t help

after installing cuda 6.5 i cant pause graphics debugging without visual studio crash and i cant see graphs again.

Graphics debugging

OpenGL trace analysis

My system info from nsight -> windows -> system info

I dont know what should i do to fix this :(

Can anybody help me with this problem, please ?

Tomas Lysek

Hi Lysocz,

You are using a laptop which have both Intel GPU and NV GPU, and OpenCL device also has two platform, one for Intel, one for NV.

I am not sure about your program’s implement, but maybe your program choose some other device to run OpenCL code and make Nsight see nothing.

I also notice your LG 22EA53 monitor is connected to Intel GPU, this will also easily make graphics sample choose different GPU.

Please try to disable Intel GPU and make sure your OpenCL and OpenGL sample run on NV GPU, then Nsight should show corresponding report for your sample.


I am not sure about this. I am explicitly creating context on nvidia graphics card and even when i choose intel platform for my program, nsight was working fine


I am not sure about your program, but how do you ‘explicitly creating context on nvidia graphics card’?

Maybe you can confirm by query glGetString() for GL_VERSION, GL_VENDOR, GL_RENDERER, etc. For OpenCL, you can try clGetDeviceInfo for CL_DEVICE_NAME, CL_DEVICE_VENDOR, etc. From the output string, you can see whether your sample runs under NV or other GPUs.



i am sure about this, because that is exactly what i do next - print device info

Hi Lysocz,

Hard to say why, maybe you can try this:

  • reinstall your driver, be note, please choose ‘Custom (Advanced)’, and check ‘Perform a clean installation’, then restart your machine
  • try to disable your Intel GPU, this will force your program and Nsight to identify the correct GPU

If this don’t work, I need more to investigate:

  • the detail steps to repro your issue
  • the samples to repro your issue
  • your driver version and GPU name

Actually, pause&capture OpenGL sample on your Optimus system will crash Visual Studio has been fix in next version.