Freezing screen normal?

Is it normal that the screen incl. mouse freezes when the OpenCL kernel takes several seconds to process?
This would be a bad condition…

I am using Windows7 Pro x64 with a GeForce8200 onboard+512MB assigned and v190.89 64bit drivers.

Greetz!

I’ve seen this happen with CUDA on some machines and not on others. I think I remember tmurray saying that the reason for this is not easy to explain and some platforms will be affected while other won’t.

A kernel that takes a couple of seconds on a card that’s hooked to a monitor is pushing your luck anyway, the watchdog may decide to kill the driver. The default timer was set very low on my Windows 7 x64 (3-5 seconds IIRC) so kernels that run longer than that may trigger the watchdog.

So, in a word, it is “normal” ie. it’s not a malfunction or an error. It’s nasty, yes.

By the way, did you try newer drivers?

Thanks for the answer!

Yes, the driver is killed and restarted, then the program quits with an errormessage at the point where it should load the results from the device memory.

Yes, I tried newest “Nvidia GeForce 196.21 WHQL (Vista & 7, 64 Bit)”, but with these clGetDeviceIDs() fails to get a device group.

Now I will try to divide my workload into smaller parts that should take less time to avoid the driver to get killed.

Maybe this helps, I will report.

Greetz!

Ok, splitting the workload did the trick!

Now it runs without killing the driver, but working on the machine during calculation (takes about 5min) is still a pain in the a**.

Hopefully this is just a driver/compiler issue and will be solved soon!

What’s happening during the calculation? Is it high CPU usage or stuttering?

When the kernel runs, the screen freezes.
When the workload is divided into several scheduler calls, it stutters.
The bigger the workload, the longer the stutter…

That’s normal. Once a kernel begins executing on the GPU, it’s there until it finishes (either successfully or because of some sort of error condition). As a result, the screen won’t refresh while a kernel is executing, which is why you see UI responsiveness issues.

That can’t be normal!
How do you want to use OpenCL in a multithreading environment then?
How do they do it with SETI@Home and others on CUDA without stuttering?

Just trying to use smaller kernels.