HOME

Workflow & app guides

3ds Max V-Ray Jp
3ds Max V-Ray Jp
AfterEffects
AfterEffects
Blender
Blender
Cinema4D
Cinema4D
LightWave3D
LightWave3D
Maya Arnold JP
Maya Arnold JP
Maya Redshift JP
Maya Redshift JP
Maya V-Ray JP
Maya V-Ray JP
Modo Native
Modo Native
Modo V-Ray Jp
Modo V-Ray Jp
SketchUp
SketchUp
V-Ray
V-Ray
使い方ガイド
使い方ガイド

Articles

FAQ

Frame Per Execution(FPE)の使用法と最適化させる方法について

1、FPEの定義

FPEとは毎実行あたりのフレーム数のことで、アニメーションをレンダリングするときに設定できます。CPUでレンダリングされるプロジェクトのFPEの値は、 デフォルトでは1に設定されています。 これは、各フレームが毎回新しいもの(個別のタスク)としてレンダリングされることを意味します。つまり、新しいフレームが開始するたびに、シーンが各ノードにロードされます。 GPUでレンダリングされるプロジェクトの場合、デフォルトではFPEの値は5に設定されています。 つまり、1つのノードで5つのフレームが連続してレンダリングされることを意味します。

FPE(Frames Per Execution)設定を使用すると、レンダリングノードでシーンをリロードすることなく、複数のフレーム(入力した値)を連続してレンダリングでき、レンダリングのパフォーマンス/効率が向上する可能性があります。 シーンの読み込み時間が長いのにレンダリング時間が短い場合は、FPEをより高い値(たとえば4)に設定します。 ロード時間が短くレンダリング時間が長い場合は、値をデフォルトのままにするか、1に設定します。

注意:Frame Per Executionは、レンダーファームのユーザー間で、Frames Per Render(レンダリングごとのフレーム)、Frames Per Task(タスクごとのフレーム)、タスクチャンクサイズ(期限によって使用される)と呼ばれている場合があります。

このように、この設定は環境によって名前が違う場合がありますが、用語に関係なく、同じように機能します。

2、FPEを設定できる場所(GarageFarm上で)

Frame Per Executionの値を設定できる場所は2つあります。

一つ目は、Webダッシュボード(Webマネージャー)です。 ファームのキューにシーンを追加する際に表示される、送信ウィンドウに表示されます。 このウィンドウには、いくつかの設定があり、使用する3Dアプリによって異なる場合もありますが、 Frame Per Executionを含めほぼ一般的に同じです。

ジョブの送信やそれに関連する設定については、https://garagefarm.net/jp/software-guidesの使い方ガイドを参照してください。

How to use and optimize Frame Per Execution (FPE)
ウェブマネージャーのジョブ送信ウィンドウにある「Frame Per Execution」設定

Frame Per Executionを調節できる2つ目の場所は、renderBeamerアプリです。

まず、renderBeamerの設定(歯車のアイコン)で自動送信オプションを有効にする必要があります。 次に、[編集]を選択すると、自動送信の詳細設定に進むことができます。

このパネルで、対応している3Dアプリケーションの自動送信テンプレートを作成および管理できます。 利用可能ないくつかの設定の中に、FPEと呼ばれるフィールドがあります。ここでは、カスタムでFrame Per Executionの値を設定できます。 この値は、自動送信オプションが有効になっている場合、送信されるすべてのシーンに適用されますのでご注意ください。

自動送信は、レンダリングに必要なジョブの送信の手順の数を減らし、ワークフローを簡素化および高速化するための高度な設定です。したがって、自動送信は、標準のワークフローに慣れた後でのみ使用することをお勧めします。 こちらのビデオから、詳細をご確認ください:レンダリングジョブをクラウドレンダーファームに自動送信する

How to use and optimize Frame Per Execution (FPE)
renderBeamerの高度な設定にある「FramePerExecution」設定

renderBeamerアプリの詳細な説明とすべての設定のメカニズムに関しては、こちらからご確認ください: guide

FPEを使用する場合

以下に、Frame Per Executionsの設定を用いたさまざまな使用例をいくつかご紹介します。 各例には、合計レンダリング時間の計算、個々のレンダリング時間、コストと時間の見積もりを含む比較表など、様々なケースを詳細に説明しています。

例1 -100フレームのアニメーション

プロジェクトの詳細:

  • シーンの平均読み込み/処理時間:5分
  • 1フレームの平均レンダリング時間:2分
  • レンダリングするフレームの総数:100フレーム

最初のケース - デフォルト設定FPE = 1

How to use and optimize Frame Per Execution (FPE)

1ノードでの1フレームの合計レンダリング時間:7分(5分 - 読み込み時間、2分 - レンダリング時間)。
100フレームの合計レンダリング時間:700分(7分 x 100フレーム)。

この例の場合は、FPEが1に設定されています。この場合、1つのフレームをレンダリングする際、レンダリングプロセスを開始する前に、ノードが常にシーンをロードする必要があります。 そのため、前処理ローディング/時間に5分、実際のレンダリング時間に2分で、プロセス全体に7分かかることになります。 これがアニメーション全範囲のすべてのフレームに適用され、各フレームは別々のノードで別々にレンダリングされます。

2番目のケース -カスタム設定 FPE = 10

How to use and optimize Frame Per Execution (FPE)

1ノードでの1バッチの合計レンダリング時間:25分(5分 - ローディング/前処理時間、10 x 2分 = 20分 - レンダリング時間)。
10ノードでの10バッチの合計レンダリング時間:250分(25分 x 10バッチ)

FPEが10に設定されている場合、各ノードにおいて1回の実行で10フレームが連続してレンダリングされることを意味します。 したがってこの例では、シーンがノードに1回だけロードされ(5分)、1回のロードで10フレームがレンダリングされることがわかります(各フレームは2分でレンダリングされるため、10フレームで20分かかります) 。 10フレームの1つのバッチを、1つのノードでレンダリングした場合、合計時間は25分になります。

上の画像は、フレームがどのようにバッチに分割され、別々のタスクとして各ノードにレンダリングされるかを示しています。 これは100フレームのアニメーションであり、FPEが10に設定されているため、フレーム範囲が1〜100のプロジェクトでは10の別々のバッチでレンダリングされます(各バッチには10フレームが含まれます)。

FPE=1とFPE=10におけるコストとレンダリング時間の比較

FPE 1

FPE 10

タスク/実行1回のレンダリング時間

7分

25分

10ノードでのレンダリング時間

70分

25分

合計レンダリング時間100フレーム

700分

(11時間40分)

250分

(4時間10分)

費用

優先度"低"

33.40

8.35

優先度"中”

66.60

16.65

優先度”高”

133.20

33.30

FPE = 10でプロジェクトをレンダリングすると、パフォーマンスが向上し、コストが削減されます

この表には、プロジェクトに対する仮定(前処理/読み込み時間+レンダリング時間)に基づいて、デフォルトとカスタムの両方のFPE設定の詳細な計算が示されています。

一つ目の仮定は、FPE = 1の場合のコストとレンダリング時間を示しています。各フレームは別々のノードで別々のタスクとしてレンダリングされるため、この場合、100フレームの合計レンダリング時間は700分になります。 FPE = 10に設定すると、シーンの合計レンダリング時間を250分に最適化できます。これは10フレームの各バッチが、特定のノードにシーンを1度だけロードするためです。

適用した優先度とレンダリングプロセス全体(前処理/読み込み時間+レンダリング時間)に基づいてコストが計算されるため、この場合、読み込み時間がレンダリング時間よりもはるかに長い場合、最終的なコストの違いは重要です。

使用したハードウェア:この例では、コストと価格はCPUノードの計算に基づいています:2ソケット121 GB RAM(44コア)。 ノードの仕様の詳細については、こちらをご覧ください。

例2 -250フレームのアニメーション

プロジェクトの詳細:

  • シーンの平均読み込み/処理時間:10分
  • 1フレームの平均レンダリング時間:40分‍
  • レンダリングするフレームの総数:250フレーム

1つ目のケース -デフォルト設定FPE = 1

How to use and optimize Frame Per Execution (FPE)

1ノードでの1フレームの合計レンダリング時間:50分(10分 - 読み込み時間、40分 - レンダリング時間)。 
250フレームの合計レンダリング時間:12,500分(50分 x 2500フレーム)。

2つ目のケース -デフォルト設定FPE = 5

How to use and optimize Frame Per Execution (FPE)

1ノードでの1バッチの合計レンダリング時間:210分(10分 - ロード/前処理時間、5 x 40分 = 200分 - レンダリング時間)。
50ノードでの50バッチの合計レンダリング時間:10,500分(210分 x 50バッチ)

FPE=1とFPE=5におけるコストとレンダリング時間の比較

FPE 1

FPE 5

タスク/実行1回のレンダリング時間

50分

210分

10ノードでのレンダリング時間

1250分

(20時間50分)

1050分

(17時間30分)

合計レンダリング時間

12500分

(208時間20分)

10500分

(175時間)

費用

優先度"低"

1041.67

875.00

優先度"中”

1562.50

1312.50

優先度”高”

2083.33

1750.00

FPE = 5でプロジェクトをレンダリングすると、1つのノードでの最終的なコストとレンダリング時間の両方が改善されました

この表には、プロジェクトに対する仮定(前処理/読み込み時間+レンダリング時間)に基づいて、デフォルトとカスタムの両方のFPE設定の詳細な計算が示されています。

一つ目の仮定は、FPE = 1の場合のコストとレンダリング時間を示しています。各フレームは別々のノードで別々のタスクとしてレンダリングされるため、この場合、250フレームの合計レンダリング時間は12,500分になります。 FPE = 5に設定すると、5フレームの各バッチが特定のノードに1度だけシーンをロードするので、シーンの合計レンダリング時間を10,500分に最適化できました。

適用した優先度とレンダリングプロセス全体(前処理/読み込み時間+レンダリング時間)に基づいてコストが計算されるため、この場合、読み込み時間がレンダリング時間よりもはるかに長い場合、最終的なコストの違いは重要です。

使用したハードウェア:この例では、コストと価格はGPUノードの計算に基づいています:8x Tesla P10016GBvRAM。 ノードの仕様の詳細については、こちらをご覧ください。

注意:この例は、FPE機能の仕組みを説明するために作成されたものですのでご注意ください。 これらの値は決まったものではなく、プロジェクトごとに異なる場合があります。 各シーンには、処理時間と読み込み時間に影響する独自のプロパティと設定があります。加えて、見積もりはケースごとに個別に計算する必要があります。

4、FPEを使用することの長所と短所

  • FPEを使用する主なメリットは、準備/読み込み時間が長いシーンのコストを最適化することです。 FPE値を大きくすることで、1回のシーン読み込みプロセス(1回の実行)で特定の数のフレームを連続してレンダリングできます。
  • もう1つの利点は、キューから外れることなくノードのレンダリングをキープできることです。 FPEを使用すると、フレームの特定のバッチをレンダリングするノードを維持できます。 ノードを取得すると、ファームのキューが長い場合や優先度が低い場合でも、ノードをキープしてデフォルトで1に設定されているフレームよりも多くのフレームをレンダリングできます。 しかし、使用可能なすべてのノードを使用するわけではないため、フレームが長時間レンダリングされる場合は効果がないのでご注意ください。
  • 主なデメリットは、1つのバッチからすべてのフレームが完了するまでの待機時間が長くなることです。 これは、レンダリング時間が非常に長く(数十分以上)、高すぎるFPE値を使用する場合に影響します。 この場合、コストの最適化は、出力が完了するまでの合計待機時間に比例しません。
  • FPEの値を高くしすぎると、レンダリングソフトウェアがクラッシュする可能性があります。 これは一般的に起こることではありませんが、3Dアプリケーションが多数のフレームをレンダリングした後に再起動が必要になる場合があります。 そのため弊社のシステムには、大きすぎる値を使用するリスクを減らすために、FPEの上限があります。
  • 非常に稀なケースですが、カスタムでFPE値を設定すると、シーンが壊れたアニメーションのとなってレンダリング結果に影響を与える可能性があります。

5、FPEを使用してコストを計算し見積もる

それぞれのFPEと読み込み時間を設定したさまざまなケースにおけるレンダリングをシミュレートできるように、コスト計算機を設計しました。

以下の画像は、この計算機のオプションがどこにあるかを説明しています。

How to use and optimize Frame Per Execution (FPE)
コスト計算機の「Frame Per Execution」と「読み込み時間」の設定

計算機のリンク:https://garagefarm.net/jp/cost-calculator

注意:計算機は、ご使用のコンピューターに関するデータをGarageFarmのノードと比較します。 結果に基づいて、プロジェクトのレンダリングにかかる時間とコストを計算します。

これらの計算は提供されたデータに基づいているため、結果は推定値にすぎないことにご留意ください。 より正確な計算を行うには、ファームで直接テストを実行することをお勧めします。




Frame Per Execution(FPE)の使用法と最適化させる方法について
Chat