次の方法で共有


アプリケーション ファイルとデータ ファイルについて

HPC Pack は、タスクの入力、出力、およびエラー ファイルの編成に関して柔軟です。 作業ディレクトリの標準入力標準出力および標準エラー タスクのプロパティを使用して、任意の共有場所へのローカルまたは汎用名前付け規則 (UNC) ファイル パスを指定できます。 タスクは、既定の作業ディレクトリに格納されているファイルでも操作できます。 どちらの場合も、共有フォルダー (できればファイル サーバー上) で中央のファイル ストアを使用することをお勧めします。

タスク 標準出力 標準エラー ファイルを指定しない場合、結果は hpcsheduler データベースに送られ、[ジョブ の表示] ダイアログ ボックス タスクの出力フィールドとして表示されます。 データベースには、タスクごとに最大 4 KB のデータが格納されます。 4 KB を超える追加データは切り捨てられます。 標準出力 を指定し、標準エラー ファイルを すると、タスクの出力はそれらの場所に送られます。

手記

ファイル パスを指定するときは、これらのファイルにコンピューティング ノードからアクセスすることに注意してください。 たとえば、"C:\Temp" は、ヘッド ノードまたはクライアント コンピューター上の Temp ディレクトリではなく、アプリケーションを実行しているコンピューティング ノード上の Temp ディレクトリを参照します。

プログラム ファイル

タスクのコマンド ラインでプログラム ファイルを指定する場合は、次のガイドラインに従います。

  • アプリケーションがすべてのコンピューティング ノードに存在し、Path 環境変数に追加されている場合は、実行可能ファイル名のみを入力します。 たとえば、「myapp.exe」と入力します。

  • アプリケーションがすべてのコンピューティング ノードに存在し、Path 環境変数に追加されていない場合は、各コンピューティング ノード上のアプリケーションへの完全なローカル パスを入力します。 たとえば、C:\Program Files\myapp.exeします。

  • アプリケーションがファイル共有にインストールされている場合は、実行可能ファイルへの UNC パスを指定します。 たとえば、「\\server_name\Program Files\myapp.exe」と入力します。

データ ファイル

既定では、標準の入力ファイル、出力ファイル、およびエラー ファイルは、アプリケーションを実行しているコンピューティング ノードの作業ディレクトリに対して相対的です。 作業ディレクトリ タスク プロパティの既定値は、ノード (%userprofile%) 上の送信ユーザーのホーム ディレクトリです。これは通常、C:\Users\user_name\Documentsを指します。

作業ディレクトリ タスク プロパティを使用すると、共有フォルダー上のデータ ファイルへのタスク アクセスを簡略化できます。 たとえば、\\fileserver\fileshare\ の作業ディレクトリと somefile.txt標準入力 を設定した場合、標準入力\\fileserver\fileshare\somefile.txtから読み取られます。

タスク 標準出力 を指定せず、標準エラー ファイルを した場合、結果はジョブ スケジューラ サービス データベースに送られ、[タスクのプロパティ] ダイアログ ボックスにタスクの出力フィールドとして表示されます。 データベースには、タスクごとに最大 4 KB のデータが格納されます。 4 KB を超える追加データは切り捨てられます。 標準出力 を指定し、標準エラー ファイルを すると、タスクの出力はそれらの場所に送られ、ジョブ スケジューラ サービス データベースには格納されません。

サブタスクとアスタリスク (*) を含むタスク

サブタスクを含むタスクでは、パラメトリックスイープインデックス(パラメトリックスイープ タスク)またはサブタスクID(サービスノード準備ノードリリース タスク)のプレースホルダーとしてアスタリスク(*) 文字を使用できます。 たとえば、最初のサブタスクでは、\\datashare\userName\file*.txt\\datashare\userName\file1.txt として解釈されます (または、パラメトリック スイープ タスクでは、最初のインデックス値として解釈されます)。

複数のアスタリスク (*) を含めると、インデックスまたはサブタスクの数を表すときに使用する位置の最小数を示すことができます。 これにより、より多くのポジションを必要とする数値は制限されません。 たとえば、\\datashare\userName\file****.txt は最初のサブタスクで \\datashare\userName\file0001.txt として解釈されます。

ジョブ スケジューラは、コマンドを計算ノードに送信する前に解釈します。 アスタリスク (*) を使用するコマンドを実行するには、キャレット (^) をエスケープ文字として含めます。 たとえば、フォルダーからすべてのファイルを削除する Node Release タスクを作成するには、次のようにコマンドを入力します。

delete c:\temp\^*

手記

コマンド プロンプト ウィンドウから送信されたコマンドは、ジョブ スケジューラに渡される前に解釈されます。 コマンド プロンプト ウィンドウで、同じコマンドを実行するタスクを送信するには、余分なエスケープ文字を追加する必要があります。 例: delete c:\temp\^^*

ジョブ スケジューラはコマンドを delete c:\temp\^*として受け取り、コンピューティング ノードはコマンドを delete c:\temp\*

その他の考慮事項

  • ネットワーク共有にアクセスする場合は、ドライバー文字マッピングを使用する代わりに完全な UNC パスを使用します。これは、異なるログオン セッション間でマッピングが保持されないためです。

  • 入力、出力、およびエラー ファイル用のファイル ストアの作成は、通常、クラスター管理者とユーザーの間で調整された作業であり、共有リソースに対する管理者のアクセス許可と監視、および関連するプロジェクト、ジョブ、ファイルに関するユーザー固有の知識が必要です。

その他の参照