UDN
Search public documentation:

SwarmJP
English Translation
中国翻译
한국어

Interested in the Unreal Engine?
Visit the Unreal Technology site.

Looking for jobs and company info?
Check out the Epic games site.

Questions about support via UDN?
Contact the UDN Staff

Unreal Swarm - Unreal Engine 3 の大量なアプリケーションの分配

ドキュメント概要: 一般的なアプリケーション/タスク分配システムである Unreal Swarm のハイレベルな概要。

ドキュメントの変更ログ: Derek Cornish によりページが追加。

このドキュメントの対象者

このドキュメントは、システムに関する高度な説明に関心がある方々や一般的なユーザーを対象にしています。これには、レベル設計者およびアーティストも含まれます。

Unreal Swarm とは何ですか?

要求の多いアプリケーションは、大抵の場合、システムがかき集めることのできるあらゆる処理能力を、理想的には追加された各プロセッサ コアを完璧に利用するパフォーマンスとともに、活用するようにデザインされています。これが、デュアルコアからクワッドコアへ、クワッドコアから 8 コアへという遷移を、これらのアプリケーションにとって有用にしてくれます。Epic のハイクオリティ静的グローバル イルミネーション ソルバである Unreal Lightmass は、その極端な計算の必要性から、このようなアプリケーションの 1 つとなっています。8 コアのシステム上でさえ、大きな、または複雑なレベルのライティングのリビルドは、イテレーション パフォーマンスが苦しむぐらいの時間がかかります。Unreal Swarm を見てみてください。

AgentInAction2.PNG

Swarm の使用

たいてい、Swarm は自動的に起動し、そのタスクを実行し、ユーザーの介入なしに終了します。エディタは、Lightmass ライティング ビルドをする際に、オンデマンドで Swarm を立ち上げることができ、Swarm Agent はそれを起動したエディタをトラックし、エディタが閉じると自動的に終了します。アプリケーションのデフォルトは Swarm 管理者によって設定されているので、よくある質問 (FAQ) やこのページのドキュメントを越える質問がある場合は、Swarm 管理者にアシストを頼んでください。

Swarm は静かで無干渉で大丈夫なようにデザインされていますが、常に例外はあります。そこで、よくある質問 (FAQ) の登場です。

Swarm に関するよくある質問 (FAQ)

なぜ分配されないのでしょう?

リモート Swarm Agent はいくつかの理由によって、作業を拒否する場合があります。もっとも一般的な理由は、他の作業に取りかかっていて忙しいというものです。他の可能性としては、忙しくて作業を始めることができないと決定した場合です。これは、コンパイルやクックなどの多大なリソースを必要とする他の何かにマシンが取りかかっていることが原因で起きることが多いです。Agent ウィンドウの Swarm Status (Swarm ステータス) タブで、ビルドを手伝うことのできるすべてのリモート エージェントの完全なリストを見ることができます。そのうちの 1 つが利用不可能な場合、他のビルドに沿って白いバーが動いているのが見えます。そのバーにマウスを乗せると、"Waiting for remote to become available (リモートが利用可能になるのを待っています)" というメッセージが表示されます。

また、ビルドをしてない場合に利用可能なリモート エージェントをチェックするより高度な方法は、 Log (ログ) タブをクリックし、 Network (ネットワーク) メニューから Ping Remote Agents (リモート エージェントをピング) を選択します。これで、リモート マシンとそれぞれの現状のリストを見ることができます。

Swarm Agent は、どのように起動してどのように停止しますか?

Agent が既に起動していない場合、エディタから Lightmass ライティング ビルドをすることで、自動的に起動します。この方法でエディタが Agent を起動させた場合、Agent はエディタをトラックし、エディタが閉じると Agent も自動的に終了します。そうでない場合、Agent は実行されたまま、いつでもジョブを管理する準備ができている状態になります。

Agent が実行している間は、Agent ウィンドウの ‘X’ をクリックすると、ウィンドウを非表示にするだけである (実行されたままでなければいけません) ことに留意してください。しかしながら、Agent トレイ アイコンは利用可能なので、これをダブルクリックしてウィンドウを再び表示させることができます。Agent を手動で閉じるには、Agent メニューから "File (ファイル)" -> "Exit (閉じる)" を選択するか、トレイ アイコンを右クリックして "Exit (閉じる)" を選択します。Agent がエディタから自動的に起動した場合は、エディタを閉じた際に自動的に閉じることを覚えておいてください。Agent を手動で閉じた場合には、また Lightmass ライティング ビルドをすると起動します。

Visualizer (ビジュアライザ) のバーには、どのような意味がありますか?

自分のマシンも含め、ライティング ビルドの作業をしている各マシンには、ステータスと進行状況を示すバーのセットが表示されます。各マシンは複数のスレッドを同時に実行していることがあります。これは、マシンごとに複数の水平線で表されます。ウィンドウの下部分には、色がどのような意味を持つかの説明文が表示されています。バーにマウスオーバーすることで、詳細を見ることも可能です。

AgentInAction2Decorated.PNG

セットアップとコンフィギュレーション

Swarm Agent 設定

CacheFolder
Agent のローカル キャッシュ フォルダの場所です。これは、十分な空き容量のある速いディスクに置かれるべきです。
MaximumCacheSize
キャッシュ メンテナンス ルーティンがキャッシュのディスク使用量 (単位はギガバイト) を維持しようとする最大サイズです。
MaximumJobsToKeep
常に維持しておく、ログ、バイナリ、出力ファイルを含むジョブの最大数です。
ShowDeveloperMenu
Agent 内の DeveloperSettings タブを有効化します。デベロッパーと QA にのみ推奨されます。
AvoidLocalExecution
これを True に設定すると、Agent がタスクをリモート マシンに のみ スケジュール使用とし、可能な場合ローカルでの実行を避けます。リモート マシンが 1 つも利用可能でない場合は、リモート ヘルプが利用可能になるまで、タスクをローカルにスケジュールします。
EnableStandaloneMode
リモート マシンへのジョブの分配を防ぎ、ローカルのみの実行を強制します。
BringToFront
True の場合、ジョブが開始すると、Agent ウィンドウが前面に表示され、 Visualizer (ビジュアライザ) タブが選択されます。
TextFont
Log (ログ)Visualizer (ビジュアライザ)Settings (設定) などの Agent ウィンドウのタブで使用されるフォントです。
Verbosity
Log (ログ) タブにログアウトされるレベル オブ ディテールです。

Swarm Agent のロギング

デフォルトで、Agent のすることはすべて CacheFolder 内の Logs フォルダにあるディスク上のファイルにログアウトされます。すべてのジョブの開始と終了時に新しいログが開始され、ログの論理的な分割が実行されるようになります。Agent の Log (ログ) タブへのデフォルトのロギング レベルは Informative (参考情報) です。ディスク上のファイルへのデフォルトのロギング レベルは ExtraVerbose (詳細情報) です。