Bus errorとSegmentation faultに困ったら見るブログ

物理の研究者による日々の研究生活のメモ書きです ( python/emacs/html/Japascript/シェルスクリプト/TeX/Mac/C言語/Linux/git/tmux/R/ポケモンGO)

【HTCondor】ジョブがHOLDになったときに詳細な理由を調べたい時、ジョブの現状を知りたい時

一番簡単なの

condor_q

ただ、これだけだと全容が掴めないし、他のユーザーのジョブも見れないことがある(HTCondorのversionによって変わる)ので

もっと詳しくみたい時

condor_q -all -nobatch

が便利

表示される項目の説明

  • ID ジョブのID、condor_rmでジョブを止めるときとかに使用する
  • OWNER 誰が投げたか
  • SUBMITTED 投稿時間
  • RUN_TIME どれくらい走ってるか
  • ST 今の状態 Iはidleでまだ走っていない、Rはrunで走ってる、Hはholdで走ってたけどなんかで止まった
    • Hになったときの理由を調べるのが割と難しい、1つの方法はlogファイルを見てそのジョブに何が起こったか把握する方法
  • PRI priority? 自分は設定してないのでわからない
  • SIZE メモリーの使用量だと思う
  • CMD コマンド、どういうコマンドを投稿したか
    • CMDが長い場合切れて表示される、全部見たい時は condor_q -all -nobatch -w とする (wide)

ジョブがholdになったときの理由を調べる方法

1つの方法はlogファイルを見てそのジョブに何が起こったか把握する方法

もう1つは、better-analyzeオプションを使ってジョブをみる

condor_q -better-analyze 590819

590819 にはcondor_qで調べたジョブIDを入れる

これで、ジョブが投げられた時の設定や今の状態の詳細が見れる
投げた時に設定されたcpu数やメモリー数が見れる
それに対応する計算ノードがあったかどうかもわかる、もしcpuの数が載ってるcpuよりも多い場合はずっとidleで止まると思うけどそれがここでわかる

あとはholdになったときもここでエラーが見れる