I'm developing an application that uses the GPU. Some tasks might be rather long (like a fragment shader with a loop). I have the impression that I can make the entire OS visually freeze by asking the GPU to perform a job that doesn't end. Of course, I'm not doing this on purpose, but when that accidentally happens, I have to force power off my machine and this is very difficult to debug.
Some questions:
- Is this behaviour normal? Or could this be a bug in the hardware or driver?
- Is there a technique to recover from this without force stopping my machine?
Since the OS is still functioning (only not rendering), I could try to ssh into my machine and kill the process. Would that free the GPU from its job?Update: I tried to ssh into my machine andsudo kill -9 *pid*
, but didn't work.
I would like to know if there is an OS independent answer for this. If there isn't, my setup is macOS, with OpenGL (running on Intel HD Graphics 3000).
ssh
into my machine from my phone and killing doesn't work. \$\endgroup\$