FFmpegのVP9向けのAVX2最適化

FFmpegのVP9向けのAVX2最適化

Phoronixによると、Google Summer of Code 2017が終了した今、ハイライトすべきGSoC 2017プロジェクトはFFmpeg内のVP9デコーダに対してのAVX2への最適化だそうです。

学生デベロッパIlia Valiakhmetov氏の手によって手作業でAVX2周りのアセンブリ命令が編集され、FFmpegのVP9向けコーデックのAVX2向けの最適化が行われたようです。この最適化にはタイル・スレッディングのサポートなどが含まれているようです。

Ilia Valiakhmetov氏によると、タイル・スレッディングでは2スレッド場合で1スレッドの場合に対して最大35%、フレーム・スレッディングでは2スレッドの場合で1スレッドの場合に対して最大41%高速化するようです。

Tile threading is ~35% faster at 2 threads vs 1.
Frame threading is ~41% faster at 2 threads vs 1.

https://ffmpeg.org/pipermail/ffmpeg-devel/2017-August/215133.html

VP9とは

Wikipediaによると、VP9はGoogleの開発しているオープンでロイヤリティフリーな動画圧縮コーデックのようです。 ライセンスはBSDライセンスのようです。

VP9 は Google が開発しているオープンでロイヤリティフリーな動画圧縮コーデック。VP9 は VP8 の後継。コンテナとしては WebM などを使う。

https://ja.wikipedia.org/wiki/VP9

このコーデックはVP8の後継で、VP8と同等の品質で、半分のビットレートにすることなどを目指して開発されているようです。

Reduce video bitrate by 50% with image quality comparable to VP8 (SSIM, PSNR).

【PDF】
http://downloads.webmproject.org/ngov2012/pdf/02-ngov-product-requirements.pdf

ソース

http://www.phoronix.com/scan.php?page=news_item&px=VP9-AVX2-Boosts-FFmpeg

Add a Comment

メールアドレスの入力は任意です。(公開されることはありません)