在我的代码中,我想使用qsub输出信息,例如作业ID,节点名称等,所以我考虑在分配节点时将qsub输出重定向到某个文件,然后可以后来我的代码使用了。
例如,当我使用
请求交互式节点时[abc@mike1 ~]$ qsub -V -I -l walltime=01:00:00,nodes=1:ppn=16
我正在获得这些输出
qsub: waiting for job 48536.mike3 to start
qsub: job 48536.mike3 ready
--------------------------------------
Running PBS prologue script
--------------------------------------
User and Job Data:
--------------------------------------
Job ID: 48536.mike3
Username: abc
Group: Users
Date: 01-Sep-2013 19:14
Node: mike099 (4657)
--------------------------------------
PBS has allocated the following nodes:
mike099
A total of 16 processors on 1 nodes allocated
---------------------------------------------
Check nodes and clean them of stray processes
---------------------------------------------
Checking node mike099 19:14:52
Done clearing all the allocated nodes
------------------------------------------------------
Concluding PBS prologue script - 01-Sep-2013 19:14:52
------------------------------------------------------
[abc@mike099 ~]$
在分配节点时,我可以将这些信息重定向到文本文件吗?
我试过像
这样的东西[abc@mike1 ~]$ qsub -V -I -l walltime=01:00:00,nodes=1:ppn=16 >> 1.txt
它给了我一个错误
qsub: standard input and output must be a terminal for
interactive job submission
答案 0 :(得分:0)
在-o
中使用-e
和qsub
选项。我有一段时间没有使用PBS,所以我希望这是正确的参数。
答案 1 :(得分:0)
我问我们的系统经理,他告诉我PBS环境变量可以用来获取这些信息:
PBS_NODEFILE : File containing list of allocated nodes
PBS_O_WORKDIR: Directory from where job is submitted
PBS_O_QUEUE: Queue job was submitted to
PBS_JOBID: Job ID number
PBS_JOBNAME: The name of the job.
PBS_NP: Number of processes requested
PBS_NUM_PPN: Number of processors per node requested
etc
例如,如果我想获取节点的名称,我可以使用
sort $PBS_NODEFILE | uniq
它会返回
mike409
mike410
mike411
mike412