I have been starting my development with GPU using OpenCL. I have been playing around with code which pushes limits.
During this I have been running into the situation where the computation time on the GPU is relatively long which results in the GUI becoming unresponsive and/or the GPU task takes so long that the device driver is reset.
While I understand why this happens and I am not looking for and explanation of why, what I am hoping to understand is how far can I push computation with a GPU which is being used by the system for GUI operations.
Is there any guide lines/best practices of this type of interactions
Is there any programming methods which would allow for long running GPU computation and still allow the GUI to remain responsive.
I know that the basic recommendation would be to split up the GPU task to be relatively small I am assuming that this is not possible, since I am exploring limits of GPU programming.
Any online discussions would be very useful.
Jim K