GT1030ではハードウェアエンコードできない(NVENCがない)

一年くらい前(もうちょっと前だったかな?)、GeForce GT210からGT1030に乗り換えた。GT210が壊れたわけじゃないけど、相当長いこと使ってきたので、おかしくなる前に。ファンレスを条件に予算で選んだのがGT1030。

世代もかなり進んでいるはずなので、高性能なんだろうけど、特段の変化は感じない。ゲームとかやるわけでもないので、「ま、こんなものか」と。

エンコードでGPUが頑張っていない

ゲームなどはやらないけれど、たまに、ビデオの編集くらいはやる。いつものことながら、エンコード時間の長さには閉口する。要するに、激遅。

そこそこ新し目のビデオカードを使ってもこんなものなのかと思っていたのだけど、ふと、パフォーマンスメータを見て「あれ?」と。

CPUは頑張りまくっているけれど、GPUは知らんぷり。

この例だと、3分程の長さのビデオのエンコードに、3分かかっている。

調べてみたら、なんとGT1030だけがハードウェアエンコーダ(NVNEC)を搭載していないとのこと。

ダメじゃん…。

GT710を入手

NVENCを搭載しているビデオボードだと、ローエンドはGeforce GT710らしい。このチップを使ったビデオカードはいろんなメーカから出ているけど、このASUSのものだけがビデオRAMがGDDR5(他社はDRR3)。どのくらいの差があるのか知らないけど、最近のビデオカードだとGDDR5が使われているようなので、このGT710-SL-2GD5-BRKを選択。

ASUS NVIDIA GT710搭載ビデオカード GT710-SL-2GD5-BRK

ASUS NVIDIA GT710搭載ビデオカード GT710-SL-2GD5-BRK

5,531円(03/08 19:37時点)
Amazonの情報を掲載しています

ちなみに、価格はGT1030を搭載したものの半額程度。

ASUS NVIDIA GT1030搭載ビデオカード GT1030-SL-2G-BRK

ASUS NVIDIA GT1030搭載ビデオカード GT1030-SL-2G-BRK

9,173円(03/08 19:37時点)
Amazonの情報を掲載しています

GT1030の方が世代が新しいし、クラスとしても上。スペックダウンになるわけなのでちょっと心配ではあるけど、元々GT210で困っていたわけでもないので大丈夫だろう。

GT710でエンコード

まず、表示に関しては普通に使える。当り前か。ゲームをやるわけじゃないので、描画速度がとかはまったく気にならない(換装前と違いがわからない)。

では、NVENCを使ってビデオエンコード。

CPUはそれなりに忙しくなっているけど、使用率が100%になっているわけではない。

GPUのVideo Encodeのグラフが上がっているので、GT710がエンコードに使われていることが分かる。グラフを見ているうちにあっという間に処理が終ってしまったので、慌ててキャプチャしたのが上の図。

エンコードに要した時間はわずか30秒。ソフトウェアエンコードでは3分かかっていたので、なんと6倍の速さ。素晴らしい!

あれ?ファイルサイズが違うぞ

エンコードはあっという間に終り、こりゃすごいと思っていたんだけど、できあがったファイルを見ると、ファイルサイズが違う。

ソフトウェアエンコードでは49MBほど(test2.mp4)だったのに、GT710のNVENCを使った場合は96MB(test2-2.mp4)。約二倍。速さの秘訣は手抜きエンコードなの?

念のため、GT710を搭載した状態でソフトウェアエンコードで実行してみたところ、やはりファイフサイズは約2倍になった(test2-3.mp4)。

処理時間は2分半ほどだったけど、これはそのときのCPUの忙しさ次第(他の処理との兼合い)ってところがありそう。

ちなみに、動画編集ソフトはShotcutを使った。設定は、ハードウェアエンコードを使うか否かを変えただけ。

ソフトウァエンコード時の設定

ハードウェアエンコード時の設定

「品質」は同じにしているんだけどなぁ。ソフトウェアエンコード(libx264)がやりすぎなのか、ハードウェアエンコード(h264_nvenc)が手抜きなのか…。

ファイルサイズの違いは気になるけれど、それでもこの速さは魅力。安いし。

ASUS NVIDIA GT710搭載ビデオカード GT710-SL-2GD5-BRK

ASUS NVIDIA GT710搭載ビデオカード GT710-SL-2GD5-BRK

5,531円(03/08 19:37時点)
Amazonの情報を掲載しています