术语表 · HPC 侧(调度、资源、环境)¶
读者:看到
squeue、NODELIST这类输出不知道什么意思的人。 前置:无。 读完能做什么:看懂集群命令的输出,知道什么算正常。 环境锚点:本机 Slurm 集群(控制.16/.17、计算.18/.19/.20);来源rainchen-env、lsf-simulation-env,核实日期 2026-10-13。
作业 job¶
- 一句话:你交给集群去做的一件活。
- 像什么:像去银行取号办业务;哪里不成立:取号后你必须在场,作业是你走开后集群替你办。
- 在本机:一个仿真点 = 一个作业,由 ADE-XL 逐个丢给 Slurm。
- 常见误解:以为提交完就在跑,其实可能一直在排队。
队列 queue(Slurm 叫分区 partition)¶
- 一句话:一组机器的分组,作业要进某个组才排队。
- 像什么:像食堂的不同窗口;哪里不成立:窗口是排一个队,队列是按优先级和资源匹配插队。
- 在本机:
compile(1 天)/regression(8 小时)/long(3 天);长仿真必须投long。 - 常见误解:以为队列先进先出。
提交作业(Slurm 用 sbatch,LSF 用 bsub)¶
- 一句话:把写好的作业脚本交给调度器。
- 像什么:像把快递交给驿站;哪里不成立:交给驿站就一定寄出,交给调度器可能只是"排队中"。
- 在本机:本项目用
srun(前台阻塞),不用sbatch——ADE-XL 要靠本地代理判断状态。 - 常见误解:以为提交成功就是开始跑。
查看作业状态(Slurm 用 squeue,LSF 用 bjobs)¶
- 一句话:看作业是排队还是运行中。
- 像什么:像查快递物流;哪里不成立:物流只有一条轨迹,这里一次能看到一屏作业。
- 在本机:
squeue -u $USER。 - 常见误解:看错作业号,看到的是别人的作业。
查看作业详情(Slurm 用 scontrol show job,LSF 用 bjobs -l)¶
- 一句话:看作业跑在哪台机器、几点开始、为什么排队。
- 像什么:像订单的详细页;哪里不成立:详情里的时间不一定是预计完成时间。
- 在本机:我们主要看
squeue的NODELIST——判断有没有铺开到多台机。 - 常见误解:以为详情里的时间是预计完成时间。
取消作业(Slurm 用 scancel,LSF 用 bkill)¶
- 一句话:让调度器停掉作业。
- 像什么:像撤单;哪里不成立:撤单立刻生效,取消后资源要等调度器回收。
- 在本机:
scancel <id>,禁通配(会误杀别人的作业)。 - 常见误解:以为取消就立即释放资源。
查看队列清单(Slurm 用 sinfo,LSF 用 bqueues)¶
- 一句话:看有哪些队列、各有多少机器和状态。
- 像什么:像看停车场各层的空位牌;哪里不成立:空位牌是实时空位,机器状态
UP不代表有空闲资源。 - 在本机:四分区共 3 节点 × 8 CPU,全集群 24 核。
- 常见误解:把机器状态
UP当成一定有空闲机器。
历史记账(Slurm 用 sacct,LSF 用 bacct)¶
- 一句话:查已结束作业的用量与退出状态。
- 像什么:像话费账单;哪里不成立:账单是事后统计,记账还能看到失败原因。
- 在本机:
sacct。 - 常见误解:以为作业结束就查不到。
作业数组(Slurm 用 --array)¶
- 一句话:一次提交一批相似作业,只是编号不同。
- 像什么:像群发一条短信给一列号码;哪里不成立:群发同时到,数组里每个作业仍要各自排队。
- 在本机:本项目不用数组,由 ADE-XL 逐点派发。
- 常见误解:以为数组里每个作业都会立刻跑。
作业依赖(Slurm 用 --dependency,LSF 用 -w)¶
- 一句话:让一个作业等另一个完成再跑。
- 像什么:像接力赛等前一棒交棒;哪里不成立:接力棒一定传到,依赖的前置作业失败后不会自动重跑。
- 在本机:本项目未使用。
交互式作业(Slurm 用 srun,LSF 用 bsub -I)¶
- 一句话:占着一台机器直接敲命令,不进批处理队列。
- 像什么:像开一间自习室单独用;哪里不成立:自习室不受管理,交互式作业一样受队列与资源限制。
- 在本机:进计算节点清 X 锁时用:
srun -p long -N1 -n1 -w <node> -t 00:05:00 bash。 - 常见误解:以为交互式不受队列限制。
模块 module(实现是 Lmod)¶
- 一句话:一组切换工具版本的环境变量,加载后命令才找得到。
- 像什么:像把工具箱搬到手边;哪里不成立:搬箱子是物理动作,module 只是改环境变量,没装任何东西。
- 在本机:
module load cadence && module load virtuoso/IC06.17.700(两阶段,不能合并、不能进管道)。 - 常见误解:以为装了工具就能直接用,其实常常要先
load。
资源请求(Slurm 用 --mem、gres 等)¶
- 一句话:告诉调度器你要几核、多少内存、要不要 GPU。
- 像什么:像点餐时说"要大份";哪里不成立:点大份只是多付钱,资源要得超单机上限会永远排不上。
- 在本机:本项目一点一核:
srun -N1 -n1 -c1 -p long --mem=2G --mpi=none。 - 常见误解:以为排队久一定是机器不够,也可能是资源要超上限。
账号与限额(Slurm 有账户与 QoS)¶
- 一句话:你属于哪个账户、能排多长、能用多少。
- 像什么:像信用卡额度;哪里不成立:额度是钱,这里是并发数与时长限制。
- 在本机:见
adexl.distribute的maxJobFailPerPolicy=3(失败阈值)。 - 常见误解:以为排队久一定是机器不够,其实是限额。
NODELIST / %R(作业落在哪些节点)¶
- 一句话:
squeue里显示这个作业跑在哪几台机器上。 - 像什么:像外卖显示骑手位置;哪里不成立:位置是动态的,这里显示的是作业已分配的节点。
- 在本机:判断负载有没有铺开的关键列。6 个点全落同一台 → 慢,见 concept.md。
- 常见误解:以为一台机器上跑多个点更快(其实会互相抢 CPU)。
作业残骸(SE / JobHeldUser)¶
- 一句话:作业失败后滞留在队列里的空壳。
- 像什么:像没取消的挂号;哪里不成立:挂号不影响别人,残骸会堵住后续派发。
- 在本机:
squeue见SE/JobHeldUser→scancel <id>清掉即恢复,见 howto-hpc.md。 - 常见误解:以为失败作业会自己消失。
相关¶
- 怎么用这些命令:见 cheatsheet.md 与 howto-hpc.md。
- 为什么这么设计:见 concept.md。
来源:
/home/rain/Documents/eda_tools_ins/design/docs/kb/glossary-hpc.md| 最后更新:2026-10-13 00:49(由build/sync.py同步,请勿在站点侧修改)