x265 2.7+336 AVX512対応の効果
x265がついにAVX512に対応し、速度の出るビルドもできるようになったので、AVX512の効果がどのくらいか、確認してみた。
x265公式には、4K HDRで15%みたいな話があったりするけど、1080pだとだいたい~10%ぐらい?
AVX512の使用法
AVX512を使用するには、--asm avx512をつける必要があるので、x265guiExではコマンド入力欄に"--asm avx512"をいれておくと、AVX512が使われる。
--asm avx512をつけないと、AVX512が使えるCPUであっても、AVX512は使用されない。
AVX512最適化の効果
実験環境
i9 7980XE (18C/36T, 4GHz、AVX offsetなし)
電源設定: 高パフォーマンス
Aviutl 1.00
x265guiEx 3.67v2
x265 3.6+336 (fprofiled あり版 と なし版)
x265オプション
--crf 21 --preset <各種プリセット> [--output-depth 10] [--asm avx512]
※ --asm avx512をつけるとAVX512が使われ、つけなければ使われない。
ソース
sample_movie_1080p.mpg (1920x1080, 29.97fps, 5203frame, 2分53秒)
結果
だいたい5~10%といったところで、高速化しているものの、AVX2の20~30%のように非常に大きな効果というわけでもないみたい。
まあ、Intelから出ている資料では、1080pだと10%弱にとどまっているので、それにマッチする結果だと思う。この資料では、カーネル単位で高速化率を見たグラフがあるけど、カーネル単位で見ても平均30%前後、ほとんど速くなっていないものもあるので、まあ過度な期待は禁物、ということかもしれない。
また、今回はCPUを4.0GHz固定として、AVX2/AVX512 Offsetも切っているけど、AVX512 Offsetが大きめだったりすると、もしかすると効果がより弱くなってしまうかもしれない(まあ、冷却が十分ならAVX512 Offsetを有効にしなければよいだけだが)。
x265公式には、4K HDRで15%みたいな話があったりするけど、1080pだとだいたい~10%ぐらい?
AVX512の使用法
AVX512を使用するには、--asm avx512をつける必要があるので、x265guiExではコマンド入力欄に"--asm avx512"をいれておくと、AVX512が使われる。
x265 [info]: HEVC encoder version 2.7+336-07defe235cde
x265 [info]: build info [Windows][GCC 7.3.0][64 bit] 10bit
x265 [info]: using cpu capabilities: MMX2 SSE2Fast LZCNT SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2 AVX512
x265 [info]: Main 10 profile, Level-4 (Main tier)
--asm avx512をつけないと、AVX512が使えるCPUであっても、AVX512は使用されない。
x265 [info]: HEVC encoder version 2.7+336-07defe235cde
x265 [info]: build info [Windows][GCC 7.3.0][64 bit] 10bit
x265 [info]: using cpu capabilities: MMX2 SSE2Fast LZCNT SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
x265 [info]: Main 10 profile, Level-4 (Main tier)
AVX512最適化の効果
実験環境
i9 7980XE (18C/36T, 4GHz、AVX offsetなし)
電源設定: 高パフォーマンス
Aviutl 1.00
x265guiEx 3.67v2
x265 3.6+336 (fprofiled あり版 と なし版)
x265オプション
--crf 21 --preset <各種プリセット> [--output-depth 10] [--asm avx512]
※ --asm avx512をつけるとAVX512が使われ、つけなければ使われない。
ソース
sample_movie_1080p.mpg (1920x1080, 29.97fps, 5203frame, 2分53秒)
結果
だいたい5~10%といったところで、高速化しているものの、AVX2の20~30%のように非常に大きな効果というわけでもないみたい。
まあ、Intelから出ている資料では、1080pだと10%弱にとどまっているので、それにマッチする結果だと思う。この資料では、カーネル単位で高速化率を見たグラフがあるけど、カーネル単位で見ても平均30%前後、ほとんど速くなっていないものもあるので、まあ過度な期待は禁物、ということかもしれない。
また、今回はCPUを4.0GHz固定として、AVX2/AVX512 Offsetも切っているけど、AVX512 Offsetが大きめだったりすると、もしかすると効果がより弱くなってしまうかもしれない(まあ、冷却が十分ならAVX512 Offsetを有効にしなければよいだけだが)。