My first problem was that I couldn’t insert breakpoints in my GLSL shader using VS 2017 and Nsight 5.4 (the error was “A breakpoint could not be inserted in this location”). My system info when this problem occurred was:
Win10 Pro x64, creator update, OS build 15063.632, Ver 1703
Visual Studio Enterprise 2017
Nsight VSE 5.4
GPU (single): Geforce GTX 780m
Driver: NVIDIA 385.69
Here are some of the solutions I found, but none were quite acceptable:
1- I started graphic debugging and opened a used shader from shader list from Nsight menu in VS2017, then closed it and opened the temp shader file that nsight creates in appData folder. I could insert breakpoints there, but it was quite buggy: the breakpoint vanished, could not be removed, and the “continue” option after break wasn’t functional.
2- I tried another laptop with pretty much the same software, except that the GPU was GTX960m (the architecture is Pascal and doesn’t support shader debugging). I COULD insert breakpoints there, but they didn’t function.
3- I used this second laptop as Nsight host and my own laptop as target, running the shader in my laptop and inserting breakpoints in the host. Worked like a charm, but I can’t use two laptops!
Next I decided to reinstall windows and everything else and try again. I upgraded windows to Win10 OS build 16299.19, version 1709 and tried both VS2013 and VS2017. The situation deteriorated! With driver version 385.69, when I started graphic debugging program didn’t start(no window opened) in either VS2013 or 2017. with driver version 388.13, graphic debugging started but this time in shaders list under “debug info” it reads “none”. And also the main problem with breakpoints (“A breakpoint could not be inserted in this location”) still existed.
The same problem exists when trying the host and target solution.
Sorry for the long post, but I thought it might help to include all the details. Let me know if you need any more info.
I’m sorry for the problem you met, can you provide more information please?
- Can you do shader debugging with the same sample using VS2015 & nsight 5.4?
- Did the feature of shader debugging work on the same sample before?
- Can you provide the sample to us please then we can identify the issue quickly?
- I’ve tried the shader debugging with an OpenGL sample using Kepler GPU & VS2017 & internal Nsight build, it works.
Can you please try it again? If the issue still happened, please wait for the release build and try it again.
Thanks so much for your reply.
As for your questions:
- Unfortunately I don’t have VS2015.
- No, I haven’t been able to use nsight on any sample whatsoever since I started using it a short while ago, and I’ve tried it many times.
- My samples are the official samples from NVIDIA github (https://github.com/NVIDIAGameWorks/GraphicsSamples).
Could you tell me if your GPU is single or comes along with a second one, for example an onboard one? (mine is single)
I used a single GPU - GTC 650Ti.
I can`t insert breakpoint in fragment and vertex shaders.
In my PC with windows 10 x64 I use Keppler family GPU - GeForce GTX 660.
Error from shader debugger: “The breakpoint will not currently be hit. Shader has not been bound on this device/context”
Name Intel® Core™ i7-3770 CPU @ 3.40GHz
Version Name Windows 10 Enterprise
Version Number 10.0.15063
Nsight Version 184.108.40.20640
Nsight Edition Standard
Visual Studio Version 11.0
Driver Version 388.71
Driver Model WDDM
CUDA Device Index 0
GPU Family GK106
Compute Capability 3.0
Number of SMs 5
Frame Buffer Physical Size (MB) 2048
Frame Buffer Bandwidth (GB/s) 144,192
Frame Buffer Bus Width (bits) 192
Frame Buffer Location Dedicated
Graphics Clock (Mhz) 516
Memory Clock (Mhz) 3004
Processor Clock (Mhz) 1032
RAM Type GDDR5
Attached Monitors 2
I’m sorry for the problem you met.
Please insert the breakpoints in the shader which was used by the current drawcall.
Steps as below:
1\choose a drawcall in scrubber view
2\open API Inspector view, choose VS or FS page
3\open the shader link, and then insert the breakpoints.
Please tell us if the method didn’t help you.
Thanks for your information.
Can we have your sample please? then we can identify the issue quickly.