简介#

什么是SkyForm算力调度系统,简称SkyForm AIP#

SkyForm算力调度系统(SkyForm AIP)是天云融创软件自研的信创基础软件产品,是针对AI、高性能计算和高性能数据分析的算力和任务调度系统。SkyForm算力调度系统为企业HPC(如EDA、CAE、生物信息等)和AI应用开发者和高性能计算用户提供针对异构算力资源提供多维度智能调度策略,满足用户最复杂的和最优的算力调度场景,适用于AI模型的开发、训练和推理及利用大模型开发AI应用,高性能计算应用和高性能数据分析的算力分配和调度,使算力能力能发挥到极致,以加速企业产品研发和提高企业服务质量,缩短项目时间,节约算力成本。

SkyForm算力调度系统提供多异构算力池的资源自动发现和监控、高速任务调度和大规模任务的分发,兼容业界传统超算调度器的命令行以快速集成各类应用。通过网络通讯转发机制实现安全的应用远程访问。内置3D可视化加速组件实现3D应用的远程可视化。这些多形态的应用支撑和快速集成增加了应用使用算力的效率。 调度系统支持多层用户组织结构,自动同步企业内部的AD/LDAP用户管理的组织成员。通过配置针对组织结构的调度策略实现根据业务算力优先级的智能调度。调度器支持多种调度策略的组合:先进先出、优先级抢占、大任务资源自动预留、基于真实负载的任务调度、GPU智能调度(专利技术)等大大增加调度的智能化,使算力效能最大化,运维成本最小化。 SkyForm算力调度系统提供可持续的每小时超过1百万个任务的高通量调度能力,这种调度能力保障生物信息、芯片设计和制造、金融数据分析领域的应用所需的算力使用效率。 SkyForm算力调度系统支持超过50万子任务的分布式并行任务的快速资源调度、子任务分发、监控和清理,超大任务分发和启动可在数分钟内完成,以保障大规模超算任务和AI大模型训练任务的有效可靠运行。 不同种类的CPU(如X86和ARM)、不同种类的加速芯片(国产GPU、GCU等以及进口GPU)和在同一算力池中进行算力调度,这种融合异构资源的融合算力池可使不同种类的算力应用,如高性能计算、高性能数据分析、交互式设计和开发、AI训练、AI推理等共享算力资源,提高吞吐、降低建设成本。 为满足不同类型客户的需求,SkyForm算力调度系统还内置了计量和计费功能,可以根据定价自动生成用户级月账单。

SkyForm AIP的部署架构#

常规的HPC集群含有至少一个登录节点、一个管理节点、和多个计算节点。计算节点的配置也各不相同,有些有大内存的“胖节点”,许多集群,尤其是机器学习的集群,含有GPU的GPU节点。

所有节点都接在共享文件系统上。共享系统可以使用如IBM GPFS,开源Lustre,或Ceph FS,或者NAS一体机(如NetApp)等。

用户认证服务(如LDAP服务)安装在管理节点上,所有其他节点都是用该服务进行用户认证(如LDAP客户端)。

../_images/deploy_arch.png

SkyForm AIP部署架构#

小的集群管理节点和登录节点可以合而为一,或者管理节点和计算节点可以合而为一。

AIP的部署为:(1)管理节点和计算节点(2)登录节点。

备注

“节点”在本文中也叫做“主机”。这两个词会交替使用。

AIP包中含有多个额外的组件。下图显示了AIP的其他几个组件,包括:分析数据采集服务和分析数据库、 监控数据采集和可视化、REST API服务、以及VNC门户等。

../_images/aip.png

SkyForm AIP组件#

SkyForm AIP对资源占用#

与一般调度系统类似,SkyForm AIP占用资源非常少。对于50节点以下的集群,在一般的节点上的内存,CPU等没有特殊要求。SkyForm AIP不用数据库,不用Java,所以非常简洁。

概念和术语#

在您开始使用SkyForm算力调度系统前,请先了解下表中所描述的概念和术语。

表1-1 SkyForm任务调度系统概念和术语

概念/术语

描述

集群(Cluster)

集群是一组主机的集合,这些主机上运行SkyForm AIP且通过TCP/IP网络互相连通。

Master控制主机(主节点)

每个集群都需要一个master主机,master主机控制着SkyForm AIP集群中的其他主机。

计算主机

集群中运行应用作业及任务的主机。

Remote Server主机

主机上不安装SkyForm AIP服务,主机负载通过Master上的cbls.remote程序获取。分发到remote server上的作业先分发到Master,然后由Master通过定制脚本转送到远程主机上。

Dynamic Server主机

主机不在集群中预先配置,而是使用caddhost命令动态加入。

Client(客户端)主机

集群中仅提交作业及任务的主机。

作业执行主机

运行作业和任务的主机。

作业提交主机

作业在其上被提交的主机。

作业(Job)

提交至SkyForm AIP的应用。可占用一至多个Job slot。

作业槽(Job slot)

SkyForm AIP中处理器分配的最小单元。可以是一至多个物理处理器或物理处理器的一部分。默认情况下,一个作业槽就是一个处理器核。

队列(Queue)

网络范围内的一个存放作业的地方,负责对不同作业实施调度及管理调度策略。

集群主管理员

集群主要的管理员用户,具有修改集群配置文件、控制集群主机、和控制所有用户作业的权限。

系统中的作业流#

SkyForm AIP中的作业流如下图所示。

../_images/jobflow.png

作业流程图#

作业运行流程:

  • 用户使用aip job命令或csub提交作业

  • 作业被提交至队列中

  • 为每个作业分配一个唯一的作业ID

  • 为每个作业的每个子任务分配一个通讯端口

  • 调度器根据作业资源需求和系统中的可用资源为队列里的作业找合适一个或多个主机,将作业定义分发到找到的一个主机上,启动作业控制器。

  • 作业控制器根据作业任务定义和调度器所分配的资源启动和管理作业任务。