I've been writing some OpenCL applications for my research project. These applications contain kernels which can run for a long time (~15 seconds). I am running into issues when running these kernels on my intel HD 5500 on Windows 8.1.
I've modified the TdrDelay registry value to try to avoid the system from killing the kernels for running for too long. I've set it to 30 seconds as of now.
Now, I am able to successfully run my kernels about 1/10 of the time. The rest of the times I get an error:
"Application has been blocked from accessing Graphics hardware"
This error seems to occur within 2 seconds of launching the kernel.
My driver version is: 10.18.14.4029
When the application runs to completion, the results are very promising so I'm really hoping to get this working more reliably.
Thanks a lot!
Could you please update to the latest and greatest driver from here https://downloadcenter.intel.com/product/86210/Intel-HD-Graphics-5500-for-5th-Generation-Intel-Core-Processors - try September driver if possible and let me know how it goes.
I updated the driver, now my version is: 10.18.15.4279
I also made sure my .NET installation was up to date (as suggested by other posts).
Unfortunately the problem remains. Is there anyway to gather more information about the error? I looked in event viewer and it only gives the message "Application my_opencl_app.exe has been blocked from accessing Graphics hardware."
Is there maybe a way to simply tell the system not to block applications from accessing the graphics hardware?
Is there any way that you can send me a private message with the application, so I can try and reproduce it on my end? I talked with our driver folks and they told me they have never seen this particular error message.
Thanks for the follow-up Robert,
I'm working on writing a small example that illustrates this behavior; my current applications are fairly complex.
I'll also try to reproduce the behavior on another machine just to make sure it isn't a quirk of my machine.
I'll keep you updated, thanks again!
I was able to solve the problem by modifying the registry. I added the registry value 'tdrlevel' and set it to 0. I then deleted the 'tdrdelay' value completely. I haven't observed the errors since this change.
I'm not sure why this solved the problem though; the documentation here:
seems to suggest that setting 'tdrdelay' to a high value would have been sufficient.
At any rate, it is working now!