I see this article http://software.intel.com/en-us/articles/media-sdk-tutorial-workload-analysis-and-benchmarking
Seems like asynchronous operation via task management can improved the performance , which is quite interesting.
my question is , is it possible to implement asynchronous VPP operation , by not calling SyncOperation() until it is necessary ?
Right, the VPP tutorial sample can be made asynchronous using the same method as was used for the encode sample. Making such modification will give you improved performance. We cannot cover all permutations in our samples, but feel free to extend the samples yourself for your needs.
Hi Petter ,
Thanks for your kind reply.
I have modified the VPP Tutorial Sample into the asynchronous mode. it works on the DX9 version.
When I try the DX11 version (simple_vpp_d3d11.sln) , the output is green color frame (Y U and V all zero).this is actually the same issue as I am asking in previous thread (http://software.intel.com/en-us/forums/topic/375035) any suggestion ? I could provide you the code I that modified if you need it.
The issue reported in (http://software.intel.com/en-us/forums/topic/375035) was resolved in the most recent update (18 April 2013) to the Media SDK tutorial samples. To download the latest package, go to bottom of the page at http://software.intel.com/en-us/forums/intel-media-sdk, and select "Download". Also make sure you use recent Intel Graphics driver from here: https://downloadcenter.intel.com/default.aspx. The most recent release is 15.31.3071.
Or is the issue only observed using your modified asynchronous VPP sample?
Hi Petter , update the intel graphics driver solved this issue. thanks.
I saw that all of Intel media SDK sample code, set the wait parameter of SyncOperation function into 60000ms , is it a recommended value ? or Could I set it to 5ms, 100ms or 1000 ms ?
One more question , I am just curious , under what condition the typical synchronous version of VPP could be faster than asynchronous version of VPP ?
SyncOperaton wait of 60000ms is purely arbitrary.You can set it to what ever value you want but keep in mind that if you set the interval to short, you run the risk of not letting the ongoing operation complete.
The asynchronous approach will always be faster than synchronous approach. But the benefit of async. for a individual session will decrease if you execute several VPP workloads concurrently, due to increased utilization of graphics resources.
Thanks Petter for your kind reply