web-dev-qa-db-ja.com

Sun GridEngineアレイジョブの個々のリソース

Sun Grid Engineで、各サブタスクに固有の要件がある配列ジョブを作成することは可能ですか?たとえば、各タスクに小さな固有の要件がある配列ジョブがあるかもしれませんが、各ジョブを個別に起動する必要はありません。

3
Amit

私はあなたがリソース要件を意味すると思います。もしそうなら(そしておそらくそうでなくても)、答えはノーです。配列ジョブの定義は、すべてが共通のジョブ定義を共有する一連のタスクであるということです。リソース要件は、ジョブレベルで設定されます。

参考までに、ジョブの定義(JB_Type:source/libs/sgeobj/sge_job_JB_L.h)とタスクの定義(JAT_Type:source/browser/gridengine/source/libs/sgeobj/sge_ja_task_JAT_L.h)を参照してください。 JB_Typeはジョブのパラメーターの定義に関するものであり、JAT_Typeはタスクの実行の追跡に関するものです。

多くのジョブの送信と追跡を自動化する便利な方法を探している場合は、DRMAAをご覧ください。 SGEのAPIバインディングは、C、Java、Python、Ruby、およびPerlで使用できます。

ダニエル

1

各サブタスクは、それがジョブIDであることを認識しています。これは、環境(SGE_TASK_ID)からプルできます。

配列ジョブを操作するとき、各ジョブの一意の引数を処理するラッパーコードがあります。

まず、各ジョブの引数のフラットファイルを生成します。これは、SGE_TASK_IDに基づいてルックアップを実行できる限り、CSV、JSON、テキストなど、好きなものにすることができます。このファイルは、いくつかの一般的な場所に保存されます。

ジョブは、このファイルへのパスとともに送信されます。各ジョブが実行されると、このファイルを調べて、実行する引数のバンドルを見つけることがわかります。

0
Gary Richardson