Skip to content

常见名词

一、资源相关

家目录

家目录(Home Directory)是指每个用户在操作系统中专属的文件存储区域,通常用于存放用户的个人文件、配置文件和程序设置。它是用户工作环境的起点,用户对其有完全的读写权限。

用户登录后,终端、命令行与文件管理会默认进入家目录,常用的符号 ~ 就代表家目录,而家目录的绝对路径通常为/public(或work)/home/用户名。 Alt text

Alt text

用户可在家目录下存放文档、配置文件和程序数据,软件计算时也会自动将其配置文件与输出结果保存到用户家目录下某一文件夹中。

登陆节点

登录节点(Login Node)是高性能计算(HPC)集群中供用户访问和管理任务的入口点。用户通过登录节点连接到集群,以提交作业、编辑脚本、编译代码和检查输出,但不直接用于运行计算密集型任务。用户登录后,命令行会默认进入到登录节点,登录节点一般命名为loginxx。

登录节点的功能:

  • 用户入口:用户通过 SSH 等协议连接到登录节点,作为与集群交互的主要接口。

  • 作业管理:提交、监控和管理计算作业(通过作业调度器,如 SLURM、PBS 等)。

  • 代码开发与调试:在登录节点上编写、编辑、调试代码,或者编译程序。

  • 数据管理:上传、下载文件,组织数据。

  • 资源查询:查询集群资源使用情况,例如查看可用的节点、队列状态等。

由于登录节点的资源有限,通常会对用户行为做以下限制:

  • 禁止运行计算密集型任务:计算密集型任务会占用大量 CPU 或内存资源,影响其他用户的正常操作。这些任务应提交到计算节点(Compute Node)执行。

  • 限制进程和内存:登录节点可能设置了 CPU 和内存使用的限制,超出限制的任务可能会被强制终止。

  • 有限的运行时间:长时间运行的程序可能被系统管理员杀死,以确保登录节点的响应性。

队列

队列是SLURM作业调度系统管理用户任务的核心机制,用于组织和分配计算资源。各队列配置情况与服务类型可在控制台-用户名-我的资源中查看详细情况 Alt text

队列的核心特点:

  • 任务排序:作业按提交时间、优先级或资源需求排队等待调度。
  • 资源绑定:每个队列通常绑定特定的计算资源(独占或共享、内存大小、GPU或cpu等)。

队列的常见用途:

  • 区分资源类型:不同队列具有不同的配置以适应各类任务需求,例如 CPU、DCU、GPU 节点队列、大内存队列等。
  • 管理任务类型:如测试队列、正式队列、独占队列、共享队列。
  • 资源限制:部分队列存在使用限制(如最大运行时间、最大任务数),如测试队列限制作业运行时间72h。

独占队列与共享队列:

  • 独占队列:在独占队列中,用户的作业独占某些计算节点或资源,其他用户无法使用这些资源。用户可以充分利用节点的全部资源(CPU、内存、GPU等),避免资源争夺。性能优先,适合资源密集型任务;可能存在资源浪费。
  • 共享队列:在共享队列中,多个用户可以同时使用一个节点的资源,不同作业共享 CPU、内存和其他计算资源。资源利用率高,适合轻量级或测试任务;性能可能受影响。

异构加速卡

目前集群可用的国产加速卡为异构加速卡1、异构加速卡2和异构加速卡AI,异构加速卡1、异构加速卡2为全精度卡,支持科学计算、AI for sicence、人工智能多种场景。其中,异构加速卡AI支持FP32、TF32、BF16、FP16、INT8等精度,是为人工智能计算场景推出的专业加速卡。

  • 异构加速卡AI卡:新一代国产AI加速卡,是基于通用 GPGPU架构设计,覆盖主流AI算力精度,性能可对标NVIDIA类产品,具有应用生态完善,迁移成本低的特点,基于PyTorch、TensorFlow 等主流框架实现的代码无需转码,可直接使用,是构建 AI算力的不二之选,具有较高性价比。支持在人工智能的全领域应用,如自然语言大模型、多模态大模型、MOE大模型、视觉大模型、通用模型、语音模型等,支持模型训练及推理落地,实现快速的国产加速卡人工智能应用迁移、开发及迭代。经过验证测试,在异构加速卡AI上实现了训、推一体,AI场景全覆盖,70B及以上大模型推理实测性能达到L20的80%。llama2-70B 模型在首字响应,吞吐性能等方面都表现出较好的性能。

  • 异构加速卡AI生态:DTK类比CUDA,是搭配国产加速卡使用的基础环境平台,DTK集成了DCC编译器、经验证和优化的计算库, 支持多种编程语言,同时提供运行、编译、调试和性能分析功能。 DAS是针对国产加速卡推出的一套完整的人工智能基础软件,包含基础算子层、框架工具层、扩展组件层,与国产加速卡基础硬件系统、DTK 开发工具栈、模型空间 Model Zoo 、镜像仓库等形成一套完整的国产加速卡人工智能软硬件生态体系。 DAS支持新一代异构加速卡AI,实现了AI的全场景覆盖和高效性能表现,为满足人工智能的快速发展需要,整体发版节奏以月度更新,同时为满足开源开放需求,在开发者社区建立OpenDAS开源空间,加速国产加速卡的人工智能软件生态建设。 常见框架轮子包可在网址:光合开发者社区-DAS下载,轮子包与国产卡深度适配,包含PyTorch、TensorFlow等主流框架,覆盖多个常用版本,其他版本不断维护更新中。 想了解更多DTK、DAS相关内容可查看附件。 为了方便人工智能相关用户的使用,异构加速卡AI支持在Notebook中使用,提供多个支持异构加速卡AI使用的基础镜像,预装常用AI框架与依赖,便捷高效,更有多种模型镜像,封装热门开源项目,开箱即用。

核时、卡时

在高性能计算中,核时(core-hour)和卡时(GPU-hour)是衡量计算资源消耗的两个重要概念,用于表示任务运行时所使用的计算资源量。它们是资源分配、计费和统计的重要指标。根据调用资源类型(cpu队列与gpu队列)的不同分别以核时与卡时来进行计费。

  • 核时:当调用纯cpu资源进行计算时,按核时来进行计费,核时是计算任务在 HPC 集群中使用的CPU 核心数与运行时间的乘积。计算方式:核时=使用的核心数×运行时间(小时)

  • 卡时:当调用dcu或gpu资源进行计算时,按卡时来进行计费,且存在核卡比的概念,即一卡最多可调用多少cpu核,调用的cpu不做计费。卡时是指计算任务在 HPC 集群中使用的 GPU/DCU 数量与运行时间的乘积。计算方式:卡时=使用的 GPU/DCU 数×运行时间(小时)

二、作业与模板

作业

提交的每一个作业均对应一个作业号,即作业ID,作业号可以通过控制台-高性能计算-作业管理进行查看。同时可以看到作业的状态、调用的资源、提交时间等信息。 alt text 还可以在命令行中使用squeue查看当前用户任务的作业号 Alt textJOBID:作业号
ST:状态 (R:运行中;CF:配置中;PD:排队中) 如果 squeue 没有任务信息,说明任务已退出并且退出的时间已经超出清理时间。

作业模板

在控制台-高性能计算-作业提交界面可以调用各类软件的作业模板,可以提供模板功能可视化提交作业,模板中可以选择软件版本、调用可用资源、可以看到当前资源空闲情况以及设置所需调用资源数量。 Alt text

三、Slurm

集群采用Slurm(Simple Linux Utility for Resource Management)作业调度系统对用户提交的作业进行管理。通过合理分配计算资源以及优化作业调度以最大化资源利用率。

slurm脚本

Slurm脚本本质上是一个普通的 shell 脚本(通常是 Bash),其中包含了一些特定的 Slurm指令,用于描述作业所需的资源和运行条件。

  • Shebang行:定义脚本的解释器,通常是 #!/bin/bash。
  • Slurm指令:以 #SBATCH 开头,用于向 Slurm 提供作业配置。如:#SBATCH -N 1 申请一个节点。
  • Shell命令:用于运行实际的作业命令,例如调用程序或执行脚本。

四、团队相关

为了便捷管理与统筹项目或课题组中所有成员的资源分配与使用情况,引入了团队、团队管理员和团队子账号的概念。

  • 团队:一个团队通常由多个用户组成,共同使用分配的计算与存储资源。团队通常对应于一个研究课题组、项目团队或企业部门。
  • 团队管理员:团队管理员是负责管理团队资源和成员的用户,负责分配团队的计算资源给各成员、添加、删除或管理团队成员(子账号)、可监督团队资源的使用情况。
  • 团队子账号:团队子账号是指团队成员在集群中的个人账号,用于登录集群、提交作业和使用资源。子账号的权限和资源配额由团队管理员管理,子账号的使用记录会归属于团队,用于资源统计和计费,子账号通常仅限于团队分配的资源范围内活动。