Multiple streams on the same GPU
I have build a simple function that do some processing on GPU via OpenCL (OpenCV T-API). This function looks like:
void do_something(cv::VideoCapture capture_engine);
The GPU usage during calling this function on some stream (video or camera) is around 10%. I want to call this function in parallel for more than one stream (I have multiple cameras). However, there is not any mutual information between streams. Each one of them processes on its own.
How can I trigger this function in parallel for more than one stream and in the same in order to get benefit from the whole GPU (not just 10%)?
If you have a thread for each videocapture and call opencl in thread it should work?
Thanks.. Yes it should work.. But is it the best way to utilize GPU? or it gonna work like serial implementation ?
No idea. I think a test can be imagined like 3 threads with opencl and without opencl