On this page |
-
このスケジューラは、Tractorで管理されたファーム上のワークアイテムを実行します。
-
Tractorクライアントがローカルマシン上にインストールしてセットアップされている必要があります。Pythonスクリプトが含まれている site-packages インストールディレクトリを PYTHONPATH 環境変数で指定してください。
Windows
C:\Program Files\Pixar\Tractor-2.3\lib\python2.7\Lib\site-packages
Mac
/Applications/Pixar/Tractor-2.3/...
Linux
/opt/pixar/Tractor-2.3/lib/python2.7/Lib/site-packages
クックモード
このスケジューラは、2種類のクックモードで動作させることができます。 通常のクックモードは、TOP UIのメニューまたはボタンのどれかから Cook を選択した時に使用されます。 これは、Tractorエンジンに接続して、ワークアイテムの実行の準備が整った時にそのワークアイテムのジョブを作成します。 次に、それらのジョブがステータスを変更させて投入マシンと通信します。 つまり、ジョブを投入するHoudiniセッションは、クック中に 必ず 開いたままでなければなりません。
別のクックモードとして、 Submit Graph As Job のボタンを使用することで、TOPネットワーク全体をスタンドアローンジョブとしてクックすることができます。
このモードでは、ジョブを投入するHoudiniセッションは、TOPネットワークのクックから切り離されます。
必要に応じて.hip
ファイルがコピーされ、通常ではHython Taskは、そのTOPネットワークのデフォルトスケジューラを使ってTOPネットワークを実行します。
このモードだと、現行Houdiniセッションの更新内容も反映 されなくなります 。
このモードを使用した時のジョブの進捗をチェックしたいのであれば、Tractorウェブポータルを使用する必要があります。
ネットワーク要件
クックの一部として、メッセージキュー(MQ)ジョブが投入されます。 このジョブは、実行中のジョブから投入マシンに情報を返すために使用されます。 このため、ファームマシンは、他のファームマシンのホスト名を解決できる必要があります。
Tip
これは、/etc/hosts
(Linux / MacOS)またはC:\Windows\System32\Drivers\etc\hosts
(Windows)を編集することと同じくらい簡単です。
さらに、ファームマシン間にファイアーウォールを設定しないようにするか、または、 Task Callback Port を使って、使用する開放ポートを指定する必要があります。
クックが開始されると、ジョブ投入マシンは、MQジョブを実行しているファームマシンに接続するので、そのジョブ投入マシンとファームマシン間にファイアーウォールを設定しないようにするか、または、 Relay Port を使って開放ポートを指定する必要があります。
認証
Tractorにワークを投入するアーティストは、ログイン情報をPDGに渡す必要があります。 $TRACTOR_USERと$TRACTOR_PASSWORDの環境変数が存在すれば、Tractor APIはそれらの環境変数を使って認証を行ないます。 Job Owner パラメータはジョブの所有者を設定します。 しかし、$PDG_TRACTOR_USER環境変数が存在すれば、その所有者はその環境変数で上書きされます。 Submit Graph As Job ワークフローを使用する際にPDGは実際にTOP Cookジョブを実行するブレードからTractor APIにログインする必要があるので、この環境変数が役立ちます。 その場合には、Tractorクライアント環境で$PDG_TRACTOR_USERを設定してください。 Tractor Password パラメータは、暗号化されないので、デバッグする時にのみ使用し、HIPファイルには決して保存しないでください。
TOP Attributes
|
integer |
スケジューラがワークアイテムをTractorに投入する時、TractorのJob IDとTask IDを追跡できるように、このアトリビュートをそのワークアイテムに追加します。
1番目のエレメントがJob |
パラメータ
以下のパラメータは、このスケジューラを使ったすべてのワークアイテムのグローバルパラメータです。
Submit
スケジューラがTOP Network全体をスタンドアローンジョブとしてクックさせたい時にコールします。 投入されたジョブのステータスURIを表示します。
Job Title
投入するジョブのタイトル。
Job Service Keys
ファーム上のTOPグラフを実行するジョブのTractor Service Key表現。 TOPグラフの実行には別でタスクが必要になるものの、メモリやCPUをあまり消費しないので、これには非力なスロットを使用すると良いでしょう。
Enable Server
ファーム上でクックするTOPジョブのデータレイヤーサーバーを有効化します。 これによって、PilotPDGまたは他のWebSocketクライアントからリモートでクック中のジョブに接続して、そのPDGの状態を確認することができます。
Server Port
Automatic
データレイヤーサーバーのTCPポートを自動的に選択します。
Custom
データレイヤーサーバーで使用するTCPポートを指定します。 これは、ファームマシンとモニタリングマシン間にファイアーウォールがある時に役立ちます。
Tractor Server Hostname
Tractorサーバーのアドレス。
Tractor Server Port
Tractorサーバーのポート番号。
Tractor User
Tractorサーバーログインのユーザ名。
Tractor Password
Tractorサーバーログインのパスワード。
Job Title
投入されたクックのトップレベルのJobのタイトル。
Job Priority
クックJobの優先度。
Tier
有効なサイトワイドのTierのリスト。各Tierは特定のグローバルジョブ優先度とスケジューリング規則を表します。
Projects
このジョブのプロジェクト所属の名前。
Max Active Tasks
PDG Cook Jobが並列で実行できるタスクの最大数。
Verbose Logging
有効にすると、バインドされているスケジューラからの詳細なメッセージがコンソールにプリントされます。
Use Session File
有効にすると、Tractor APIは1つのHoudiniセッション内でローカルユーザを何回も認証する必要がないように一時ファイルを生成します。
このファイルは$TEMP/.pdgtractor.{user}.{host}.session
として生成されます。
Working Directory
ワークが中間ファイルや出力を生成する場所となる相対ディレクトリ。
中間ファイルはサブディレクトリ下に配置されます。
ローカルスケジューラまたはHQueueスケジューラに関しては、通常では$HIP
を使用します。
他のスケジューラに関しては、ここには、Local Shared Root Path
やRemote Shared Root Path
の相対ディレクトリを指定してください。
そのパスは、それらのルートパスに追加されます。
Python Executable
ファームマシン上のPython実行ファイルのフルパス。これは、PDGワークアイテムのジョブラッパースクリプトを実行する際に使用されます。
NFS
NFSゾーン内のファームマシンのHoudiniインストールディレクトリのパス。
UNC (Windows)
UNCゾーン内のファームマシンのHoudiniインストールディレクトリのパス。
Service Keys
Message Queue Serverを実行するタスクのTractor Service Key表現。 Message Queueの実行には別でタスクが必要になるものの、メモリやCPUをあまり消費しないので、これには非力なスロットを使用すると良いでしょう。 Submit Graph As Job でTOPグラフをクックする場合、Message Queueタスクは生成されないことに注意してください。
Task Callback Port
Message Queue ServerのJobコールバックAPIで使用するTCP Portを設定します。このポートはファームクライアント間でアクセスできなければなりません。
Relay Port
PDGとMessage Queue Commandを実行しているクライアントとの間のMessage Queue Server接続で使用するTCP Portを設定します。 このポートは、PDG/ユーザマシンからファームクライアントに到達できなければなりません。
Job Parms
以下のジョブ特有のパラメータは、投入されたすべてのジョブに影響を与えますが、各ノードによって上書きすることができます。 Scheduler Job Parms / Propertiesを参照してください。
Service Key Expression
ジョブサービスキーエクスプレッション。これは、このジョブの実行に対応しているブレードのタイプを指定する際に使用されます。
At Least Slots
このコマンドを実行するためにTractorブレードで必須の最低限の空きスロット数。
At Most Slots
有効な場合、このコマンドを実行する時に使用する最大の空きスロット数。 明示的に設定しない限りは、これが Houdini Max Threads のデフォルト値として使用されます。
Houdini Max Threads
HOUDINI_MAXTHREADS 環境変数に値を設定します。 デフォルトの HOUDINI_MAXTHREADS は、 At Most Slots が有効になっていればその値が設定されます。
デフォルトの0は、利用可能なプロセッサすべてを使用することを意味します。
プラスの値は、利用可能なスレッド数を制限します。 1の値は、完全にマルチスレッド処理を無効にします(1スレッドのみに制限)。 プラスの値は、利用可能なCPUコア数で制限されます。
マイナスの値を指定すると、最大プロセッサ数からその値が引かれて、スレッド数が決定されます。 例えば、-1の値は全CPUコア数から1を引いたCPUコア数が使用されます。
Inherit Local Environment
有効にすると、PDGの現行セッション内の環境変数がJobの環境変数にコピーされます。
Tractor Env Keys
Bladeプロファイルで定義された環境キーをスペースで区切ったリスト。
Metadata
タスク定義に追加する任意の文字列。
Handle By
コマンドが失敗した(ゼロ以外のExitコードを返した)時の挙動をカスタマイズします。
Reporting Error
ワークアイテムが失敗します。
Reporting Warning
ワークアイテムが成功し、警告がノードに追加されます。
Retrying Task
Retries の回数だけTractorによってワークアイテムを再試行します。
Ignoring Exit Code
ワークアイテムが成功します。
Handle All Non Zero
無効にすると、特定のexitコードを指定することができます。
Exit Code
Handle By を使って制御したいexitコードを指定します。 ゼロ以外のすべてのexitコードは、通常では失敗として扱われます。
このパラメータは、 Handle All Non Zero が無効になっている時にのみ利用可能です。
Retries
コマンドが失敗した時にそのジョブを再試行する回数。
このパラメータは、 Handle By が Retrying Task に設定されている時にのみ利用可能です。
Job Environment
追加のワークアイテム環境変数は、ここで指定可能です。
Pre Shell
コマンド実行前に実行/ソース化したいシェルスクリプト。
Post Shell
コマンド実行後に実行/ソース化したいシェルスクリプト。
Pre Python
コマンドプロセスを分岐させる前にラッパースクリプトで実行したいPythonスクリプト。
Post Python
コマンドプロセスが抜けた後にラッパースクリプトで実行したいPythonスクリプト。
See also |