問題タブ [sungridengine]
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.
linux - qsub のエイリアス コマンド
qusb の -V オプションは、環境変数のみをインポートし、 .bashrc からのエイリアスはインポートしません。例えば
そしてqsubスクリプトは
この場合echo $PYTHONPATH
、正常にls
動作しますがll
、la
エラーが発生しますll: command not found
。では、エイリアス コマンドを qsub にインポートするにはどうすればよいでしょうか。
alias
または、コマンド(ll
またはla
)が同様に動作ls
し、簡単にインポートできるようにするためのより良い代替手段はありますか
scheduler - これを満たすために太陽グリッドエンジンのスケジューリングポリシーを設定するにはどうすればよいですか?
太陽のグリッド エンジン (実際にはスケジューラ グリッドを開きます) を drm として使用します。uA、uB、uC の 3 人のユーザーがいるとします。uA が 100000 件のジョブを送信し、uB が 10 件のジョブを送信し、uC が 1 件のジョブを送信します。デフォルトのスケジューリング ポリシーでは、Grid Engine は uA の 100000 ジョブを実行し、次に uB の 10 ジョブ、次に uC の 1 ジョブを実行するため、uB と uC は長時間待機する必要があります。
スケジューラーが次のように実行するジョブを選択できることを願っています。
最初に、1 uA のジョブ、1 uB のジョブ、1 uC のジョブを選択します。
次に、19 uA のジョブ、19 uB のジョブを選択します。
次に、uAの他のジョブを選択します
これに合うようにポリシーを設定するにはどうすればよいですか?
working-directory - Sun Grid Engine でジョブの作業ディレクトリを取得するには?
qsub
パスの下でジョブを送信するとします/path/to/working/dir
。保留中のジョブの後、 でジョブの情報を取得できますが、 では作業ディレクトリ情報が提供されqstat
ません。qstat
どうすればこれを入手できますか?
unix - vmem と maxvmem
vmem と maxvmem について質問があります。Web で検索したのですが、この 2 つの単語について紛らわしい説明が本当にたくさんあります。私がしたことは、次のように入力することでした:
qstat -j 1154926 | grep vmem
出力は次のとおりです。cpu=00:05:25、mem=23.21121 GB、io=2.70481、vmem=239.277M、maxvmem=351.359M
変数の意味を理解するのを手伝ってくれる人はいますか?
一番
cluster-computing - SGE でエラーを抑制し、ログ ファイルを出力する方法
大きなログ ファイルを生成する Sun Grid Engine バッチ システムでコードを実行しています。-o および -e オプションを使用して出力場所を選択できますが、出力をまったく記録しないように指示できるかどうかを知りたいです。
queue - Sun gridengine エラー「ジョブ 119232.1 のシェパードが終了ステータス = 26 で終了しました」
バッチ キューイング システムとして gridengine (正確にはオープン グリッド スケジューラ 2011.11.p1) を使用します。という名前の execd ホストを追加しましたhost094
が、そこにジョブが送信されたときにエラーが発生し、ジョブのステータスは でありEqw
、ログインすると次のように表示され$SGE_ROOT/default/spool/host094/messages
ます。
どのような意味です?
exit-code - Open Grid Scheduler/Sun Grid Engine qrsh 停止/再起動時の不正な終了コード
qrsh 呼び出しを介して OGS をスポット インスタンスで使用しています。プログラムを適切に動作させるには、システムのシャットダウン (スポット インスタンスの喪失) が原因でジョブがいつ失敗したかを知る必要があります。
ssh 経由でリモート コマンドを実行し、リモート システムがダウンした場合、返される終了コードは 255 です。
私の問題は、OGS では、qrsh を使用してリモート コマンドを実行し、リモート システムがダウンしたときに返される終了コードが 0 であることです。0 は、「OK、すべて正常」を意味します。したがって、そのコードから、いいえ、大丈夫ではなく、再スケジュールする必要があることを知る方法はありません。
(もちろん、特定のコードを返すようにリモート呼び出しを変更することもできますが、それは標準ではないため、むしろ避けたいと思います。)
linux - セグメンテーション違反後に空のコア ダンプ ファイル
プログラムを実行していますが、セグメンテーション違反によって中断されます。問題は、コア ダンプ ファイルが作成されるが、サイズがゼロであることです。
そのようなケースとその解決方法について聞いたことがありますか?
ディスクに十分なスペースがあります。コア ファイルのサイズを制限しないように既に実行ulimit -c unlimited
しましたが、コア ファイルを実行するか、送信されたバッチ ファイルの先頭に置きますが、まだ 0 バイトのコア ダンプ ファイルがあります。これらのファイルを含むフォルダーのアクセス許可は uog+rw であり、作成されたコア ファイルのアクセス許可は u+rw のみです。
プログラムは C++ で作成され、Grid Engine の qsub コマンドを使用して Linux クラスターに送信されます。この情報がこの質問に関連しているかどうかはわかりません。
bash - SGEの変数名は無効ですが、ローカルではありません。
samtoolsmpileupを実行している短いbashスクリプトがあります。ローカルでは正常に動作しますが、SGEで実行しようとすると、「不正な変数名」のフィードバックが表示されます。
SGE変数の構文はbashとは異なりますか?
sqlite - SGE+ sqlite3 : エラー: データベースがロックされています
クラスター ( SGE ) でsqlite3を使用するスクリプトを実行しようとしています。
スクリプトはlockfileでロックを作成し、データベースをいっぱいにしてロックを解放します。
/commun/data/ はすべてのノードから見えます。/commun/data/_tmp.idp448.lock は私が作成したランダムな名前です。現在、新しいクラスターを使用しているのは私だけです。
qsub がなければ、スクリプトは問題なく動作します:
qsubが呼び出されたとき:
これは sqlite3 エラーです。
SGE側で、その問題、この動作の違いの原因が何であるかについてのアイデア、提案はありますか?
ありがとうピエール
アップデート:
クラスターのノードに root としてログインしました。次の単純なコマンドは失敗します: (/commun/data/stats2.sqlite は存在しません)
~root で動作します: