Community
cancel
Showing results for 
Search instead for 
Did you mean: 
271 Views

oneVPL (beta10) concurrent encode stream

Jump to solution

I am doing tests of encoding with oneAPI VPL for windows, release beta10.

The simple question is, how many stream could be simultaneusly encoded with the same machine on different thread?

I would say three, after run the sample Hello_encode (properly changed to to run with threads). With more, I experienced errors during initilization, MFXLoad failed or Encode init failed

Tests done with visual studio 2017 (OS. W10)

Appended source file used for tests

Thanks

 

 

 

 

0 Kudos

Accepted Solutions
Mark_L_Intel1
Moderator
212 Views

Hi Gabriele,


I have contact with dev team and here is the response:

  • oneVPL applications can be roughly divided into 2 phases: "init" and "main loop".  
  • In general, the "init" phase should not be considered completely thread safe. There are many things that can go wrong during init phase. 
  • The main loop is intended to be thread safe – if not we would consider this a bug. Nearly all performance gains would come from parallelization of the main loop.

So the suggestions is to put the thread in the main loop. And you can try this in our Gold release.


Mark


View solution in original post

5 Replies
ArunJ_Intel
Moderator
258 Views

Hi Gabriele,


We are forwarding your case to Subject matter experts, they will get back to you soon on this.


Thanks

Arun


Mark_L_Intel1
Moderator
252 Views

Hi Gabriele,


Are you saying to use hello_encode in Windows 10, you got an initialization error?


If yes, could you let me know how to reproduce it?


Mark


248 Views

Hi Mark,

you can reproduce the issue replacing the original source file Hello_encode.cpp with the one I had appended in the previous email.

As you can see from the code, I tried to run four coding threads at the same time, which is enough to trigger the initialization error.

regards

Gabriele

Mark_L_Intel1
Moderator
227 Views

Hi Gabriele,


Got it, let me check it out.


By the way, our Gold release just announced today, could you double check if this issue is still reproducible?


Mark


Mark_L_Intel1
Moderator
213 Views

Hi Gabriele,


I have contact with dev team and here is the response:

  • oneVPL applications can be roughly divided into 2 phases: "init" and "main loop".  
  • In general, the "init" phase should not be considered completely thread safe. There are many things that can go wrong during init phase. 
  • The main loop is intended to be thread safe – if not we would consider this a bug. Nearly all performance gains would come from parallelization of the main loop.

So the suggestions is to put the thread in the main loop. And you can try this in our Gold release.


Mark


View solution in original post