PBSキューイングシステムにジョブスクリプトをサブミットする場合、walltimeは自動的に、またはユーザーによって指定されます。 viaPBSジョブスクリプトでウォールタイムを取得する
#PBS -l walltime=1:00:00
この時間にジョブスクリプトからアクセスできるかどうかです。このウォールタイムを取得するには、環境変数や他の方法がありますか?
最終的には、キューイングシステムによってジョブが強制終了されないように、何らかの作業を行うのに十分な時間があるかどうかをジョブスクリプトが時折判断する必要があります。
更新:ユーザーがリソースリストにwalltimeを指定した場合、少なくとも
、私は(bashのために働いて)次の回避策を提案することができます
からwalltimeを解析しread _ _ PBS_WALLTIME <<< `qstat -f $PBS_JOBID | grep "Resource_List.walltime"`
qstatが出力され、PBS_WALLTIME変数に値が格納されます。したがって、コマンド
echo $PBS_WALLTIME
これは環境変数$ PBS_WALLTIMEに格納されて
1:00:00
PBS 4.2.8(およびその他のバージョン)では、$ PBS_WALLTIME変数は壁の時間を秒単位で格納するので、 'echo'は '1:00:00'の代わりに' 3600'を出力します。 – MasterHD