GB/T 45401.1-2025 人工智能 计算设备调度与协同 第1部分:虚拟化与调度 , 该文件为pdf格式 ,请用户放心下载!
尊敬的用户你们好,你们的支持是我们前进的动力,网站收集的文件并免费分享都是不容易,如果你觉得本站不错的话,可以收藏并分享给你周围的朋友。
如果你觉得网站不错,找不到本网站,可以百度、360搜搜,搜狗, 神马搜索关键词“文档天下”,就可以找到本网站。也可以保存到浏览器书签里。
收费文件即表明收集不易,也是你们支持,信任本网站的理由!真心非常感谢大家一直以来的理解和支持!
ICS 35.020
CCS L 70
GB/T 45401.1—2025
人工智能 计算设备调度与协同
第1 部分:虚拟化与调度
Artificial intelligence—Scheduling and cooperation for computing devices—
Part 1:Virtualization and scheduling
2025⁃02⁃28 发布2025⁃02⁃28 实施
国家市场监督管理总局
国家标准化管理委员会
发 布
目 次
前言··························································································································Ⅲ
引言··························································································································Ⅳ
1 范围·······················································································································1
2 规范性引用文件········································································································1
3 术语和定义··············································································································1
4 缩略语····················································································································3
5 概述·······················································································································3
6 计算设备虚拟化技术要求····························································································4
6.1 概述·················································································································4
6.2 基本要求···········································································································4
6.3 扩展要求···········································································································7
7 计算资源调度技术要求·····························································································10
7.1 概述················································································································10
7.2 功能要求··········································································································11
7.3 性能优化要求····································································································12
7.4 调度策略要求····································································································12
7.5 接口要求··········································································································12
8 运维监控技术要求···································································································13
8.1 AI 加速卡监控···································································································13
8.2 计算实例监控····································································································14
8.3 AI 任务监控······································································································14
8.4 日志监控··········································································································15
9 测试方法···············································································································16
9.1 虚拟化测试·······································································································16
9.2 调度测试··········································································································19
附录A(资料性) 典型处理器的虚拟化参考架构·································································22
A.1 NPU 虚拟化参考架构·························································································22
A.2 CPU 虚拟化参考架构·························································································23
参考文献····················································································································25
前 言
本文件按照GB/T 1.1—2020《标准化工作导则 第1 部分:标准化文件的结构和起草规则》的规
定起草。
本文件是GB/T 45401《人工智能 计算设备调度与协同》的第1 部分。GB/T 45401 已经发布了
以下部分:
——第1 部分:虚拟化与调度;
——第2 部分:分布式计算框架。
请注意本文件的某些内容可能涉及专利。本文件的发布机构不承担识别专利的责任。
本文件由全国信息技术标准化技术委员会(SAC/TC 28)提出并归口。
本文件起草单位:中国电子技术标准化研究院、华为技术有限公司、北京航空航天大学、中国科学
院软件研究所、华为云计算技术有限公司、阿里云计算有限公司、北京百度网讯科技有限公司、浪潮电
子信息产业股份有限公司、上海商汤智能科技有限公司、北京大学武汉人工智能研究院、上海市人工智
能行业协会、中国移动通信集团有限公司、中国科学院计算技术研究所、科大讯飞股份有限公司、北京
大学、深圳云天励飞技术股份有限公司、上海天数智芯半导体有限公司、北京壁仞科技开发有限公司、
杭州海康威视数字技术股份有限公司、南方电网人工智能科技有限公司、龙芯中科技术股份有限公司、
苏州登临科技有限公司、浙江大华技术股份有限公司、蚂蚁科技集团股份有限公司、国科础石(重庆)软
件有限公司、中国南方电网有限责任公司、广电运通集团股份有限公司、上海计算机软件技术开发中
心、上海文鳐信息科技有限公司、京东方科技集团股份有限公司、天津(滨海)人工智能创新中心。
本文件主要起草人:范科峰、杨雨泽、李斌斌、于超、徐洋、王莞尔、曹晓琦、董建、鲍薇、栾钟治、朱毅鑫、
董乾、孟令中、郑子木、吴涛、田晓利、张亚强、马珊珊、马骋昊、赵春昊、吴庚、曹汐、王煜炜、吴婷、杨超、
王志芳、余雪松、丁瑞全、叶挺群、卢志良、马莞悦、代君、孔维生、郭智慧、罗勇军、梁志宏、巫伟南、杨波、
陈敏刚、牛科科、仲凯韬、姜幸群、史殿习。
引 言
随着人工智能计算形态的不断发展,承载人工智能应用的计算设备的部署和使用呈现分布式、全
场景的趋势。同一人工智能计算任务往往需要多种形态的计算设备协作完成,为不同地域、类型的用
户提供服务。需要对不同形态的计算设备资源合理利用及分配,明确必要的技术架构、能力要求以及
接口等,为产品提供参考框架以及评价体系,缓解不同形态人工智能计算设备横向协同割裂的现状。
GB/T 45401《人工智能 计算设备调度与协同》拟由两个部分组成。
——第1 部分:虚拟化与调度。旨在确立人工智能计算设备虚拟化与调度系统的架构,规定技术
要求及对应的测试方法。
——第2 部分:分布式计算框架。旨在确立人工智能计算设备分布式计算的架构,规定功能和性
能技术要求,定义分布式计算协同接口。
1 范围
本文件给出了人工智能计算设备虚拟化与调度的架构,规定了技术要求,描述了测试方法。
本文件适用于人工智能计算设备虚拟化与调度的系统设计、研发和测试。
2 规范性引用文件
下列文件中的内容通过文中的规范性引用而构成本文件必不可少的条款。其中,注日期的引用文
件,仅该日期对应的版本适用于本文件;不注日期的引用文件,其最新版本(包括所有的修改单)适用于
本文件。
GB/T 41867 信息技术 人工智能 术语
GB/T 45087—2024 人工智能 服务器系统性能测试方法
3 术语和定义
GB/T 41867 界定的以及下列术语和定义适用于本文件。
3.1
人工智能计算单元 artificial intelligence computing unit
执行人工智能计算任务所必要的部件的最小集合。
注: 人工智能计算单元一般封装在人工智能加速器或加速卡中。
3.2
人工智能加速[处理]器 artificial intelligence accelerating [processor]unit
人工智能加速芯片 artificial intelligence accelerating chip
具备适配人工智能算法的运算微架构,能完成人工智能应用运算处理的集成电路元件。
3.3
人工智能加速卡 artificial intelligence accelerating card
专为人工智能计算设计、符合人工智能服务器硬件接口的扩展加速设备。
注: 人工智能加速卡按适用场景分为人工智能训练加速卡、人工智能推理加速卡等。
3.4
人工智能计算实例 artificial intelligence computing instance
执行人工智能计算任务的虚拟化对象。
3.5
虚拟化 virtualization
用于表示与潜在的物理资源解耦的资源表示形式。
[来源:ISO/IEC 17826:2022,3.55]
3.6
[异构]资源池 [heterogeneous] resource pool
由不同架构的人工智能计算资源集合形成的抽象实体。
1
GB/T 45401.1—2025
注1: [异构]资源池提供一种可伸缩计算架构,有利于合理分配计算资源,为不同运行环境(例如云、集群、移动设备、
物联网)的人工智能应用系统的开发和部署提供计算能力、存储、带宽和延时保障。
注2: [异构]资源池用于管理调度人工智能计算资源,以满足不同人工智能计算任务的需求。
注3: 人工智能计算资源包括中央处理单元(CPU)、图形处理单元(GPU)、神经网络处理单元(NPU)、现场可编程
逻辑门阵列(FPGA)、数字信号处理器(DSP)、专用集成电路(ASIC)等。
3.7
计算能力 computing capability
产品或系统能满足计算需求的最大程度。
3.8
神经网络处理器 neural⁃network processing unit
专门针对神经网络计算进行特殊优化设计的集成电路元件。
注: 该类集成电路元件擅长处理视频、图像、语音类多媒体数据。
3.9
人工智能计算任务 artificial intelligence computing task
为取得特定人工智能计算目标所需的活动。
注: 本文件中,在不引起误解的语境中,人工智能计算任务一般指推理任务或训练任务。
3.10
性能 performance
在运行计算任务时,可被测量的特性。
注1: 性能包含定性及定量的特征。
注2: 性能基于一个或多个参数(如能耗、流量、吞吐率、运行时间以及速率等)的测量或计算获得,以表征在某机器
中运行的某技术过程的行为、特性以及效率。
注3: 在评估人工智能任务的性能时,一般采用吞吐率特性。
[来源:ISO/IEC 20000⁃10:2018,3.1.16,有修改]
3.11
人工智能计算集群 artificial intelligence cluster
遵循统一控制的,人工智能计算功能单元的集合。
注1: 人工智能计算功能单元可包含人工智能加速器、人工智能服务器、人工智能加速模组等。
注2: 当由人工智能服务器组成时,人工智能集群又称为人工智能服务器集群。
3.12
节点 node
由网络连接的能完成特定人工智能计算任务的物理或逻辑人工智能计算设备。
[来源:ISO/IEC 14575:2000,3.2.27,有修改]
3.13
调度 scheduling
控制特定任务的整体或部分的执行场所和时间的过程。
注: 在本文件中,场所一般指人工智能计算单元。
[来源:ISO/IEC 10164⁃15:2002,3.7.4,有修改]
3.14
调度器 scheduler
在系统中完成调度的组件。
注: 在本文件中,调度器用于面向不同的计算需求分配人工智能计算资源。
3.15
调度策略 scheduling policy
在系统中匹配任务的整体或部分执行场所和时间,完成任务调度的策略。
2
GB/T 45401.1—2025
3.16
隔离 isolation
计算实例间的计算和数据相互不影响和不可访问。
注: 算力隔离指的是计算实例之间的计算能力不互相影响。
[来源:ISO/IEC TS 25052⁃1:2022, 3.1.5.3, 有修改]
4 缩略语
下列缩略语适用于本文件。
AI:人工智能(Artificial Intelligence)
API:应用程序编程接口(Application Programming Interface)
BAR:基址寄存器(Base Address Register)
CPU:中央处理器(Center Processing Units)
DDR:双倍速率传输率(Double Data Rate)
DMA:直接存储器访问(Direct Memory Access)
FLOPS:每秒浮点运算次数(Floating⁃Point Operations Per Second)
FPGA:现场可编程逻辑门阵列(Field Programmable Gate Array)
FPS:每秒帧数(Frames Per Second)
FP16:16 位浮点数(Floating⁃point 16⁃bit number)
GDDR:图形双倍速率传输存储器(Graphics DDR SDRAM)
GPA:客户机物理地址(Guest Physical Address)
GPU:图形处理器(Graphics Processing Units)
HBM:高带宽存储器(High Bandwidth Memory)
ID:身份标识(Identity Document)
INT8:8 位整型数(Integer 8⁃bit number)
IO:输入/输出(Input Output)
IOMMU:输入输出内存管理单元(Input Output Memory Management Unit)
IOVA:输入/输出虚拟地址(Input Output Virtual Address)
NIC:网络接口卡(Network Interface Card)
NPU:神经网络处理器(Neural⁃network Processing Units)
OPS:每秒运算次数(Operations Per Second)
OS:操作系统(Operating System)
PCIE:外设部件互联高速通道(Peripheral Component Interconnect Express)
QEMU:快速模拟器(Quick EMUlator)
QoS:服务质量(Quality of Service)
SR⁃IOV:单根输入/输出虚拟化(Single Root Input Output Virtualization)
VFIO:虚拟功能输入/输出(Virtual Function Input Output)
VM:虚拟机(Virtual Machine)
VMM:虚拟机管理器(Virtual Machine Manager)
VMX:虚拟机扩展(Virtual Machine Extension)
5 概述
AI 计算设备虚拟化与调度的架构见图1。AI 计算虚拟化,为AI 物理计算资源提供特定的表示形
3
GB/T 45401.1—2025
式,虚拟化方案包含对基于CPU、GPU、NPU、FPGA 等物理AI 加速卡的虚拟化。(多种)虚拟化方案
通过统一的接入组件形成资源池,以一致的方式使用AI 物理计算资源。调度器根据AI 任务和资源池
的情况,选择若干虚拟化的AI 计算实例,分配并执行特定任务。运维监控实现对AI 计算实例、AI 物
理计算资源(AI 加速卡)、AI 任务及其状态的监测与控制。
注1: 虚线框部分不属于本文件标准化的范畴。
注2: FPGA 的虚拟化方案,涵盖FPGA 与CPU 的混合架构。
注3: 1 个AI 应用一般分解为若干个AI 计算任务,下发给调度器。
图1 AI 计算设备虚拟化与调度的架构
6 计算设备虚拟化技术要求
6.1 概述
计算设备虚拟化技术是一种计算资源管理的方法,切分、调配或整合含有各类型加速器的不同AI
加速卡,使其执行AI 计算任务,以提高计算资源利用率。
注: 本文件规范计算设备虚拟化技术,不对网络、存储等其他物理资源提出要求,但对计算资源与其他资源的协同
对接提出要求。
6.2 基本要求
6.2.1 AI 加速卡虚拟化
AI 加速卡的虚拟化,包含以下要求:
a) 应支持单个AI 加速卡虚拟化为多个计算实例;
b) 宜支持多个AI 加速卡虚拟成单个计算实例;
c) 计算实例应能在虚拟机或容器中执行计算任务;
d) 宜支持单个AI 加速卡的算力隔离;
e) 计算实例应能被计算设备调用。
6.2.2 监测
虚拟化组件或系统,宜实现下列对计算实例属性的监测,包括:
4
GB/T 45401.1—2025
a) 资源(含计算资源)利用率监测;
b) 算子执行时延统计;
c) 计算实例带宽利用率监测;
d) 计算实例的性能波动(见9.1.4.4)监测;
e) 虚拟化后,AI 加速卡的计算能力损耗统计;
f) 计算实例运行时长统计。
6.2.3 隔离性
虚拟化组件或系统的隔离性包含如下要求。
a) 应支持故障隔离,符合以下要求:
1) 计算实例内的单点故障信息只上报其所属的虚拟机或容器及虚拟化管理系统;
2) 支持多个计算实例运行互不干扰;
3) 提供调用、返回特定计算实例的业务故障;
4) 支持计算实例获知其所依赖物理设备的单点故障。
b) 应支持性能隔离,即特定用户使用计算资源的性能,不被并发执行的其他用户的任务影响,而
出现下降的情况。
c) 应支持安全隔离,包含但不限于防止未经授权的访问和攻击。
6.2.4 重配置
虚拟化组件或系统,实现在多用户和动态任务情况下的计算资源重配置,以提高系统整体性能,符
合以下要求。
a) 应为单个AI 任务的独立运行,实现QoS 服务质量机制。
b) 应为多个AI 任务的同时运行,实现资源获得公平性机制。
注: 公平性指的是相同优先级的不同用户和程序对于计算资源有着同样的使用权。
c) 应为AI 任务的动态负载特性或资源可变特性要求,实现资源复用机制(如分时复用或分区
复用)。
d) 宜能够与下列机制或过程配合使用,包含但不限于:
1) 高可用AI 计算集群;
2) 负载均衡,即分配特定的业务(网络服务、网络流量等)给多台网络设备(包括服务器、防
火墙等)或多条链路;
3) 内存复用,方式包括内存气泡、内存置换、内存共享等;
4) CPU、内存、AI 加速[处理]器等的扩容。
e) 宜支持查询AI 计算加速卡间互联信息。
6.2.5 资源抽象
虚拟化与调度系统的资源抽象,符合以下要求。
a) 计算实例应支持执行以下计算,包括但不仅限于:
1) 完整的卷积计算;
2) 完整的向量计算;
3) 完整的标量计算;
4) 数据传输、交换和格式转换。
b) 计算实例应包含以下部件并作为调度依据:
1) 计算部件;
5
GB/T 45401.1—2025
2) 存储部件,如缓存、内存等;
3) 数据通信部件。
c) 1 个计算实例可对应单台或多台AI 计算设备的全部物理资源或部分物理资源。
d) 当虚拟出多个计算实例时,单AI 加速卡所含的硬件资源应能被映射为多个AI 加速卡,包含
对处理器、内存等资源的切分,映射为不同的设备,并受硬件资源总数的限制。
e) 事件、标识和任务及相关机制以软件实现时,应不受硬件资源总数的限制。
6.2.6 协调性
AI 任务的计算图的任务抽象与资源抽象应具备协调性,符合如下要求。
注: AI 计算图用有向图表示,1 个有向图由点和边构成,表示神经网络的计算流程,是一种逻辑流图,在硬件上转换
为物理流图。
a) AI 任务数据流图中的资源抽象包括:
1) 有向图中的点表示计算;
2) 有向图中的边表示数据依赖;
3) 数据流连接线以输出箭头表示将数据写入数据存储;
4) 数据流连接线以输入箭头表示从数据存储中读取数据。
b) 宜考虑用于执行数据流图的虚拟设备。
c) 计算流宜考虑如下约束:
1) 计算流的同步,即一个计算流中的任务依赖于另一个计算流中的任务;
2) 计算流可并行处理,受硬件资源约束。
6.2.7 计算实例表示
计算实例应由以下属性表示。
a) 计算实例规格,包含:
1) 计算能力,如吞吐率、有效计算能力、FLOPS 等;
2) 内存空间,如片上内存等;
3) 数据传输率,如上下行带宽;
4) 计算精度,如FP16、INT8 等。
b) 计算实例拓扑,包含:
1) 计算实例所属的AI 加速卡;
2) 加速卡所属的服务器及其在服务器中的位置;
3) 服务器所属的AI 计算集群,及其在AI 计算集群中的位置。
c) 计算实例状态,包含:
1) 使用中:计算实例当前正在执行相关的计算任务;
2) 可用:当前的计算实例整体或其部分,处于空闲状态;
3) 不可用:当前计算实例已被占用或损坏,无法执行相关任务。
6.2.8 计算实例管理
计算实例管理要求如下。
a) AI 计算设备虚拟化系统或组件,应支持在以下情况更新资源池:
1) 加入新的计算实例;
2) 计算实例被释放;
3) 空闲计算实例被占用;
6
GB/T 45401.1—2025
4) 计算实例进入等待队列;
5) 计算实例被损坏;
6) 损坏的计算实例修复。
b) 单个AI 加速卡的虚拟化,宜通过接口调用满足如下功能:
1) 创建的AI 虚拟计算资源,关联其归属的父设备(AI 虚拟计算资源所在的物理AI 加速
器),并提供相关的查询,包括但不限于:Python 编程接口、sysfs 接口、命令;
2) 对计算实例的操作、控制接口;
3) 提供可写接口,用于填入创建虚拟化节点的必要信息;
4) 设备描述信息获取接口;
5) 虚拟化计算节点的驱动接口信息(驱动API);
6) 指向每个虚拟化计算节点的软链接。
c) AI 计算设备虚拟化系统或组件,应支持计算资源的删除与恢复,包含如下要求:
1) 计算资源的非物理删除;
2) 恢复已删除的资源(如计算资源的重新发现)。
d) AI 计算设备虚拟化系统或组件,应支持提供接口,获取如下实例信息:
1) 计算能力的监控和统计信息(如资源调度层所管理的物理计算能力的总和);
2) 计算实例所在的AI 加速卡信息;
3) 计算实例的规格信息,包括内存、可观测带宽等;
4) 计算实例的算子时延剖析、时延统计信息。
e) AI 计算设备虚拟化系统或组件,应支持计算资源分配,包括:
1) 单AI 加速器的分配;
2) 多AI 加速器的整体原子分配(全部分配成功,或全部都分配失败)。
f) AI 计算设备虚拟化系统或组件,应支持计算实例的回收,包括:
1) 一次回收单个计算实例;
2) 一次回收多个计算实例,且保证操作的原子性。
6.3 扩展要求
6.3.1 CPU 虚拟化
6.3.1.1 概述
CPU 虚拟化分为基于软件的虚拟化和硬件辅助的虚拟化。CPU 一般用于推理任务。虚拟机可使
用多个CPU 计算实例,这些计算实例可源于同一个物理CPU 或多个物理CPU 的虚拟化。CPU 虚拟
化的参考架构见附录A 中的A.2。
6.3.1.2 CPU 计算实例
CPU 虚拟化系统或组件,应符合以下要求。
a) CPU 计算实例能完成机器学习推理任务。
b) 能避免宿主机上CPU 资源的浪费。
c) 支持CPU 计算实例的动态横向弹性伸缩,为虚拟机添加CPU 计算实例。
d) 支持CPU 计算实例亲和性配置。
e) CPU 计算实例的规格,使用以下指标衡量:
1) 处理器内核数;
7
GB/T 45401.1—2025
2) 每个内核的线程数;
3) CPU 划分的比例;
4) 内存容量;
5) 缓存容量。
6.3.2 GPU 虚拟化
6.3.2.1 通则
GPU 的虚拟化,应符合如下要求:
a) 支持计算能力按需使用;
b) 支持计算能力动态调用和释放。
6.3.2.2 GPU 计算实例
GPU 虚拟化系统或组件,应符合以下要求。
a) 支持其非虚拟化版本能执行的机器学习算法。
b) 通过时分复用或空分复用的方式得到计算实例。
c) GPU 计算实例,包含以下部件:
1) 计算部件:执行计算的单元,即流处理器,完成整型和浮点型计算;
2) 视频编解码部件;
3) 内存,包括但不限于DDR、GDDR 和HBM(容量单位为MB 或GB,带宽单位为GB/s);
4) 各级缓存(容量单位为MB 或GB,带宽单位为GB/s);
5) 共享存储。
d) 支持负载均衡。
e) GPU 计算实例的规格,应使用以下指标衡量:
1) 计算能力(单位如:OPS/FLOPS/吞吐率/算力比例);
2) 视频编解码能力(单位如:1 路1080 P,30 FPS);
3) 显存容量(单位如:MB/GB);
4) 缓存容量(单位如:MB);
5) GPU 间网络宽带和收发包吞吐率。
6.3.3 NPU 虚拟化
6.3.3.1 通则
NPU 的虚拟化架构见图2,参考方案见A.1。NPU 的虚拟化组件或系统,符合以下要求。
a) 应能根据计算任务需要选择合适的虚拟化调度方案,包括:
1) 将AI 加速卡虚拟化为多个NPU 计算实例,挂载至虚拟机;
2) 将AI 加速卡虚拟化为多个NPU 计算实例,挂载至容器;
3) 将AI 加速卡虚拟化为多个NPU 计算实例,挂载至虚拟机,在虚拟机内再将NPU 计算
实例挂载到容器;
4) 将AI 加速卡直通NPU 到虚拟机,在虚拟机内划分NPU 计算实例,再挂载到虚拟机内
的容器。
b) 宜具备NPU 计算QoS 控制机制。
c) NPU 实例,应提供如下计算属性:
8
GB/T 45401.1—2025
1) 张量计算能力,如张量计算单元个数;
2) 向量、标量等通用计算能力,如通用计算单元个数、协处理器核的个数;
3) 如具备视频图像预处理模块,提供相关的计算能力属性,如视频解码器计算核个数。
d) NPU 实例,应提供内存容量(单位:GB)作为存储属性。
e) 宜支持按AI 任务的计算量,动态调整计算实例规格。
图2 NPU 虚拟化架构图
6.3.3.2 NPU 计算实例
NPU 计算实例,应符合以下要求。
a) 提供矩阵乘的计算部件,执行卷积与全连接的计算:
1) 具有执行矩阵计算的计算核心;
2) 具备缓存矩阵分别存储中间过程数据和结果数据;
3) 具备数据寄存器,寄存矩阵运算的过程数据与结果。
b) 提供向量运算的部件,以执行池化、激活函数以及批正则化等运算:
1) 执行向量计算的单元;
2) 相关的存储单元。
c) 提供控制和标量运算的计算部件,包含:
1) 执行标量运算的单元;
2) 通用寄存器;
3) 专用寄存器。
d) 提供数据的存储部件。
e) 提供数据通路部件,保证计算部件与存储部件之间的数据供应。
f) NPU 计算实例能执行并完成AI 推理和训练任务。
g) NPU 计算实例的规格,用以下指标衡量:
1) 计算能力(单位:FLOPS/OPS/吞吐率);
2) 内存容量(单位:GB);
3) 缓存(单位:KB/MB);
4) 剩余带宽(单位:GB/s)。
9
GB/T 45401.1—2025
6.3.4 FPGA 虚拟化
6.3.4.1 通则
FPGA 虚拟化是在时间和空间维度上,对多个FPGA 的各类资源的调度与使用。FPGA 的虚拟
化,应符合以下要求:
a) 支持深度学习加速,并具备性能隔离特性;
b) 支持多路计算;
c) 支持FPGA Overlay,在FPGA 硬件之上,形成虚拟可编程架构,支持上层使用;
d) 支持部分可重构,将FPGA 划分为多个FPGA 计算实例;
e) 支持FPGA 动态重构和配置。
6.3.4.2 FPGA 计算实例
FPGA 计算实例,应符合以下要求。
a) 支持其非虚拟化版本能执行的机器学习任务。
b) 为一个或多个动态重构的FPGA 区域。
c) 对特定FPGA 计算实例实施动态重构时,其他运行不受影响。
d) 提供可重构区域的划分机制,避免FPGA 资源的空置和浪费。
e) FPGA 计算实例规格,由以下指标衡量:
1) 计算能力(如:OPS/吞吐率);
2) 延迟;
3) 功耗;
4) 灵活度。
7 计算资源调度技术要求
7.1 概述
7.1.1 任务流程框架
计算资源调度的任务流程见图3,包含以下步骤:
a) 用户提出训练或推理请求,作为AI 任务放入任务池;
b) 调度器从AI 任务池中取任务,根据任务的规格(所需计算能力、内存等)和可用AI 加速卡,申
请符合AI 任务要求的计算实例;
c) 调度器对所有的异构计算资源和计算实例实施监控,完成任务的调度。
10
GB/T 45401.1—2025
图3 AI 计算任务流程框架
7.1.2 训练场景
训练场景中,任务池中含有训练任务请求。训练任务的吞吐量较大时,对单AI 加速卡的资源利用
效率较高。单训练任务对AI 加速卡资源的占用情况包括以下情形:
a) 在单AI 加速卡上运行,该卡资源被全部占用;
b) 在单AI 加速卡上运行,该卡资源未被全部占用;
c) 在多AI 加速卡上运行,全部加速卡资源均被占用;
d) 在多AI 加速卡上运行,部分加速卡存在空闲资源。
7.1.3 推理场景
推理任务对AI 计算单元的占用,包含如下情形。
a) 模型体量较小,能容纳于单卡或单片内存时:
1) 推理需要异构的AI 计算资源,但大多数场景吞吐量较小,资源使用率较低;
2) 计算资源的调度需细粒度划分(如以单卡中的块或片为调度单位,使多推理任务共用特
定计算资源,即单芯片多任务模式);
3) 部署时根据计算任务申请所需计算资源,优先在单芯片上安排推理任务,使单芯片满载。
注: 满载指的是对特定计算设备的计算能力全部用于虚拟化得到计算实例。
b) 模型体量较大,不能容纳于单卡或单片内存时:
1) 模型所含参数量多,模型结构复杂,任务吞吐量大,拆分为多个子模型;
2) 数据搬运在单芯片内数据搬运速度最快,跨卡调度影响计算速度;
3) 计算资源的调度以卡为单位分配;
4) 调度器将推理任务按照模型体量实施拆分;
5) 在单AI 加速卡上优先安排同一子模型,计算完成后则分配剩余子模型给卡计算。
7.2 功能要求
调度器应实现下列功能:
a) 对整AI 加速卡(处理器)的调度;
b) 对池化的多AI 加速卡的调度;
c) 对单AI 加速卡上计算单元的调度;
11
GB/T 45401.1—2025
d) 对单AI 加速卡虚拟化所得的多计算实例的调度;
e) 对多AI 加速卡中的多个计算单元的调度;
f) 对多个计算单元或多个AI 加速卡的调度,保证调度操作的原子性;
g) 任务拆分,当同一任务包含的多个模型时,能将不同模型分配给不同计算实例,保证全局资源
利用率最高;
h) 模型切换,在同一计算实例上,在某模型运行完成时,能换入另一个模型并运行;
i) 负载均衡,在有剩余计算节点时,能分配任务,避免单卡、单片的负载过大。
7.3 性能优化要求
调度器性能优化符合以下要求:
a) 应能采集、分析和汇总性能数据,涵盖以下设备,包含但不限于:控制CPU、调度CPU、AI 加
速器、外围设备、内存等;
b) 对多卡调度,宜能在调度过程中参考集合通信组件的属性和状态;
c) 宜提供AI 任务在异构计算设备上的系统性能分析工具。
7.4 调度策略要求
调度器调度策略宜考虑如下的因素:
a) 使全局资源的平均利用率最高;
b) 调度的计算资源涉及多个AI 加速器时,根据卡的拓扑来制定调度策略(如亲和性调度);
c) 支持用户自定义调度。
7.5 接口要求
7.5.1 接口类型
虚拟化接口应包括:
a) 调度器与CPU、GPU、FPGA、NPU 等计算资源之间的接口;
b) 调度器与AI 应用中机器学习框架的接口。
7.5.2 接口描述
7.5.2.1 计算实例创建接口
计算实例创建应符合表1 列出的接口要求。
表1 计算实例创建相关接口
a
b
实例表示模板
创建计算实例
设置虚拟化切分
得到的计算实例
按照需求,指定规
格,创建计算实例
计算能力(如张量计算核
心数)
内存容量
虚拟化时所包含的数字
视觉预处理模块
设备ID
芯片ID
输入
输入
输入
输入
输入
必选
必选
可选
必选
必选
接口编号名称功能语义描述参数输入/输出可选/必选
12
GB/T 45401.1—2025
c 设置虚拟化模式
在物理机执行,设
置计算实例的模式
实例表示模板
需要创建的虚拟设备号
容器模式:适用于计算实
例挂载到容器
虚拟机模式:适用于计算
实例挂载到虚拟机
输入
输入
输入
输入
必选
必选
必选
必选
b 创建计算实例
按照需求,指定规
格,创建计算实例
表1 计算实例创建相关接口 (续)
接口编号名称功能语义描述参数输入/输出可选/必选
7.5.2.2 计算实例监控接口
计算实例监控应包括:
a) 获取单个物理AI 加速卡的信息,见表2;
表2 获取单个物理A2 加速卡信息
名称
获取加速卡信息
功能语义描述
获取单个物理AI
加速卡信息
参数
虚拟化后可用计算实例最大数量
已在执行计算任务的计算实例数量
资源占用情况,含执行任务的计算
实例资源占比和剩余可虚拟化的资
源占比
输入/输出
输出
输出
输出
可选/必选
必选
必选
必选
b) 获取计算实例规格,接口描述见表3;
表3 获取计算实例规格
名称
获取计算实例规格
功能语义描述
获取计算实例的规格
信息
参数
实例规格
输入/输出
输出
可选/必选
必选
c) 获取计算实例状态,接口描述见表4。
表4 获取计算实例状态
名称
获取计算实例状态
功能语义描述
获取计算实例的状态
参数
实例状态
输入/输出
输出
可选/必选
必选
8 运维监控技术要求
8.1 AI 加速卡监控
AI 加速卡监控符合以下要求。
13
GB/T 45401.1—2025
a) 应能监控AI 加速卡的下列属性:
1) 计算能力;
2) 带宽;
3) 内存。
b) 应能监控并返回计算实例的下列统计信息:
1) 计算实例的总数;
2) 可用的计算实例数;
3) 占用的计算实例数。
c) 应能监控单AI 加速卡上各计算实例的性能偏移的情况;
注: 对单AI 加速卡,虚拟化N(N 是正整数)个相同规格的计算实例时,每个实例的参考性能是1/N,实际性能
与参考性能的绝对值是性能偏移。
d) 应能监控返回AI 加速卡的状态:
1) 资源占用比例;
2) 可用比例;
3) 是否损坏。
e) 应能监控返回以下关于AI 任务的信息:
1) 训练任务或推理任务的吞吐量;
2) 训练任务或推理任务占用的计算实例信息,以及计算实例所处的AI 加速卡。
8.2 计算实例监控
计算实例监控应符合以下要求:
a) 支持对计算实例状态的监控;
b) 支持对计算实例的异常检测,并对用户开放定制化的检测项;
c) 支持计算实例的异常警告,并支持用户自定义警告的阈值和警告的方式;
d) 支持对计算实例的日志收集、分析和可视化展示的功能。
8.3 AI 任务监控
AI 任务通过系统性能分析工具监控,工具宜提供系统状态预测或监控信息,包括但不限于以下
内容。
a) 时序信息图方式,以时间线的形式展示AI 任务相关性能信息:
1) 计算图信息:计算图执行时间、推理时间、图像等数据的预处理时间;
2) 算子的执行时间:单算子执行起止时间、单算子耗时;
3) 每个线程运行时API 的时序信息;
4) AI 计算单元上内核函数的运行时序信息;
5) 任务调度的任务运行时序信息。
b) 硬件视图方式,展示数据传输的带宽信息,可帮助用户或调度器找出数据处理和传输的瓶颈,
如读写带宽过低可能是算子编写的数据搬运过程有问题。
c) AI 处理器函数和CPU 函数视图:
1) 采集各形式处理器上的热点函数(执行频率较高的函数);
2) 展示的信息应包含但不限于:模块名、函数名、调用堆栈、指令数、指令数耗时占比、对应
子项的循环次数等。
d) 概括性视图,汇总采集的信息并展示,包含但不限于:
1) 性能数据采集起止时间及耗时;
14
GB/T 45401.1—2025
2) 服务器性能基本信息,包括操作系统和CPU 信息;
3) 加速设备信息(包含GPU、NPU 或FPGA),如协处理CPU 的核数、AI 计算单元数量等;
4) 内存及高级缓存信息,即整个采集过程中内存读写带宽的平均值;
5) CPU 的利用率;
6) 系统信息,包含但不限于:系统总内存、空闲空间、内存缓冲区大小、高速缓冲存储器使用
量、共享内存、虚拟内存限值等;
7) 控制CPU 的信息,包括但不限于:运行的函数名称、此函数关联的模块、此函数运行的时
钟周期数、虚拟环境中操作系统消耗占比、内核态进程时长占比、空闲状态时长占比等;
8) AI 计算单元的信息;
9) 算子统计信息,包括但不限于:算子的个数、名称、耗时、对应的起止调度时间、输入输出
张量的内存大小、权重大小等;
10) 图像视频任务相关信息,包括但不限于:任务的时间、任务的帧数等。
e) 模型的数据输入、AI 计算任务(推理或训练)、数据输出的耗时。
8.4 日志监控
8.4.1 日志收集级别
运维监控过程应收集以下级别的日志。
a) 提供一般级别错误的日志:
1) 非预期的数据或事件;
2) 影响面较大但是内部模块可处理的错误;
3) 限制在模块内的错误;
4) 对其他模块有影响但较轻微的错误,如统计任务创建失败;
5) 引起调用失败的错误。
b) 提供警告级别的日志,如设备状态与预期不一致,但不影响系统的运行。
c) 提供正常级别的日志,设备正常运行的信息。
d) 提供调试级别日志,记录调式信息,协助开发维护人员定位问题。
e) 提供关键事件的日志,如:
1) 整网运算启动、完成和异常终止;
2) 内存耗尽;
3) 设备温度超出正常阈值。
8.4.2 日志记录信息
日志的记录,应包含以下信息:
a) 日志的级别;
b) 产生日志的模块名称;
c) 进程标识符;
d) 进程名称;
e) 日志打印的时间;
f) 各模块日志内容。
8.4.3 日志处理
日志的处理,应符合以下要求:
15
GB/T 45401.1—2025
a) 支持加速设备的管理,如新增、删除、修改等;
b) 对用户,提供日志的查询,按关键字搜索日志内容;
c) 提供清除显示的功能;
d) 提供和日志下载和保存的功能。
9 测试方法
9.1 虚拟化测试
9.1.1 性能隔离测试
9.1.1.1 测试概述
性能隔离测试用于计量性能偏差,即实际性能与理论性能之差的绝对值,性能指标为吞吐率。
示例:单用户或任务独占单AI 加速卡时,训练或推理的性能是p。当给计算实例分配25% 的计算资源时,其性能理
论上应该为p/4。虚拟化方案尽可能使计算实例的实际计算能力接近理论值。偏差(小于理论值的幅度)越大,性能隔
离效果越差。用实际值p'理论值p 的偏差来衡量性能隔离的效果。
注: 单AI 加速卡通过虚拟化切分为多计算实例时,各实例分配给多个用户使用。对任意AI 计算任务,每个计算实
例按需分配,且同一加速卡上的各计算实例的性能不相互干扰。
9.1.1.2 测试方法
性能隔离测试应按以下规则实施。
a) 选取特定AI 任务,实施测试。
b) 测得基准性能作为理论值[见9.1.1.3 a)]。
c) 对特定AI 任务,分配单AI 加速卡一定比例[见9.1.1.3 b)~ 9.1.1.3 d)]的计算资源。
注: 比例数值在具体测试时确定,但对同一测试批次中不同AI 加速卡的虚拟化测试,应保持一致。
d) 设定单AI 加速器上所执行的最大任务数量n(n 为正整数),对该任务使用已分配的计算资
源,为剩余(n-1)个任务分配剩余的计算资源。
e) 按9.1.1.1 计算性能偏差。
f) 性能隔离测试,按下列因素排列组合,确定模式:
1) 训练或推理;
2) 单一模型或多模型负载;
3) 是否满载。
9.1.1.3 测试负载
性能隔离测试负载包含:
a) 基准性能:单模型负载独占单AI 加速卡(无虚拟化),测得基准性能,负载见表5;
表5 基准负载测试
测试项序号
1
2
3
4
模型
MobileNet
ResNet50
VGG16
InceptionV3
分配资源占比
100%(无虚拟化)
100%(无虚拟化)
100%(无虚拟化)
100%(无虚拟化)
数据集
ImageNet2012
ImageNet2012
ImageNet2012
ImageNet2012
16
GB/T 45401.1—2025
b) 单模型满载测试:将单AI 加速卡按比例虚拟化获得多个计算实例,每个计算实例运行相同的
AI 任务,负载见表6;
表6 单模型满载训练
测试项序号
1
2
3
4
5
6
7
8
模型
MobileNet
MobileNet
ResNet50
ResNet50
InceptionV3
InceptionV3
VGG16
VGG16
负载个数
2
4
2
4
2
4
2
4
数据集
ImageNet2012
ImageNet2012
ImageNet2012
ImageNet2012
ImageNet2012
ImageNet2012
ImageNet2012
ImageNet2012
分配比例
1∶2
1∶1∶2∶4
1∶1
1∶1∶2∶4
1∶1
1∶1∶2∶4
1∶1
1∶1∶2∶4
c) 单模型非满载测试:将单AI 加速卡按比例虚拟化获得多个计算实例,但留有空余,每个计算
实例运行相同的模型,负载见表7;
表7 单模型非满载训练
测试项序号
1
2
3
4
5
6
7
8
模型
MobileNet
MobileNet
ResNet50
ResNet50
InceptionV3
InceptionV3
VGG16
VGG16
负载个数
2
3
2
3
2
4
2
4
数据集
ImageNet2012
ImageNet2012
ImageNet2012
ImageNet2012
ImageNet2012
ImageNet2012
ImageNet2012
ImageNet2012
分配比例
25%,50%
12.5%,12.5%,25%
25%,50%
12.5%,12.5%,25%
25%,50%
12.5%,12.5%,25%
25%,50%
12.5%,12.5%,25%
d) 多模型测试:将单AI 加速卡按比例虚拟化获得多个计算实例(可留有空余),每个计算实例运
行不同的模型,负载见表8。
表8 多模型训练
测试项序号
1
2
3
模型1/分配计算实例
占比
MobileNet/25%
MobileNet/50%
MobileNet/25%
模型2/分配计算实例
占比
ResNet50/25%
MobileNet/25%
Resnet50/25%
模型3/分配计算实例的
占比
VGG16/50%
VGG16/25%
InceptionV3/50%
数据集
ImageNet2012
ImageNet2012
ImageNet2012
17
GB/T 45401.1—2025
9.1.2 任务动态扩展测试
9.1.2.1 测试概述
实际应用场景中任务可能动态添加(任务到达)或删除(任务执行完毕或取消),测试任务数量的动
态变化对性能的影响。随任务数增大,整体性能波动(见9.1.4.4)宜尽可能小。
9.1.2.2 测试方法
任务动态扩展测试应按以下规则实施:
a) 对相同的训练或推理任务,实施扩展测试,每个任务完全一致,包括模型、数据集、训练方法或
推理模式(如离线模型压缩、部署方式)等;
b) 任务数取值为1,2,4,8,16;
c) 记录不同任务量下的吞吐量。
9.1.2.3 测试负载
任务动态扩展测试的负载见表9。
表9 基准负载测试
测试项序号
1
2
3
4
模型
MobileNet
ResNet50
VGG16
InceptionV3
任务数
1,2,4,8,16
1,2,4,8,16
1,2,4,8,16
1,2,4,8,16
数据集
ImageNet2012
ImageNet2012
ImageNet2012
ImageNet2012
9.1.3 性能损耗测试
9.1.3.1 概述
对单AI 加速卡,性能损耗是非虚拟化使用时的满载性能与虚拟化后满载性能的差值。
9.1.3.2 测试方法
性能损耗测试应按以下规则实施。
a) 被测AI 加速卡的计算实例数不小于3。
b) 性能损耗测试,按下列因素排列组合,确定模式:
1) 多计算实例相同负载;
2) 多计算实例不同负载。
9.1.3.3 测试负载
性能损耗测试的负载见9.1.1 3 a)~9.1.1.3 c)。
9.1.4 测试指标
9.1.4.1 吞吐率
吞吐率定义及计算方法按GB/T 45087—2024 中的6.3.3(训练)和7.3.3(推理)。
18
GB/T 45401.1—2025
9.1.4.2 性能偏差
性能偏差指虚拟化后所得AI 计算资源的理论性能与实际性能之差的绝对值,按公式(1)计算。
注: 如有超过1 个指标同时作用,设定在其他指标相同或不变的情形下开展测试。
Δp =1n
Σi| P × ai - pi | …………………………( 1 )
式中:
Δp ——单AI 加速卡虚拟化后的性能偏差;
n ——计算实例的个数;
P ——理论性能(基准性能);
ai ——每个计算实例分配的资源占整卡的比例,取值可为:12.5%,25%,50%,75%;
pi ——每个计算实例的实际性能。
9.1.4.3 性能损耗
性能损耗指非虚拟化使用时的满载性能与虚拟化后满载性能的差值,按公式(2)计算。
Closs = 1 -
Tv
Tp
× corep
corev
× 100% …………………………( 2 )
式中:
Closs ——性能损耗;
Tv ——AI 任务在计算实例上的执行时长;
Tp ——相同AI 任务在未虚拟化的物理机上的执行时长;
corep——物理机的计算单元数;
corev——虚拟化后计算实例的计算单元数。
9.1.4.4 性能波动
性能波动指单物理加速卡上虚拟化得到多个规格相同的计算实例,同时运行相同的AI 任务时,所
有计算实例中最大的执行时长均值与最小时长均值的比,按公式(3)计算。
∂ = maxn ∈ N T
minn ∈ N T …………………………( 3 )
式中:
∂ ——虚拟化后的性能波动比率;
n ——第n 个计算实例;
N——计算实例总数;
T ——运行特定计算任务的时间长度。
9.2 调度测试
9.2.1 概述
调度测试范围包含以下内容。
a) 集群利用率:所有AI 加速卡(含已经故障下线、未下线但性能降级故障的AI 加速卡)的使用
情况。越接近1.0 越好。
b) 资源调度成功率:特定周期内调度成功次数与资源请求总次数的比例。
注1: 前提要求实际物理资源与请求的资源是匹配的,请求的资源量没有超过实际的物理资源量。
c) 任务资源利用率:实际分配给单AI 任务使用的计算资源的使用情况。
19
GB/T 45401.1—2025
注2: GPU 的利用率一般指流处理器的利用率。
9.2.2 测试方法
调度测试按以下规则实施。
a) AI 计算集群调度的测试应规定具体的测试时间段,如7 自然天,15 自然天或30 自然天等;
b) 对比测试时,测试负载模型、数据集、优化方法等应保持一致。
c) 任务负载按下列因素排列组合,确定模式:
1) 数据量;
2) 计算量,按负载模型体量划分;
3) 场景,按模型功能覆盖划分(如resnet 系列、MobileNet 系列等);
4) 任务(训练或推理)到达的模式,包括:离线、时分均匀、泊松到达等。
d) 集群利用率的检测周期为1 个月,如对特定单AI 加速卡,在周期内以固定频率(如1s)检测,
记录每次的利用率。
9.2.3 测试负载
调度测试使用以下负载。
a) 单一负载,包含:
1) 视觉负载,包括图片、视频任务;
2) 自然语言处理负载;
3) 普通机器学习负载(可选)。
b) 混合负载,即3 种单负载,按特定比例组合,实施测试。
9.2.4 测试指标
9.2.4.1 集群利用率
集群利用率按公式(4)计算。
Q =1k
Σk qk …………………………( 4 )
式中:
Q ——集群利用率;
k ——AI 计算集群中AI 加速卡的数量;
qk ——单AI 加速卡的利用率。
9.2.4.2 单AI 加速卡的利用率
单AI 加速卡的利用率按公式(5)计算。
qk = 1
Nb Σ qu …………………………( 5 )
式中:
qk ——统计周期内,特定AI 加速卡的利用率;
Nb——该AI 加速卡被占用的次数;
qu ——抽样时的瞬时利用率(在无法检测瞬时利用率的系统中,占用时利用率为1.0)。
9.2.4.3 任务资源利用率
任务资源利用率按公式(6)计算。其中,k 为分配给特定任务的AI 加速卡的数量。对动态任务
20
GB/T 45401.1—2025
(任务执行中释放资源或申请新的资源),则分段计量,以时长求加权平均。
Qtask =Σj (Tj )
T ×1k
Σk qk …………………………( 6 )
式中:
Qtask——任务资源利用率;
qk ——某个时间段内(期间,该分配给该任务的资源数恒定),单AI 加速卡的利用率,计算方法
见9.2.4.2;
T ——该任务的执行总时长;
j ——执行该任务的第j 个时间段(期间,分配给该任务的资源数恒定);
k ——在第j 个时间段内,分配给该任务的AI 加速卡的数量;
Tj ——第j 个时间段的长度。
21
GB/T 45401.1—2025
附 录 A
(资料性)
典型处理器的虚拟化参考架构
A.1 NPU 虚拟化参考架构
NPU 的虚拟化包含但不限于以下方案。
注: 在本文件的语境下,Host 指宿主机,Guest 指客户机。
a) 方案一,软件模拟vNPU 虚拟化
通过软件框架创建出虚拟NPU 设备,并经过QEMU 设备模拟层将vNPU 设备模拟成标准
的PCIE 设备给Guest OS 的设备驱动或虚拟机使用,使用方式与NPU 设备直通虚拟化一
致。PCIE 设备的配置空间如下,设备模拟整体方案见图A.1。
图A.1 QEMU⁃NPU 设备模拟方案
1) PCIE 配置模拟:根据PCIE 协议模拟PCIE 设备的厂商ID、设备ID 等,呈现出一个跟物
理设备相同功能的虚拟设备给Guest OS 驱动。
2) BAR 空间:Host 驱动和Guest 驱动共享数据的通道,用以收发消息等。
3) 中断通知机制:Guest 发送消息通知Host,Host 通过中断通知Guest。
4) DMA 内存访问机制:数据拷贝流程将GPA 地址转换成发起DMA 访问使用的IOVA
地址。
b) 方案二,软硬协同SR⁃IOV 虚拟化
SR⁃IOV 是一种基于硬件辅助的IO 虚拟化的技术标准,允许在虚拟机之间高效共享PCIE 设
备,由于它是基于硬件实现的,因此可获得与真实硬件性能接近的IO 性能。SR⁃IOV 架构设
备允许一个物理设备支持多个虚拟功能,它更多地关注减少每个附加功能的硬件成本。SR⁃
IOV 引入了两个新的功能类型:物理功能和虚拟功能。具有SR⁃IOV 功能的设备通过设置可
在配置空间出现多个功能,其支持的独立VF 数量是可配置的,每个功能拥有自己的配置空
间包括BARs。VMM 通过配置空间匹配可为一个VM 指定一个或多个VF,其基本原理图
见图A.2。
22
GB/T 45401.1—2025
图A.2 SR⁃IOV 虚拟化方案
c) 方案三,直通虚拟化
采用VFIO 用户态驱动框架,物理NPU 设备通过VFIO 框架向用户态提供设备访问接口和
IOMMU 接口,并且能将DMA 地址空间映射在虚拟机进程的地址空间中,实现虚拟机对设
备的安全访问。见图A.3。
图A.3 直通虚拟化方案
A.2 CPU 虚拟化参考架构
CPU 虚拟化分为基于软件的虚拟化和硬件辅助虚拟化。基于软件的CPU 虚拟化,就是通过软件
的形式来模拟每一条指令,常用的软件虚拟化技术有两种:优先级压缩和二进制代码翻译。这种截获
再模拟的纯软件的虚拟化方式,性能比较低。CPU 硬件辅助虚拟化技术引入了VMX 模式,包括根操
作模式和非根操作模式。这两种模式都支持不同的运行级别(Ring0、Ring1、Ring3 等)。VMX 模式的
好处在于,Guest OS 运行在Ring 0 上,就意味着它的核心指令可直接下达到硬件层去执行,而特权指
令等敏感指令的执行则是由硬件辅助,直接切换到VMM 执行,性能得到较大提高。
在虚拟化的平台上,虚拟机(Guest VM)所使用的多个虚拟CPU(以下称“vCPU”)可能是共享同
一个物理CPU(以下称“pCPU”)的。VMM 负责vCPU 的调度,当一个vCPU 被调度到获得pCPU 的
使用权后,基于该vCPU 运行的Guest OS 又可调度OS 中的各个线程/进程了。即,Guest OS 中的各
个线程/进程分时复用了vCPU,而各个vCPU 又分时复用了pCPU。
23
GB/T 45401.1—2025
图A.4 给出了CPU 虚拟化参考架构,分为:硬件层、物理主机层和虚拟机层。虚拟机层在vCPU
上调度任务线程,物理主机在硬件CPU 上调度CPU 线程,整体框架共有两级CPU 调度,Guest OS 中
的vCPU 负责任务线程调度,Host VMM 负责另一级调度,即vCPU 在物理CPU 上的调度。
对于物理CPU,一个CPU 有多个内核,而一个内核一般对应一个线程,但通过超线程技术,一个
核心可对应两个线程,即可同时运行两个线程,并行处理两个任务。vCPU 的个数,可超过物理CPU
的个数,虚拟机能充分利用Host 的CPU 资源,进行相应的业务处理,运维人员也可据此控制CPU 资
源使用,达到灵活调度。
图A.4 CPU 虚拟化参考架构
24
GB/T 45401.1—2025
参考文献
[1] ISO/IEC 10164 ⁃ 15:2002 Information technology—Open systems interconnection—Systems
management: Scheduling function—Part 15
[2] ISO/IEC TR 13066⁃2:2016 Information technology—Interoperability with assistive technol⁃
ogy( AT)—Part 2: Windows accessibility application programming interface( API)
[3] ISO/IEC 14575:2000 Information technology—Microprocessor systems—Heterogeneous In⁃
terConnect (HIC)(Low ⁃ Cost, Low ⁃ Latency Scalable Serial Interconnect for Parallel System Construc⁃
tion)
[4] ISO/IEC 17826:2022 Information technology—Cloud data management interface (CDMI)
version 2.0.0
[5] ISO/IEC 20000⁃1:2018 Information technology—Service management—Part 1:Service man⁃
agement system requirements
[6] ISO/IEC 20000 ⁃10:2018 Information technology—Service management—Part 10:Concepts
and vocabulary
[7] ISO/IEC 25023:2016 Systems and software engineering—Systems and software Quality Re⁃
quirements and Evaluation( SQuaRE)—Measurement of system and software product quality
[8] ISO/IEC TS 25052⁃1:2022 Systems and software engineering—Systems and software Qual⁃
ity Requirements and Evaluation( SQuaRE): cloud services—Part 1: Quality model
———————————
25
评论