バイナリプログラムへの入力ファイルを準備し、SGEキューイングシステムバージョン6.2u2にバイナリプログラムの実行を提出するperlスクリプトがあります。SGE-QSUBは-syncモードでジョブをサブミットできません
ジョブは、親パールスクリプトがwaitpid機能を使用してサブミットされたジョブの状態を監視できるようにするため、-sync y
オプションでサブミットされます。
親のperlスクリプトにSIGTERMを送信すると、このシグナルが各子に伝播し、このシグナルがqsubに転送され、関連するすべてのサブミットされたジョブが正常終了するため、非常に便利です。
このように、この-sync y
オプションを使用してジョブを送信できることは非常に重要です。
残念ながら、私は次のエラーを取得しておいてください。
Unable to initialize environment because of error: range_list containes no elements
は 'containes' の綴りに注意してください。つまり、NOTです。これは、コード/エラーメッセージのこの領域がいかに維持されていないかを示しています。
このエラーを発生させようとした送信は、*.e{JOBID}
および*.o{JOBID}
というSTDOUTおよびSTDERRファイルを生成することさえできません。提出は完全に失敗します。
Googleでこのエラーメッセージを検索すると、あいまいなメッセージボードの未解決の投稿のみが表示されます。
このエラーは確実に発生しません。私はスクリプトを再実行することができ、同じジョブが必ずしもエラーを生成するとは限りません。また、どのノードからジョブを送信しようとしても問題ではないようです。
私の希望は、ここの誰かがこれを理解できるということです。これらの質問のいずれかに
回答は、このように私の問題を解決するだろう:
- このエラーはSGEの最近のバージョンに固執していますか?
- これを避けるためにqsubのコマンドラインオプションを変更することはできますか?
- このエラーメッセージは何について話していますか?
qsubとqrshの違いは何ですか? –