![]() |
先日、CPUをPentium4 1.7GHz(Willametteコア FSB400 2次キャッシュ256KB)から Pentium4 2.4GHz(Northwoodコア FSB400 二次キャッシュ512KB)にアップグレードしました。 CPUアップグレード前に、いくつかのサンプルをエンコードし、その時間を計測。そして、CPU アップグレード後に、同じサンプルをエンコードし、エンコード時間を測定することで、 CPUアップグレードに伴い、どれだけエンコード時間が短縮したのか比較してみました。 今回は3種類の実験を用意しました。 【実験マシンの環境】 OS:WinXP Professional M/B:GIGABYTE GA-8ITXR チップセット:i850 CPU:Pen4 1.7GHz と Pen4 2.4GHz メモリ:RDRAM 512MB(256MB*2) 使用したHD:ソース元、エンコード先ともに、ハードウェアRAID0上のHDD(IBM製 40GB*2) ◆実験1:TMPGEnc Plus V2.59とAviUtl (DivX PRO V5.02) を利用したエンコード時間 この実験では、赤みがかっているとクレームが殺到した某アニメの1分38秒の 720x480のMPEG2ファイル(映像)とそのWAVEファイル(音声)をソース として、『TMPGEnc Plus V2.59』と『AviUt 0.98d』を使用。 TMPGEnc Plus使用時は、MPEG1とMPEG2エンコードの両方を計測。さらに、赤みを 補正するために、色調補正フィルタをONにしたときとOFFにしたとき、 動き検索を、普通にしたときと最高画質(最低速)したときの合計6種類で計測。 MPEG1とMPEG2の両方を計測した理由は、MPEG2エンコードはMPEG1エンコードに比べて、 より速いCPUが求められる。その差を比較するため。 動き検索を普通と最高画質(最低速)の両方を測定した理由は、最高画質にしてエンコード した場合だと、CPU負荷が大きくなる。その差を見るため。 色調補正フィルタをONとOFFの両方を測定した理由は、色調補正フィルタをONにすると エンコード時間がかなり長くなる。その差を見るため。 エンコード条件だが、MPEG2エンコード時は、基本的にDVDテンプレートに沿った条件だが 今回は、レート調整モードをCQ_VBR(2000-8000 品質100)に変更、インターレース解除なし、 フレームレートは29.97fpsのままである。画像サイズは、720x480のまま。 アスペクト比率は、16:9 Display。音声はデフォルトのMPEG1 Audio Layer-2 384kbps。 MPEG1エンコードは、VideoCDテンプレートに準ずる。よって、CBR 1150kbps 画面サイズは、352x240、アスペクト比率は、16:9 Display。 音声は、MPEG1 Audio Layer-2 224kbps。 次に、AviUtlを使用。コーデックは、DivX5.02Pro。ソースはTMPGEncと同じ。CPU負荷を かけた状態でエンコードするために、処理が重くなる(エンコード時間が長くなる)フィルタを かけた状態でもエンコードした。フィルタONにしたときは、ノイズ除去フィルタ、色調補正フィルタ 拡張色調補正フィルタ、線塗りつぶしフィルタ、インターレース解除2フィルタ、 Lanczos 3-lobed 拡大縮小フィルタ、ウェーブレット・ノイズフィルタType-G、 インターレース解除 - 自動24fpsの条件でエンコード。フィルタOFFのときは、 インターレース解除すらせずにエンコード。 DivX5.02Proの条件は、1Pass-QB(100%)、slowest、Use Bidrectional Encording にチェックを入れてエンコード。音声は、LAMEコーデックのCBR 224kbpsでエンコード。 【ソース】:1分38秒の720x480のMPEG2ファイル(映像)とそのWAVEファイル(音声)
MPEG2、最高画質、色調補正ONにすると、エンコード時間がかなり長くなることが よくわかります。Pen4 1.7GHzで、DivX5.02ProエンコードのフィルタONでは、 1分38秒の動画エンコードに27分もエンコード時間がかかります。 おっそろしいですね。 上のグラフを元に、どれだけエンコード速度が速くなったのか(どれだけエンコード時間が 短縮されたのか)を別グラフで示します。 性能向上率[%](エンコード速度上昇率、エンコード時間短縮率) =100 - [ (Pen4 2.2GHz時のエンコード時間) / (Pen4 1.7GHz時のエンコード時間) * 100 ] ※数字が大きいほど、エンコード時間が短縮された割合が多い(エンコード時間が 短くなった)ということです。 性能向上率が20%だとすると、エンコード時間が2割短くなったということ、つまり、エンコード時間が 0.8倍になったということを示してます。
DivX5.02エンコード時の性能が目を見張りますね。性能向上率20%ということは、 実際のエンコード時間が3/4になるということです。5時間かかっていたエンコードが 4時間で終わるという計算です。その次に、MPEG1エンコード、MPEG2という順です。 MPEG2エンコードは、この中では一番伸びませんでした。 上記の図で一番気にあるところは、やはりMPEG1・MPEG2ともに、最高画質・色調補正ON にした場合での性能向上率の低さです。CPU負荷がよりかかる条件だけに、 CPUを速いのにアップグレードすれば、エンコード時間が結構短縮されるのではないか、 と思っていたのですが、結果は全くの逆。Pen4 1.7GHz → Pen4 2.4GHzへの アップグレードでは、ほとんどエンコード時間が変わらないという結果になりました。 |