【LSF】如何批量结束计算集群中的任务
资料来源
(1) 公众号-icsoc;
如何批量结束计算集群中的任务
(1) 问题
目前许多 IC 公司的计算集群都是 LSF 管理的。如何结束批量运行的 EDA 任务?例如运行 PT DMSA 时,会同时提交大量的进程,当运行有错误想中止任务时,在 Terminal 按 ctrl-c 会立即中断 PT DMSA 的 Master 进程,但大量的 Slave 进程可能并不会立即结束。
(2) 解决办法
通过 bjobs -l
命令观察这些 Slave 进程,可以发现 PT Master 在提交它们时,指定了有规律的 Job Name。从下例可以看出由三部分组成,第一部分是 Master 进程所在服务器的 HostName 和 PID,第二部分看起来是个自动生成的唯一辨识符,第三部分是 Slave 的序列号,所有 Slave 进程的 Job Name 只有第三部分是不同的。
Job Name <MetaServer-p223414.jbfd1b457110e2c5b.0001>
根据这个规律,就可以用通配符把所有的 Slave 进程都找出来,一起结束掉。
bkill -J "MetaServer-p223414.jbfd1b457110e2c5b.*"
如果别的 EDA 工具不像 PT 这么友好帮助我们统一命名 Job Name,我们也可以使用下列的选项指定有规律的 Job Name。
bsub -J "Meta Job Name"
从而在提交之后可以方便的把这些进程给找出来。
bjobs -J "Meta Job Name"