問題タブ [pbs]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
arrays - 送信時の PBS ジョブ配列 ID プレースホルダー
この質問に対する答えをウェブで探していましたが、役立つものが見つからなかったので、探しているものが不可能だと感じましたが、何かを見逃したかもしれません...ここで尋ねてみます:
PBS ジョブ配列を送信するとき、各ジョブの WORKING DIRECTORY が配列 ID に依存するようにします。明確にするための小さな例。1 から 100 までの範囲のジョブ配列 ( qsub -t 1-100 -v $array_size=100 .... called_script.sh
) の場合、各ジョブには、bunk_1-100、bunk_2-100、....bunk_100-100 という独自の作業ディレクトリがあります。Atm$PBS_ARRAY_ID
変数と、配列サイズ ( ) を含む渡された変数を使用$array_size
して、適切なフォルダーに移動します。
called_script.sh
サブミットスクリプトによって呼び出されるスクリプト内の命名スキームを修正しているため、このソリューションは実際には最適ではありません。
したがって、ジョブを送信するときにジョブ配列 ID のプレースホルダーのようなものがある場合、つまり. したがって、それぞれの called_script.sh は、自動的に異なる変数を持つことになります。qsub -t 1-100 -v $somevar=/some/directory/path/bunch-#PBS_ARRAY_ID_PLACEHOLDER-100 ... called_script.sh
$somevar
理論的には可能だと思いますが、これは理論に過ぎないと感じました:)。
回答がある場合は、事前に Thx
bash - スクリプト内の Trap コマンドは、CLI から呼び出された場合は機能しますが、PBS ジョブで使用された場合は機能しません
次の単純な bash スクリプトがあります。
コマンド ラインからこのスクリプトを実行すると、次のようになります。
次に、CTRL+CI を送信してスクリプトを中断し、2 つの電子メールを取得します。「受信シグナル EXIT」というメッセージを含むもの。もう一方には、「シグナル SIGINT を受信しました」というメッセージが含まれています。
ただし、このスクリプトを PBS ジョブとして実行すると、次のようになります。
そして、1、2 分待って、送信されたジョブで qdel を実行します。「受信シグナル EXIT」を含む電子メールしか受信しません。また、受信したシグナル SIGTERM を示す電子メールを受け取ることも期待していましたが、qdel のマニュアル ページには次のように記載されているためです。
誰かがこれがなぜなのか知っていますか? 理想的には、スクリプト内の何かが 0 以外の終了コードを返したときにメールを受信したいのですが、たとえば SIGINT や SIGTERM が原因でスクリプトが予想よりも早く終了したときにも別のメールを受信したいと考えています。
行を変更すると、いくつかの追加情報が表示されます。
に
最後に実行されたコマンドが「mailx -s "SIGTERM" "someone@anywhere.com"」であり、「sleep 1000」ではないことがわかります。したがって、SIGTERM シグナルがキャッチされるケースのようですが、後続のトラップ コマンドはキャッチされます。 PBS ジョブでは機能しません...
python - 出力ファイルには、スクリプトの終了前に何も含まれていません
print
いくつかのステートメントがあるpythonスクリプトを作成します。印刷された情報は、スクリプトの進行状況を監視するのに役立ちます。しかし、 を含む bash スクリプトpython my_script &> output
をコンピューティング ノードに qsub すると、スクリプトが実行されて何かを出力している場合でも、出力ファイルには何も含まれません。出力ファイルには、スクリプトが完了すると出力が含まれます。では、スクリプトの実行中に出力ファイルからリアルタイムで出力を取得するにはどうすればよいでしょうか。
pbs - TORQUE Resource Manager で保留中のジョブの PBS スクリプト ファイルを変更できますか?
ロックされたジョブ キューに、ステータスが のジョブがいくつかありますUserHold
。それらを起動した PBS ファイルを編集する方法はありますか? 以前qalter
はウォールタイム、グループ、または名前を変更していました。今回は、提出された PBS ファイルの aprun 呼び出しのパラメーターを変更したいと思います。
bash - 次のコマンドの前に一連の qsub ジョブが完了するのを待ちます
私が使用しているクラスターのリソース制限のため、bash で for ループを使用して大量のジョブを送信しました。次のコマンドの前に、pbs のすべてのジョブが完了するのを待ちたいです。ここのリンクは私の問題を解決するようです qsubジョブのセットが完了するのを待ち ますが、実行する次のジョブスクリプトがなく、いくつかの簡単なbashコマンドがある場合、-cwdの後に何を置くべきかまだ混乱しています
pbs タスクを送信するための for ループは次のとおりです。
すべての JobFiles が pbs で実行された後、いくつかの基本的なコマンド cat/cut などを使用して TransDecoder の出力を要約したいと思います。
誰でも助けることができますか?ありがとうございました