(2017/10/29 データ比較のグラフを追加しました)

遅くなったけど、Ryzen7 1700(以降1700)とRyzen Threadripper 1950X(以降1950X)の比較をします。
比較する手段は表題の通り、TMPGEnc Video Mastering Works 6。
とりあえず純粋なCPU性能勝負ってことでCUDAは無効。
テストのためにマイニング用のビデオカードは拝借できません。

エンコードするソースは再放送分のけものフレンズ「さばんなちほー」を使うことにした。
以前ソースにしていたファイルは先日の録画ファイル化け事件で全滅したので過去のデータと単純比較できないのはご容赦ください。(しかもコーデック変えちゃったし)

フィルター設定はインターレース解除(2倍fps化&アニメ補完2)のみ。
コーデックの設定はx265の品質固定(詳細省略)

まず1本エンコードする。
1700
R7_1encode_m

1950X
TR_1encode_m

graph_1encode

1950Xの方が速いけど、ご覧の通り動作クロックの分速いだけ。
R7_CPU-Z
TR_CPU-Z

Ryzenでパフォーマンスに影響のあるメモリーの設定はそれなりに合わせてある。
1700
R7_CPU-Z_MEM

1950X
TR_CPU-Z_MEM
そういえば、1950Xはクアッドチャネルにだけど、その恩恵を受けてる感じはしないなぁ。

エンコード中のCPU使用率はこんな感じ。
R7_CPU_Usage
TR_CPU_Usage
Threadripperはコア数多くて壮観ですな。
じゃなくて、コア数の多い分CPU使用率が低い。
当然その分たくさん仕事できるということで、多重作業させるしかない。
という訳で、次に2本同時にエンコード。
1700
R7_2encodes_m

1950X
TR_2encodes_m

graph_2encodes
うむ、Threadripperの本領を発揮し始めてる。
1700も1本当たりにかかる時間は短縮してるから!
(約51分で2本エンコードしたので1本あたり約25.5分という計算で)
1950Xが速すぎるだけだから!(約18.5分……)

エンコード中のCPU使用率。
R7_CPU_Usage_2encodes
TR_CPU_Usage_2encodes
CPU使用率が100%に張り付いてしまった1700に対して1950Xはまだ余力がある。
が、余力があっても、1本の時と同じ速度ではエンコードできてはいないけどね。

更に負荷を上げてみるってことで3本同時にエンコード。
1700
R7_3encodes_m

1950X
TR_3encodes_m

graph_3encodes
1950Xが順調に1700を引き離してる。
1700は1本当たりにかかる時間が2本とほぼ変わらない(約24.5分)のに対して1950Xは順調に時間を短くしてきてる(約15分)
R7_CPU_Usage_3encodes
TR_CPU_Usage_3encodes
1700は完全にCPUを使い切ったw
1950Xはまだ余裕を見せてる。
というか使用率の値が2本の時より低いやん……
スクショを取るタイミングミスった。

1950Xはまだ行けそうということで、4本同時エンコード。
TR_4encodes_m
流石にきつくなってきたけど、何とか1本当たりの時間は短縮(約14分)してるよ……

TR_CPU_Usage_4encodes
そろそろ限界ですな。

1950Xで本数を変えてエンコードした時の時間をまとめるとこんな感じ。
graph_4encodes
時間の伸び方は比例ではなくて一次関数に近い感じ。

かかった時間を同時に実行した本数で割るとこんな感じに。
graph_4encodes_per
1本はThreadripperの無駄遣いと罵られてもしょうがないかなw
やるなら2本以上だね。

という訳で、TMPGEncでは単体でエンコードするとTreadripperの良さはあまり出ません。
エンコード中にCPUの余力を他に回せるけど、それがどのぐらいの利点になるやら。
単体でのエンコードを速くするなら1800X買うか1700をオーバークロックすれば良いと思ふ。
アニメが多くて複数まとめてエンコード!っていうならThreadripperもあり。
そもそもTMPGEnc使うならIntelだろうという説もあるのは(゚ε゚)キニシナイ!!
ダブルグリスバーガー使いたくないしw

16コアでインターネットをやるのもいいけど、今はマイニングという活用方法があるので良いよねぇ。
cpu_mining
RyzenはMoneroをマイニングするのに向いてるらしい。