Houdini 20.0 HQueue

ジョブを投入する方法

ファーム上にワークを配置する方法。

On this page

Houdiniから投入する

  1. Houdiniで、/outに進み、HQueue RenderノードまたはHQueue Simulationノードを作成します。

  2. HQueueノードを設定します:

    • HQueue Server パラメータには、HQueueサーバーのネットワークアドレスを設定します。

    • レンダリングしたいROP(例えば、Mantra ROP)またはシミュレーションしたいROP(例えば、Geometry ROP)をHQueueノードで指定します。これは、そのROPをHQueueノードの入力に接続、または、HQueueノードの Output Driver パラメータの設定のどちらの方法でも指定することができます。

    • Target HFS パラメータには、ファーム上で使用するHoudiniインストールディレクトリを設定します。

  3. HQueue Renderノードの Render ボタン、または、 HQueue Simulationノードの Simulate ボタンをクリックします。

Karmaレンダラーの投入

  1. Houdiniで、/outに進み、HQueue Renderノードを作成します。

  2. HQueueノードを設定します:

    • HQueue Server パラメータには、HQueueサーバーのネットワークアドレスを設定します。

    • KarmaのレンダリングにKarma ROPまたはUSD Render ROPを使用している場合、 Output Driver パラメータにそのROPを指定するか、または、そのROPをHQueue Renderノードの入力に直接接続します。

    • KarmaのレンダリングにUSD Render ROP LOPを使用している場合、 Output Driver パラメータにそのROPノードを指定します。

    • Target HFS パラメータには、ファーム上で使用するHoudiniインストールディレクトリを設定します。

  3. HQueue Renderノードの Render ボタンをクリックします。

スクリプトからジョブを投入する

XML/RPCインターフェースを使って、ジョブの生成と管理をスクリプト化することができます。

スライスシミュレーションを投入する

  1. Distributeシェルフツールを使って、HQueue Simulationレンダーノードを作成して設定します。

    このシェルフツールは、Particle Fluids, Fluid Containers, Cloth, Wiresなどのほとんどのダイナミクス系シェルフタブにあります。

  2. ボリュームスライスのシミュレーションでは、HQueue Simulation ROPの Slice Divisions パラメータを設定して、シミュレーションをスライスに分割します。

    このスライスの数は、シミュレーションを処理するのに必要なクライアントマシンの数を決定します。 例えば、Slice Divisionsを2×2×2に設定すると、そのシーンをシミュレーションさせるのにHQueueには合計8台のクライアントマシンが必要になります。

    パーティクルスライスのシミュレーションでは、Distributeシェルフツールが自動的にシミュレーション内のスライス平面の数を調査して、それに応じて Number of Slices パラメータを設定します。

  3. HQueue Simulationレンダーノードの Render ボタンをクリックして、ジョブを投入します。

クラスタシミュレーションを投入する

HQueueファームに投入できるようにクラスタシミュレーションをセットアップする方法が2通りあります。

Smoke ClusterまたはPyro Clusterなどのシェルフツールを使ってクラスタシミュレーションを作成した場合

Distributeシェルフツールを使って、プロンプトが出た時に分散メソッドとして“Clustering”を選択します。Distributeシェルフツールは、Particle Fluids, Fluid Containers, Cloth, Wiresなどのほとんどのダイナミクス系シェルフタブにあります。

シェルフツールを使わないで手動でクラスタシミュレーションを作成した場合

クラスタシミュレーションが分散できるように手動で準備する必要があります。

(以下にその準備の手順を説明します。これはジオメトリネットワーク内に最低でもCluster Points SOPがあり、クラスタ化したジオメトリがシミュレーション用DOPにエクスポートされていることを前提にしています。)

  1. ROP Output Driver SOPをクラスタシミュレーションネットワークの最後に追加します。特に、クラスタシミュレーションをSOPコンテキストにインポートするDop I/O SOPを含んだネットワークチェーンにROP Output Driverを接続するべきです。

  2. ROP Output DriverのOutput Fileパラメータの値に${CLUSTER}を含むように設定します。これは各クラスタシミュレーションを別々のファイルに書き出すのに必要です。さらに、その値に$Fも含めてください。

  3. ROP Output Driverと同じコンテキストにFile Merge SOPを配置します。このノードは、クラスタジオメトリファイルをシーンに読み戻すために使用します。

  4. File Mergeノードで、Fileパラメータのチャンネル参照をGeometry ROPのOutput Fileパラメータに作成します。Merge Rangeパラメータの1番目の値を0に設定して、2番目の値のチャンネル参照をCluseter Points SOPのCluster SettingsタブのClustersパラメータに作成します。最後にMergeパラメータを'CLUSTER'に設定します。

  5. /outに進み、そこにHQueue Simulation ROPを配置します。

    Output Driver パラメータが前に配置したROP Output Driverを指すように設定します。 次に Partitioning Type パラメータを“Clusters”に設定します。 最後に、 Cluster Node パラメータがCluster Points SOPを指すように設定します。

  6. いつものとおりに、HQueue Simulation ROPがHQueueサーバーとファーム上のHoudiniの場所を指すように設定します。

  7. Render ボタンをクリックしてクラスタシミュレーションジョブを投入します。

Wegeシミュレーションを投入する

  1. /outに進み、そこにHQueue Simulation ROPを配置します。

  2. Output Driver パラメータがWedge ROPを指すように設定します。

  3. Partitioning Type パラメータをWedgesに設定します。

  4. いつものとおりに、HQueue Simulation ROPがHQueueサーバーとファーム上のHoudiniの場所を指すように設定します。

  5. Wedge ROPで指したOutput DriverノードのOutput Fileパラメータの値に${WEDGENUM}を含むように設定します。これは各Wedgeの出力を別々のファイルに保存するのに必要です。

  6. HQueue Simulation ROPに戻り、 Render ボタンをクリックしてジョブを投入します。

PDGジョブを投入する

  1. Houdiniで、TOPネットワークに入り、HQueue Scheduler TOPを配置します。

  2. HQueue Scheduler TOPで以下の内容を設定します:

    • HQueueサーバーのアドレス。

    • Universal HFS パラメータには、ファーム上で使用するHoudiniインストールディレクトリを設定します。

    • Load Path Map ボタンをクリックして、HQueueのネットワークフォルダ設定をPDGジョブ環境に取り込みます。

  3. TOPネットワークの Default Scheduler パラメータには、このHQueue Scheduler TOPを指定します。

  4. TOPネットワークをクックします。

非ネットワークフォルダから投入する

Houdiniからジョブを投入する時、.hipファイルが必ずしも共有ネットワークフォルダ下に保存されている必要はありません。 ローカルディレクトリ内でファイルを扱ってから、自動的にそのファイルを共有ネットワークフォルダにコピーして、それを投入することができます。

  1. HQueue RenderノードまたはHQueue Simulationノードで、 Render Current HIP File メニューから“Copy Project Files to Shared Folder and Render”に変更します。

  2. .hipファイルのコピー先を Project Path に設定します。

  3. Render をクリックすると、以下のようにファイルディペンデンシーダイアログが表示されます:

    共有ネットワークフォルダにコピーしたいファイルを選択して、 OK をクリックします。

リモートでジョブを投入する

HQueue RenderノードまたはHQueue Simulationノードが何か 他の .hipファイルのジョブを投入するように設定することができます。 これは、既に共有ネットワークフォルダ上に存在する.hipファイルをレンダリングしたいものの、そこへのアクセス権がない場合で役立ちます。

  1. ROP上で、 Render Current HIP File メニューを“Render Target HIP File”に変更します。

  2. 共有ネットワークフォルダ上の.hipファイルの場所を Target HIP に設定します。そのパスには、その共有ネットワークフォルダのルートを表現した$HQROOTを使用することができます。

  3. Render ボタンをクリックします。

HQueue

はじめよう

  • HQueueについて

    HQueueは多目的なジョブスケジューリングシステムです。このシステムを利用することで、レンダリング、シミュレーション、他の処理をリモートクライアント上に分散させることができます。

  • インストール

    基本的なHQueueファームのセットアップ方法。

  • 設定

    HQueueサーバーとクライアントのオプションを設定する方法。

  • ジョブを投入する方法

    ファーム上にワークを配置する方法。

ファームの管理

  • ジョブの管理

    ファーム上のジョブを閲覧/管理する方法。

  • クライアントの管理

    ウェブインターフェースまたはローカルログインを使って、クライアントマシンを追加/削除/再起動/管理する方法。

  • クライアントグループの管理

    ウェブインターフェースまたはローカルログインを使って、クライアントマシンのグループを作成/管理する方法。

  • ネットワークフォルダ

    Network Folder管理ページの使い方。

  • リソース

    各クライアントで利用可能なリソース(例えば、ライセンス)を指定することができるので、そのジョブを実行可能なクライアントに対してそのジョブのスケジュールを組むことができます。

  • ノート

    各クライアントとジョブには、情報を記載したノートを添付することができます。

次のステップ

  • ログ

    HQueueサーバーはサーバーエラーとスケジュールイベントのログを別々に記録し、各クライアントもログを生成します。

  • アンインストールする方法

    HQueueサーバーまたはクライアントのソフトウェアをアンインストールする方法。

  • FAQs

    よくある質問の回答。

導師レベル

  • Remote API

    ネットワーク上のHQueueサーバーに接続して関数をコールすることで、ジョブや他の情報を制御したり照会することができます。

  • ジョブの仕様の詳細

    独自のジョブを投入したいユーザ向けに、ジョブの内部仕様に関する詳細を載せています。

  • 複数クライアント、単一マシン

    単一マシン上で複数のHQueueクライアントを走らせる方法を説明したガイド。