These patches introduce tile threading support for vp9.

Tile threading is ~45% faster at 2 threads vs 1.
Frame threading is ~55% faster at 2 threads vs 1.
ffvp9 tile threading is ~25% faster than libvpx-vp9 at 2 threads

execute3() function is similar to execute2(), execept it has
a extra argument - main function for avpriv_slicethread_create(), it is used 
for the loopfilter.

Ilia Valiakhmetov (2):
  avcodec: add execute3() api to utilize the main function of
    avpriv_slicethread_create().
  avcodec/vp9: Add tile threading support

 libavcodec/avcodec.h         |   7 +-
 libavcodec/options.c         |   1 +
 libavcodec/pthread_slice.c   |  27 +-
 libavcodec/utils.c           |  13 +
 libavcodec/vp9.c             | 591 +++++++++++++++++++++++++++++--------------
 libavcodec/vp9_mc_template.c | 202 +++++++--------
 libavcodec/vp9block.c        | 526 +++++++++++++++++++-------------------
 libavcodec/vp9dec.h          | 106 +++++---
 libavcodec/vp9mvs.c          |  97 +++----
 libavcodec/vp9prob.c         |  64 ++---
 libavcodec/vp9recon.c        | 157 ++++++------
 11 files changed, 1036 insertions(+), 755 deletions(-)

-- 
2.8.3

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel

Reply via email to