
大家好啊,我是 jianpeng。今天和大家聊一下芯片研发里的计算集群,以及 LSF、OpenLava、Slurm 等常见调度系统。
芯片研发中经常出现这样的工作节奏:验证团队要跑一批不同 seed 的回归,后端团队正在等待一个大内存的布局布线任务,签核阶段又多出一批 STA 分析角。各团队都需要算力,但需要的算力并不一样。
研发计算集群首先要解决的问题是:怎样把不同研发任务,及时放到合适的机器上。 回归通常适合拆成许多独立作业;综合和布局布线往往要关注单机 CPU、内存与线程;STA、DRC、LVS 又涉及分析角、分块和前后依赖。具体并行方式由工具决定,调度系统负责分配资源、安排顺序和跟踪作业。
AWS 的半导体集群技术文章从这些任务差异讲起,再解释 Slurm 如何组织计算资源。按这个顺序比较各类系统,可以把调度功能直接对应到研发需求。[1]
下图展示一次研发任务从提交到结果的完整路径。中间的调度层承担三项职责:队列组织不同类型的任务,策略决定运行顺序,资源请求限定可用节点。

“LSF 集群”“Slurm 集群”通常是按调度系统给整套计算环境命名。图中的执行资源池和运行环境也不可缺少:IT/CAD 团队需要把共享存储、工具环境、用户权限等接到这条链路上。
本文按 LSF、OpenLava、Slurm 的顺序展开,再介绍 Grid Engine、字节跳动的 Volclava、Volcano、PBS 和 Accelerator。每一章介绍软件属性、核心功能、主要优势、适用规模和芯片研发场景。规模建议结合产品定位与公开案例给出;官方推荐范围、实际部署规模和产品容量上限分别说明。
一、LSF:多团队共享算力的商业调度体系
LSF 是商业软件。 IBM Spectrum LSF 提供作业调度和资源管理能力,适合中大型、多项目芯片研发平台,尤其是已有 LSF 工具链、需要厂商支持和跨站点协作的团队。[2]
LSF 将作业管理、调度决策和节点执行交给不同组件。下图展示这些组件的分工与任务流向。

mbatchd 管理队列、作业状态和派发,mbschd 负责调度决策;执行节点负责运行任务,并反馈作业状态与负载信息。[27]
从批量回归到多项目资源分配
先看回归。几千个用例如果逐个提交、查询、取消,管理起来很零碎。LSF 的作业数组可以把同一脚本的不同输入组织成一组,并限制同时运行的数量;作业依赖则能表达编译完成后启动仿真、仿真满足条件后进入汇总等关系。工程师仍然用熟悉的 bsub 提交、bjobs 查看,CAD 可以在外层统一封装工程参数。[3]
再看多项目竞争。队列、优先级、公平共享、抢占和回填可以组合成资源政策。例如,日常回归按项目份额分享机器;临近流片的签核任务获得更高优先级;大作业等待资源时,合适的小作业有机会利用空档。它的价值是把团队约定变成持续执行的调度规则,减少每次排队都需要人工协调的情况。[4]
资源匹配通过 CPU、内存、主机特征以及站点定义的条件选择执行机器,例如让布局布线任务进入大内存节点,让普通回归使用另一组机器。需要许可证感知时,还可评估配套 License Scheduler;这只是整个资源治理中的一项。
当本地机房不够用,LSF 还提供两类扩展:MultiCluster 处理集群间的作业转发与资源协作;Resource Connector 根据负载接入、释放云端等外部资源。它们分别解决多集群协同和弹性容量问题,需要结合实际组件与配置使用。[5]
适合多团队协作和跨站点研发
LSF 的主要优势是将批处理、项目资源政策、多集群协作和企业支持纳入同一套管理体系。IBM 的 Cadence 案例展示了本地与云端资源协作,覆盖芯片设计、系统验证和 EDA 工具开发。[6]
适合的规模是中大型、多团队共享的计算集群,以及需要跨机房或混合云的环境。小集群也可以使用,但是否值得投入,要看商业支持、现有脚本和管理需求。常见场景包括大批 RTL 回归、综合与布局布线、STA 多角分析、DRC/LVS,以及流片前的阶段性扩容。
二、OpenLava:保留 LSF 风格的开源批处理路线
OpenLava 是开源项目。 它具有早期 LSF / Platform Lava 的技术背景,保留了 bsub、bjobs 等命令习惯,提供 Linux 集群的基础批处理与资源管理能力。[7]
下图展示 OpenLava 的基本组件。主服务管理和调度作业,执行节点负责运行任务与反馈状态。

OpenLava 的主要调度逻辑与队列管理集中在 mbatchd,计算节点上的 sbatchd 负责本地作业,LIM 提供主机负载信息。它与现代 LSF 的组件划分并不相同。[28]
用队列、数组和依赖组织任务
OpenLava 的队列和主机负载信息,可以把任务分发到符合条件的执行节点;资源表达式可以描述选机条件、资源需求和任务放置方式。对 CAD 来说,这意味着可以把“这类任务去哪些机器、申请多少资源”放进统一提交入口,而不必让工程师自行寻找空闲服务器。
它也有作业数组、并发限制和依赖条件。例如,把不同 seed 的仿真放进一个数组,在编译作业完成后启动;或者用同一脚本执行一组参数扫描。交互式批处理和可重运行选项,则为调试、远程执行及特定恢复策略提供基础能力。[7]
适合任务稳定的小型计算池
OpenLava 的主要优势有两点:一是已有 LSF 风格封装的团队比较容易理解它的操作模型;二是源码可读、可修改,便于围绕明确需求维护批处理环境。命令和概念相近,不代表与现代商业 LSF 的全部行为兼容。
对于小型、任务类型稳定的计算集群,或已有 OpenLava 的存量环境,它可以作为基础批处理与迁移评估的对象。常见任务是独立仿真、参数扫描、编译测试,以及对复杂跨站点策略要求不高的日常计算。
长期使用时,应确定具体代码来源和维护责任。现有资料没有可靠的统一推荐节点数,其他衍生项目的规模建议不应直接套用到 OpenLava。
三、Slurm:覆盖多类计算任务的开源调度系统
Slurm 是开源软件,另有 SchedMD 商业支持可选。 它面向小型到大型 Linux 集群,可以统一管理 EDA、工程仿真和应用支持的 GPU 任务。[8]
下图展示 Slurm 控制服务、执行节点和记账组件之间的关系。

slurmctld 管理资源分配,节点上的 slurmd 负责执行端管理;可选的 slurmdbd 将记账信息写入数据库。srun 还会与执行端交互,不能将所有命令都理解成同一条通信路径。[29]
让不同任务各得其所
Slurm 的作业数组很适合组织大量结构相同、输入不同的任务。用一个批处理脚本读取数组索引,就能选择对应的测试用例或参数,并限制并发数量。依赖条件可以把编译、回归和后处理衔接起来;sbatch、squeue、sacct 分别承担常见的提交、状态查询和历史查询工作。[9]
它的另一项基础能力是明确分配 CPU、内存、GPU 等资源。CAD 可以按主机特征划分资源池,让普通回归与大内存实现任务各得其所;有 MPI 或 GPU 需求的工程计算,也可以使用同一个平台的资源框架。申请多个节点,只表示调度器分配了这些节点,应用是否能跨节点并行仍取决于工具。
多团队共享时,账户、QOS 和公平共享策略可以描述项目优先级与使用份额;记账记录用于查询历史资源消耗。回填调度则利用大任务等待期间的空档安排合适作业,因此提交合理的运行时限会影响调度效果。[10]
适合统一管理 EDA 与 HPC 资源
Slurm 的优势是资源模型清楚、开源生态成熟,而且能覆盖多类计算负载。AWS 专门给出了使用 Slurm 与 ParallelCluster 构建半导体设计集群的技术方案,说明它有明确的 EDA 落地路径;其中云端扩缩容能力来自整套集成方案。[1]
规模上,它可以从小型 Linux 计算池扩展到大型 HPC。OLCF 的 Frontier 用户指南展示了接近一万个计算节点的实际部署,不过这证明的是大型超算的管理能力,不能直接换算成 EDA 短任务吞吐量。[11]
典型场景包括 RTL 回归、PVT/参数扫描、大内存后端作业,以及 EDA 与 CAE、MPI 或 GPU 计算共享基础设施。采用该方案的团队需要把 EDA 环境、提交封装和业务政策接入平台,这也是开源路线投入的主要部分。
四、SGE / Grid Engine:灵活管理研发计算集群
Grid Engine 是一个同时存在开源和商业发行版的家族。 SGE 通常指历史上的 Sun Grid Engine;今天评估时,需要进一步明确是开源的 Open Cluster Scheduler(OCS),还是商业的 Gridware Cluster Scheduler(GCS)、Altair Grid Engine 等产品。[12]
下图展示 Grid Engine 从任务提交到节点执行的主要组件,具体进程组织随发行版而有所不同。

图中以现代 Grid Engine 发行版为例,调度线程位于 qmaster 内;作业下发到执行主机后,由 execd 和作业对应的 shepherd 管理执行。逻辑上的“调度器”不一定是独立进程。[30]
用资源属性和并行环境管理作业
Grid Engine 通过任务数组管理批量作业,通过资源属性匹配执行主机,再通过并行环境定义作业所需的执行槽位及分配方式。
任务数组与依赖负责把重复任务组织起来。工程师用 qsub 提交、qstat 查询,脚本根据任务索引选择输入。大量独立仿真、参数扫描或者测试向量计算,都可以使用这种方式。
资源属性(complex)用于描述任务需要什么、主机拥有什么。IT/CAD 可以定义内存、主机特征或其他站点资源,把一批配置不同的服务器放到同一个调度框架里。共享策略还可根据项目份额和历史使用调整分配,让计算集群服务多个团队。[13]
并行环境(PE)则进一步规定执行槽位怎样分布。例如,一个任务需要在单台机器上使用多个线程,还是需要分配到多台机器,必须与实际应用的启动方式配合。HPC-Gridware 的官方技术文章用 VCS 编译等工作流解释了“分配资源”和“启动进程”的关系,这个区分对 CAD 封装很实用。[14]
适用规模与芯片研发场景
它的主要优势是批处理概念直接、资源属性可配置,并且能延续已有 qsub 工具链。商业发行版还可能提供额外的监控、Web 管理、GPU 或支持服务,具体能力应按发行版选择。
Grid Engine 适用于部门级到大型工程计算集群,具体规模取决于发行版;维护方为当前产品描述了从少量主机到数千节点的覆盖范围,不能把这个范围当成所有历史 SGE 分支的共同能力。[12]
常见芯片研发场景包括仿真回归、参数扫描、编译任务,以及已有 Grid Engine 提交脚本的计算平台。对这类团队,保留成熟的工作流并改善资源管理,往往比单纯更换提交命令更有价值。
五、Volclava:字节跳动的开源调度器
Volclava 是字节跳动开源的项目,基于 OpenLava 2.0。 它与后面介绍的 Kubernetes 项目 Volcano 是两个不同系统。Volclava 官方推荐用于少于 100 个节点,并且对调度性能要求不高的集群。[15]
Volclava 沿用了主服务和执行节点的基本组织方式,并改进了批量提交与查询处理。下图展示这些请求的主要处理路径。

作业提交和派发仍由 mbatchd 主线处理。启用查询分流后,部分查询可由查询子进程处理;这条可选路径不会替代主服务的调度职责,默认也不开启。[31]
改善批量提交和日常查询
从公开版本说明看,Volclava 的改进很贴近日常使用。
首先是批量提交。bsub -pack 可以把多条提交打包成一次请求,适合一次发起一组回归或参数扫描。它减少的是提交交互层面的重复操作,不能直接等同于任何负载下吞吐都会提高固定倍数。[16]
其次是查询与通信路径。项目加入了可选的查询子进程分流和 epoll 通信处理;查询分流需要按配置启用。对于工程师和监控程序经常查状态的环境,这些改进值得结合实际使用方式评估。
第三是资源规则更容易理解,作业记录更有用。队列与作业的资源请求可以整合并展示有效结果,帮助 CAD 看清最后生效的要求;峰值、平均内存等记录则能为下一次任务申请提供依据。项目还提供 esub 配置与提交扩展能力,用来接入站点自己的提交规则。[16]
适合小型研发计算池
它的优势是,在保留 LSF 风格操作入口的同时,对提交效率、状态查询、资源信息和站点扩展做了改进。对于想延续 bsub 使用习惯的小团队,这比只列出守护进程名称更值得关注。
它适合官方推荐范围内的小型研发计算集群,用于常规仿真回归、参数扫描、编译测试,以及统一任务资源申请的 CAD 平台。接近规模或性能要求边界时,应结合实际提交频率、排队量和查询负载评估;官方“少于 100 节点”是推荐条件,并非硬上限。
六、Volcano:已有 Kubernetes 平台上的批量任务调度
Volcano 是开源的 Kubernetes 批处理系统。 它适合已有 Kubernetes 平台,或明确计划将部分研发计算容器化的团队。它管理的是由 Pod 等对象承载的工作负载,平台组织方式与传统主机批处理不同。[17]
下图展示 Volcano 的主要组件及其与 Kubernetes 的关系,任务管理和调度共同服务于批量计算。

官方图展示了准入校验、控制器、调度器与 Kubernetes 资源之间的关系。控制器管理作业生命周期,调度器选择执行节点;实际容器运行由 Kubernetes 的节点机制承担。[32]
让协同任务一起启动
VolcanoJob 可以描述一个作业中的多个角色、任务数量和生命周期策略。配合 Gang 调度,一组需要协同启动的任务可以在满足最小资源条件后再整体推进,避免部分进程先运行、其余进程长期等待资源。这对分布式训练或 MPI 类计算很有意义;彼此独立的 RTL 用例通常可以分别调度,不必刻意绑成一组。[18]
队列资源管理则用于多个团队共享 Kubernetes 集群。队列可以配置资源保障、容量和借用、回收策略;调度框架还提供优先级、公平共享与回填等政策。它解决的是怎样在平台上分配一批计算资源,而不仅是把容器启动起来。[18]
Volcano 还在异构资源、拓扑感知和计算框架集成方面扩展能力。已有 Ray、Spark、MPI、PyTorch 等工作负载的团队,可以围绕同一套 Kubernetes API、部署和观测方式组织批量计算。[17]
适合已有 Kubernetes 的研发平台
Volcano 的主要优势是批处理能力可以接入既有云原生平台。适合评估的芯片研发任务包括已容器化的回归流水线、验证日志分析、研发数据处理,以及设计空间探索中的算法训练。商业 EDA 工具是否适合放进容器,仍应按工具环境与支持条件确认。
规模建议是已有 Kubernetes 基础的共享计算池,特别是多团队的中大型批处理平台。Volcano 的锐天案例披露了 200 个计算节点,提供了实际部署参照;这是金融计算案例,只能作为系统运行规模的证据,不能当成芯片研发性能成绩。[19]
七、OpenPBS / PBS Professional:兼顾批处理与并行计算
OpenPBS 是开源软件,PBS Professional 是商业产品。 两者有共同的核心技术背景,选型时仍要确认具体版本、交付功能和支持方式。它们适合既有 PBS 环境,以及 EDA 与其他工程计算共用平台的场景。[20]
PBS 将作业服务、调度决策和节点执行分开。下图展示这三部分及其交互关系。

pbs_sched 作出调度决策,pbs_server 协调作业下发,执行主机上的 pbs_mom 管理任务。pbs_comm 位于通信层,负责消息路由,并不承担额外的调度决策。[33]
从作业数组到站点扩展
PBS 的数组作业和依赖适合组织一组输入不同的计算。PBS Professional 用户指南直接把 EDA 仿真列为数组应用场景:同一个脚本处理不同测试数据,系统统一跟踪这些子任务。[21]
资源管理方面,select 与 place 等请求用于描述所需资源块和放置方式,队列及调度政策再决定如何分配。对研发平台来说,这既可以表达单机大内存作业,也能为真正支持跨节点的工程计算安排资源。公平共享、回填和记账则帮助多个项目共同使用这套平台。
Hooks 扩展接口允许管理员在提交、执行等生命周期节点加入站点逻辑,例如检查资源请求、补充环境或执行自定义规则。这让 CAD 的业务规范可以在平台入口执行,减少对人工操作约定的依赖。[20]
适合 EDA 与工程仿真共用平台
PBS 的优势是批处理与并行资源模型比较完整,同时提供开源和商业交付选择。如果一个团队既跑芯片验证,又跑电磁、热分析等工程计算,这种统一资源管理方式值得评估;跨节点能力仍由实际应用决定。
规模上,它覆盖小型计算池到大型 HPC。ALCF 的 Aurora 有 10,624 个计算节点,并使用 PBS Professional 提交和管理作业,为商业产品提供了超万节点科研部署的例子;这不是任意 OpenPBS 安装的容量保证。[22]
在芯片研发中,典型场景包括仿真回归、PVT 与参数扫描、资源需求明确的实现任务,以及 EDA/CAE 混合计算平台。已有 PBS 管理经验与 hooks 积累的团队,也更容易复用现有能力。
八、Altair Accelerator:面向高吞吐 EDA 任务的商业调度
Altair Accelerator 是商业软件,面向 EDA 与 HPC 工作负载。 它针对大量作业的快速周转、多项目优先级和资源分配提供调度能力,适用于任务密集的芯片研发计算集群。[23]
下图展示 Accelerator 的提交入口、调度服务和执行节点,以及作业状态如何汇集到服务端。

vovserver 维护资源和作业状态并分派任务,计算节点上的 vovtasker 启动、管理作业并回报状态。图中的任务分派方向与网络连接发起方向不同:tasker 本身也是连接服务端的客户端。[34]
让大量研发作业有序周转
Accelerator 的调度采用事件驱动方式:任务提交、完成或资源变化会触发相关处理;具有相同调度条件的任务可以归入同一类 bucket。对大量重复作业,这种组织方式有助于减少反复处理相同调度条件的工作。具体吞吐表现仍取决于任务组合和系统配置。[23]
它也提供公平共享、优先级、抢占与预约,以适应不同研发阶段的需求:常规回归需要稳定周转,关键签核任务需要及时获得资源,不同项目则需要明确的份额安排。
资源申请涵盖 CPU、内存和主机条件,并提供 NUMA 相关控制。Jobclass 则可以保存可复用的提交设置,让 CAD 为常见作业类型准备统一入口。工程师选择合适的作业类别,平台就能带入相应资源和运行设置,减少重复填写与不一致配置。[24]
在云端,Rapid Scaling 等能力用于衔接弹性资源。Altair 的 Annapurna Labs 案例介绍了芯片前后端工作流和弹性 CI,说明这类调度器也可以围绕研发峰值组织云端计算。[25]
适合任务密集的芯片研发团队
它的优势是围绕 EDA 高吞吐任务,把调度响应、项目政策和提交规范结合起来。适合中大型芯片研发计算集群,特别是任务数量多、周转频繁、资源竞争明显的团队。
Altair 的半导体方案页面描述了 5 万以上计算核、50 万以上排队任务的规模。这是供应商公开口径,其中“核”和“排队任务”分别描述资源量与待处理工作量,不能写成 5 万节点或 50 万任务同时运行。[26]
常见场景包括大量 RTL 仿真、回归验证、编译和测试流水线、后端实现与签核,以及研发高峰期的云端扩容。选型时应同时比较提交速率、任务时长分布、项目策略和商业服务。
九、八类调度系统对比:怎样选择适合自己的集群
选择调度系统,需要先区分实际研发负载。下面五类任务重点涉及批量分发、单机大内存、流程依赖,以及多节点协同。

图中的任务形态会直接影响调度需求。同样是 100 台机器,一边每天处理很多短回归任务,另一边运行少量长时间大内存作业,对调度器的压力就不同。因此下面的规模栏是候选方向,具体容量还要连同任务吞吐、排队量、存储和管理方式一起看。
| 调度系统 | 商业 / 开源 | 核心功能 | 主要优势 | 适用规模与条件 | 常见芯片研发场景 |
|---|---|---|---|---|---|
| LSF | 商业 | 数组与依赖、公平共享、抢占、跨集群、弹性资源 | 成熟的多项目治理与商业支持,便于整合复杂研发平台 | 中大型、多团队、多站点或混合云 | RTL 回归、综合/P&R、STA、DRC/LVS、峰值扩容 |
| OpenLava | 开源 | 队列、负载选机、资源表达式、数组与依赖 | LSF 风格入口,源码可维护,基础批处理直接 | 小型、任务稳定或存量环境;需明确维护来源 | 独立仿真、参数扫描、编译测试 |
| Slurm | 开源;可采购商业支持 | 数组、依赖、CPU/内存/GPU、QOS、公平共享、记账 | 统一多类计算资源,开源生态与 HPC 积累 | 小型到大型 Linux/HPC;有万节点量级超算案例 | 回归、PVT、大内存后端、EDA/CAE 混合计算 |
| SGE / Grid Engine | OCS 开源;GCS、Altair Grid Engine 商业 | 数组、资源属性、共享策略、并行环境 | 可延续 qsub 工具链,灵活描述计算集群资源 | 部门级到大型;规模按具体发行版判断 | 仿真回归、参数扫描、编译、存量计算集群 |
| Volclava | 字节跳动开源 | 批量提交、可选查询分流、资源整合、内存记录、提交扩展 | 延续 LSF 风格并改进日常提交与管理 | 官方推荐少于 100 节点且调度性能要求不高 | 小型回归池、参数扫描、编译测试、CAD 资源规范 |
| Volcano | 开源 | Gang、任务生命周期、队列共享、异构与拓扑、框架集成 | 与既有 Kubernetes 部署和运维体系衔接 | 已有 K8s 的共享计算池;公开 200 节点非 EDA 案例 | 容器化回归、日志分析、数据处理、算法训练 |
| OpenPBS / PBS Professional | OpenPBS 开源;PBS Professional 商业 | 数组与依赖、资源放置、公平共享、回填、hooks | 批处理与并行模型完整,站点扩展与交付路线可选 | 小型到大型 HPC;PBSPro 有超万节点科研案例 | 仿真、PVT/参数扫描、实现任务、EDA/CAE 混合计算 |
| Altair Accelerator | 商业 | 事件驱动调度、任务分组、共享与抢占、Jobclass、云扩展 | 面向 EDA 作业周转与资源竞争组织调度 | 中大型 EDA 集群;供应商公开 5 万+核、50 万+排队任务 | 大规模回归、编译/CI、后端签核、峰值扩容 |
缩小候选范围时,先明确三个问题:主要运行哪类任务,已有哪套提交与运维能力,以及更需要开源控制力还是商业交付支持。多团队 EDA 平台可以先比较 LSF 与 Accelerator;统一 Linux/HPC 资源可以重点看 Slurm 与 PBS;已有 Grid Engine 工作流可从具体发行版继续评估;小型 LSF 风格环境可以研究 OpenLava 与 Volclava;已有 Kubernetes 的容器化计算则单独评估 Volcano。
下一步可以整理一份真实的作业清单,包含任务类别、CPU/内存、运行时长、每天提交量和前后依赖,再用它比较两三个候选系统。这样,功能表中的各项能力就能对应到具体的研发需求。
引用链接
- AWS:Create a Slurm cluster for semiconductor design with AWS ParallelCluster
- IBM:About IBM Spectrum LSF
- IBM:LSF 作业数组控制;作业依赖
- IBM:LSF 队列与调度配置
- IBM:MultiCluster 最佳实践;Resource Connector
- IBM:Cadence Designs 客户案例
- OpenLava 原始项目说明的保留版本;bsub 手册
- Slurm Overview;Slurm FAQ
- Slurm:Job Array Support;sbatch
- Slurm:Multifactor Priority;资源与回填配置
- OLCF:Frontier User Guide
- HPC-Gridware:GCS 与 OCS;产品与规模定位;Altair Grid Engine
- Oracle:Grid Engine 作业提交;资源属性;调度策略
- HPC-Gridware:Understanding Multi-node Jobs in GCS and OCS
- ByteDance Volclava 项目
- Volclava 2.2.0 版本说明;2.2.0-beta 版本说明
- Volcano 项目;异构资源与框架集成
- Volcano:VolcanoJob;队列资源管理;调度框架
- Volcano:锐天科技部署案例
- OpenPBS 项目;PBS Professional 管理指南
- PBS Professional 用户指南:作业数组
- ALCF:Aurora 系统概览;Aurora 作业运行与 PBS
- Altair Accelerator:Job Scheduling;产品功能导读
- Altair Accelerator:Jobclasses;硬件资源请求;NUMA 控制
- Altair:Annapurna Labs 芯片设计云端案例
- Altair:Semiconductor Design Workflow Solutions
- IBM:LSF 守护进程与组件分工
- OpenLava 原始 mbatchd / sbatchd 手册;LIM 手册
- Slurm 官方架构;作业启动机制
- Altair Grid Engine 组件与调度线程;HPC-Gridware 架构说明
- Volclava 查询分流说明;客户端请求处理代码
- Volcano 官方架构与原图;官方图源与许可证;Kubernetes 组件
- PBS Professional 安装指南:服务与通信组件;PBS 编程指南
- Altair Accelerator 运行原理;Taskers