Haswellでx264エンコードほか
これまでのHaswell
Haswellそのいち。 - ついに来たHaswell
というわけで、Haswellでエンコード試してみる。
新アーキテクチャ + AVX2の効果はいかほど?
比較環境
すべて4GHzに揃えた。特に、Ivy対Haswellはメモリまで含めてほぼ同じ環境なので、はっきりとした比較ができるはず。
ソフトウェア環境 (共通)
Win7 x64
Aviutl 1.00
x264 r2334 (たくあん氏) x64 8bit/10bit light
x264guiEx 1.75
lwinput.aui r602 (POP氏)
m2v.aui 0.7.8
Avisynth 2.6 alpha4 2013/01/13
avs2pipemod r17 x86
LSMASHSource r608 (たくあん氏)
まずはスタンダードなx264エンコードから。
Aviutl + x264guiEx + x264でエンコード。
ソース
H.264/AVC 1920x1080 23.976fps プログレッシブ
2153frames(1分30秒) 俺ガイル OP
入力プラグイン: lwinput.aui
Aviutlフィルタ: なし
i7 4770K without AVX2は、ようするに--asm avxとして、AVX2用コードを無効化したもの。AVX2がどのくらい効果があるのかを見れる。
わかりにくいのでいくつかグラフで。
まずはsuperfastから。この辺りの高速設定はマルチコアをあまり生かせないので、シングルスレッドが強く、またメモリの高速なIvy/HaswellがWestmereXeonより有利。わずかにAVX2なしのほうが速い…。
slow。まあまあマルチスレッドが効く。そしてHaswellが結構大きくスコアを伸ばしている。
veryslow。CPU使用率はほぼ100%となる、マルチコアフル活用の設定。Haswellがそこそこスコアを伸ばし、CPUをフルに使っている状態でも、4コアながらXeon6コアに勝利。
次に、デコード速度。
avs2pipemodの-benchmarkを使った測定。
MPEG2 1440x1080i 42548frames 29.97fps
H.264/AVC 1920x1080p 2153frames 23.976fps
Haswellだとなぜかm2v.auiが圧倒的に遅い。びっくりしてこれだけは何回か取り直したんだけどやっぱり遅い。なぜだ…。
2013.06.04追記
お恥ずかしいことに設定ミスでした。申し訳ありません。グラフは設定見直し後のものに差し替えました。
LSMASH(libavcodec)はほんのわずかずつIvyより速くなってるものの、マルチスレッドが効くので6コアには負けてしまっている。
疲れた。とりあえずここまで。
まあ、Haswellは速くなるんだけど、めちゃくちゃ速くなるわけではないので残念。速度の向上はおおむね10%、どんなによくても20%は上がらないようだ。そして予告通りAVX2はあまり効かない…。
それから、m2v.auiの速度が遅くなるとか、今走らせてる自動フィールドシフトも遅くなってるようなので、いったいどうなってるのか…。下がるとか怖すぎる…。なんか妙なことが起こってる気が。C6/C7とかって切ったほうがいいのかなあ。(これはC6/C7オンでやってます)
2013.06.04追記
遅くなるのは設定ミスでした。すみません…。
QSVとかオーバークロックとか熱とかはまたそのうち。
Haswellそのいち。 - ついに来たHaswell
というわけで、Haswellでエンコード試してみる。
新アーキテクチャ + AVX2の効果はいかほど?
比較環境
OS | Win7 x64 | Win7 x64 | Win7 x64 |
---|---|---|---|
CPU | Xeon W3680 | Core i7 3770K | Core i7 4770K |
CPU世代 | Westmere | IvyBridge | Haswell |
コア数 | 6C/12T | 4C/8T | 4C/8T |
動作周波数 | 4.0GHz | 4.0GHz | 4.0GHz |
倍率 | 133×30 | 100×40 | 100×40 |
キャッシュ | L3=12MB | L3=8MB | L3=8MB |
メモリ | DDR3-1333 3ch | DDR3-2133 2ch | DDR3-2133 2ch |
レイテンシ | 8-8-8-20-2 | 9-11-10-28-2 | 9-11-10-28-2 |
メモリ量 | 18GB | 16GB | 16GB |
GPU | GTX660 | HDG4000 | GTX660 |
SSD | Intel 320 120GB | Plextor M3P 128GB | Plextor M5P 256GB |
すべて4GHzに揃えた。特に、Ivy対Haswellはメモリまで含めてほぼ同じ環境なので、はっきりとした比較ができるはず。
ソフトウェア環境 (共通)
Win7 x64
Aviutl 1.00
x264 r2334 (たくあん氏) x64 8bit/10bit light
x264guiEx 1.75
lwinput.aui r602 (POP氏)
m2v.aui 0.7.8
Avisynth 2.6 alpha4 2013/01/13
avs2pipemod r17 x86
LSMASHSource r608 (たくあん氏)
まずはスタンダードなx264エンコードから。
Aviutl + x264guiEx + x264でエンコード。
ソース
H.264/AVC 1920x1080 23.976fps プログレッシブ
2153frames(1分30秒) 俺ガイル OP
入力プラグイン: lwinput.aui
Aviutlフィルタ: なし
速度 (fps) | XeonW3680 | i7 3770K | i7 4770K without AVX2 | i7 4770K | |
---|---|---|---|---|---|
veryslow | 10bit | 5.295 | 4.709 | 5.137 | 5.511 |
8bit | 8.669 | 8.031 | 8.889 | 9.021 | |
slower | 10bit | 11.25 | 9.95 | 11.04 | 11.78 |
8bit | 16.43 | 15.06 | 17.05 | 17.53 | |
slow | 10bit | 17.43 | 15.27 | 16.98 | 18.15 |
8bit | 24.3 | 22.7 | 25.82 | 26.81 | |
medium | 10bit | 27.78 | 29.07 | 32.08 | 33 |
8bit | 32.1 | 34.59 | 38.96 | 39.35 | |
fast | 10bit | 29.8 | 32.99 | 36.71 | 36.59 |
8bit | 34.76 | 39.8 | 44.88 | 45.03 | |
faster | 10bit | 32.07 | 38.67 | 41.38 | 42.44 |
8bit | 37.41 | 45.75 | 50.78 | 51.12 | |
veryfast | 10bit | 34.1 | 44.25 | 47.69 | 47.8 |
8bit | 39.41 | 53.04 | 56.98 | 57.58 | |
superfast | 10bit | 35.72 | 46.27 | 50.41 | 49.9 |
8bit | 41.27 | 56.54 | 62.85 | 62.65 | |
ultrafast | 10bit | 37.44 | 50.19 | 56.54 | 55.94 |
8bit | 37.41 | 60.27 | 55.61 | 54.81 |
i7 4770K without AVX2は、ようするに--asm avxとして、AVX2用コードを無効化したもの。AVX2がどのくらい効果があるのかを見れる。
わかりにくいのでいくつかグラフで。
まずはsuperfastから。この辺りの高速設定はマルチコアをあまり生かせないので、シングルスレッドが強く、またメモリの高速なIvy/HaswellがWestmereXeonより有利。わずかにAVX2なしのほうが速い…。
slow。まあまあマルチスレッドが効く。そしてHaswellが結構大きくスコアを伸ばしている。
veryslow。CPU使用率はほぼ100%となる、マルチコアフル活用の設定。Haswellがそこそこスコアを伸ばし、CPUをフルに使っている状態でも、4コアながらXeon6コアに勝利。
次に、デコード速度。
avs2pipemodの-benchmarkを使った測定。
MPEG2 1440x1080i 42548frames 29.97fps
H.264/AVC 1920x1080p 2153frames 23.976fps
2013.06.04追記
お恥ずかしいことに設定ミスでした。申し訳ありません。グラフは設定見直し後のものに差し替えました。
LSMASH(libavcodec)はほんのわずかずつIvyより速くなってるものの、マルチスレッドが効くので6コアには負けてしまっている。
疲れた。とりあえずここまで。
まあ、Haswellは速くなるんだけど、めちゃくちゃ速くなるわけではないので残念。速度の向上はおおむね10%、どんなによくても20%は上がらないようだ。そして予告通りAVX2はあまり効かない…。
それから、m2v.auiの速度が遅くなるとか、今走らせてる自動フィールドシフトも遅くなってるようなので、いったいどうなってるのか…。下がるとか怖すぎる…。なんか妙なことが起こってる気が。C6/C7とかって切ったほうがいいのかなあ。(これはC6/C7オンでやってます)
2013.06.04追記
遅くなるのは設定ミスでした。すみません…。
QSVとかオーバークロックとか熱とかはまたそのうち。