PEGASYS
http://tmpgenc.pegasys-inc.com/ja/product/tvmw7.html

GPUの比較でTMPGEnc? と思われるかもしれないが、GeForceシリーズはNVENCと呼ばれるビデオエンコードエンジンをずっと搭載している。Pascal、つまりGeForce 10xxシリーズはGen4で、最大でHEVCの8Kに対応している。

TuringではGen6が搭載されているとされ、こちらはHEVC 8Kで30fpsのエンコードが可能という触れ込みだ。これを確認するべく、TMPGEncを利用してエンコードテストを行ってみた。

利用したのは最新版(2018年12月13日にリリースされたVer 7.0.3.4)である。説明では「TMPGEnc Video Mastering Works 7 は、インテル、NVIDIA、AMD 各社のCPU、グラフィックカードに搭載されるGPUを利用した高速なエンコード機能を搭載しています」ということなので、GeForce RTXシリーズにも対応していることを期待したわけだ。

そんなわけでテストであるが、いつもの4Kの映像を4K HEVCにトランスコードする速度を測定するが、あらかじめソースを4本用意したうえで、同時に1/2/4本のエンコードを行って比較した。ただNVENCでは同時に2本までしか処理ができない(Photo44)ので、結果は1 Thread(同時1本)と2 Thread(同時2本)のみである。

  • Photo44:3本以上のエンコードを行おうとすると「NVENCエンコーダーが利用できるようになるまで待機しています...」で2本までしか同時に行えない。このあたり、Turingで少し増えるかと思ったが、相変わらず同時にエンコードできるのは2本までだった

さて、結果はちょっと意外なものだった。最高速がGeForce GTX 1070というのは、これのみOC動作なので、NVENCのエンコーダそのものも少し定格より高速に処理できているためかなという気もする。

そしてGeForce GTX 1060では1 Threadと2 Threadで差がない、GeForce GTX 1070/1070 Tiでは倍とは言わないまでも大幅に性能があがっているのに、GeForce RTX 2060のみ、GeForce GTX 1060にも劣る性能になっている。

この理由は明白で、まだVer 7.0.3.4では最新のNVIDIA Video Codec SDKを利用しておらず、正しくTuringに搭載されたNVENCを利用できないためと思われる。

このあたりはもう少し経って、TMPGEnc側がバージョンアップでTuringにきちんと対応するのを待つしかなさそうだ。とりあえず現状、HEVCのエンコードのためにGeForceを利用しているユーザーは、GeForce RTX 2060の導入は少し待った方が良いということになる。