【AE】レンダリングでベンチマーク!

今日はAfterEffectsの研究記事になります。
前のブログで書いた記事をブラッシュアップして再掲載します✌('ω')


今回の記事の概要です。
 1.構成の違うマシンで、どのくらい処理速度に差が出るかの実験を行いました。
 2.複数フレーム同時レンダリングが有効になるか無効になるかでスピードが変化し、後述のベンチマーク用AEPだとスピードがCore i7だと2倍程度、Xeonだと6~7倍程度に変わりました。





先日の記事の結果に関連して、複数フレーム同時レンダリングがオンになっているか、オフになっているかで、どれほどパフォーマンスに差が出るかを調査しました。


今回使用するベンチマーク用AEPは、AfterEffectsのベンチマークとしてよく使用されている「AE-Speedometer」を使用させていただきました。


ただし、このaepではコンポジション内にパーティクル・プレイグラウンドが使用されているため、先日の記事の通り、マルチフレームレンダリングが強制的にオフになります。

 ※これに関しては、先日執筆した記事で触れていますので、併せてお読み下さい✌('ω')
  【AE】特定のエフェクトを使うとレンダリングが遅くなる!?



このaepを使用したベンチマーク結果を公開してくださっている先人様の記事では、このエフェクトによるマルチフレームレンダリングがオフになっている事を知らずに結果がほぼ変わらないという結論を出されているところが多いですが、実際はこのエフェクトを除外しなければマルチフレームレンダリングがうまくいきません。

パーティクルプレイグラウンドを消すと明らかにレンダリング中の挙動が変化し、レンダリング時間に大きな差が生まれます。

ただし、消すだけだと、
「マルチフレームレンダリングが有効になった恩恵ではなく、パーティクルプレイグラウンドを処理していない分だけ軽くなったのではないか」
という見方もできますので、以下の条件でレンダリングを行いました。


実際に複数のマシンでレンダリング時間を計測しました。

 1.AEP編集せず、そのままレンダリング
  (パーティクルプレイグラウンド有りで強制シングルフレームレンダリング)

 2.パーティクルプレイグラウンドのレイヤーを消し、シングルフレームレンダリング

 3.パーティクルプレイグラウンドのレイヤーを消し、マルチフレームレンダリング
  (WSとPCではCPUとメモリの構成が大きく違うため、マルチフレームレンダリングの設定が違う)


計測方法は以下の通りです。

 1.使用するAEのバージョンはCS6
 2.レンダリング計測は各設定で3回行い、その中央値を記録。
 3.レンダリング前にキャッシュを削除。

今回調査したマシン環境は以下のスペックです。




ベンチマーク結果はこちら。数字の単位はレンダリングにかかった時間(秒)です。







ベンチマーク結果に対する考察

今回使用した「AE-Speedometer」のコンポジション構造では、マルチフレームレンダリングを有効にする事で大きな恩恵を得られました。
Core i7では2倍弱Xeonでは7倍弱の速度になりました。

ただし、この数値は「AE-Speedometer」のコンポジション構造に依存する数値で、ベンチマークとは別のaepで行うとまた違った数値が出ました。
実際この効果はコンポジションによってまちまちで、稀にですが逆効果になるパターンも発生しています。



ちなみに!
今回使用したXeonは、コア数が多く、1コアあたりの周波数が低いモデルを使用したため、1コアあたりの処理能力はCore i7に劣っています。主にサーバー用途のXeonなんですね。

なので、この研究においてはシングルフレームレンダリングではCore i7に軍配が上がっています。

実はXeonには種類があり、Core i7に近い高クロック少コア数のものもあります。一言にXeonと言ってもケースバイケースらしいです。

今回使用したXeonをAfterEffects用途で使用するために悪戦苦闘しましたので、それはまた別の機会に✌('ω')




-----------
追記
<XeonのAfterEffects運用について>

コメント