1

I accidentally wrote a while loop that would never break in a kernel and I sent this to the GPU. After 30 seconds my screens started flickering, I realised what I have done and terminated the application by force. The problem is that I had to shut down the computer afterwards to make sure the kernels are gone. Therefore my questions are:

  1. If I forcefully terminate the program (the program that's launching the kernels) without it freeing the GPU resources (freeing buffers, queues, kernels, CL.destroying) will the kernels still run?
  2. If they are still running can I do anything to stop them? Say, like, release resources I don't have a handle to any more.
adrianton3
  • 2,258
  • 3
  • 20
  • 33

1 Answers1

0

If you are using an NVIDIA card, then by terminating the application you will eventually free the resources on the card to allow it to run again. This is because NVIDIA has a watchdog monitor on the device (which you can turn off).

If you are using an AMD card, you are out of luck AFAIK and will have to restart the machine after every crash.

Community
  • 1
  • 1
KLee1
  • 6,080
  • 4
  • 30
  • 41