产品白皮书
2023 年 11 月 05 日 v2.0
1. 简介
摩尔线程公司简介
元计算是支撑下一代互联网应用的通用算力平台。摩尔线程致力于创新面向元计算应用的新一代 GPU,构建融合视觉计算、3D 图形计算、科学计算及人工智能计算的综合计算平台,建立基于云原生 GPU 计算的生态系统,助力驱动数字经济发展。公司研发设计全功能 GPU 芯片及相关产品,支持 3D 高速图形渲染、AI 训练推理加速、超高清视频编解码和高性能科学计算等多种组合工作负载,兼顾算力与算效,能够为中国科 技生态合作伙伴提供强大的计算加速能力,广泛赋能数字经济多个领域。
摩尔线程 GPU 芯片和服务器端显卡简介
截至 2022 年 12 月 22 日,摩尔线程已经成功研发并上市两颗 GPU 芯片:“苏堤”和“春晓”,分别于 2022 年 3 月和 2022 年 11 月发布。围绕着两颗 GPU 芯片,摩尔线程打造了三款服务器 GPU 产品,分别是 MTT S2000,MTT S1000 和 MTT S3000。目前两颗芯片和三款 GPU 显卡均已完成量产上市。
摩尔线程“苏堤”
“苏堤“芯片基于摩尔线程第一代 MUSA 架构,具有现代图形渲染、AI 计算加速以及科学计算机物理仿真等功能引擎。是第一款支持 AV1 编解码的 GPU,支持视频云、直播、8K 游戏等智能多媒体应用。
摩尔线程“春晓”
2022 年 11 月,摩尔线程发布的“春晓”芯片同样基于第一代 MUSA 架构打造,其内部集成了 220 亿个晶体管,内置 MUSA 架构通用计算核心以及张量计算核心,可以支持 FP32、FP16 和 INT8 等计算精度。相较于摩尔线程此前发布的“苏堤”芯片,图形渲染能力平均提 升 3 倍、编码能力提升 4 倍、解码能力提升 2 倍,AI 计算平均提升 4 倍,物理仿真性能提升 2.5 倍,同时可节约带宽 30%以上。
MTT S3000
MTT S3000 基于“春晓”芯片,物理形态为全高 3/4 长双槽。做为一款服务器端专用显卡,S3000 采用被动散热方式,整卡功耗 250W,外接供电线为标准 CPU 8pin。显卡的物理接口为 PCIE x16 并具备 PCIe Gen5 x16 的传输速率。在一个全功能的春晓芯片的支持下,S3000 的整体渲染、编解码性能相对于上一代芯片均具备明显的能力提升。目前 S3000 即将进入全面量产阶段,GPU 虚拟化可以最多切分 28 个 vGPU 并发服务于 28 个虚拟机,支持 Windows 10 以及 Windows Server 2019 虚拟机中的 vGPU 驱动程序。vGPU 兼容 DirectX、OpenGL 渲染框架,DXVA 编解码框架并提供 MT DirectStream SDK 进行 GPU 硬件编码。
MTT S1000
MTT S1000 基于“苏堤“芯片,物理形态为半高半长单槽;显卡采用被动散热方式,整卡功耗 75W,无需额外的外部供电线。S1000 内置一颗“苏堤”芯片,显卡与计算机连接的物理接口为 PCIe x16。目前 S1000 以及处于量产出货状态,摩尔线程的 GPU 虚拟化技术软件已完成产品化发布,将一个物理 GPU 切分成最多 10 个虚拟 GPU(vGPU),并提供 Windows 10 虚拟机中的 vGPU 驱动程序。
摩尔线程 GPU 虚拟化技术简介
虚拟化技术是云服务的基础,摩尔线程 GPU 作为重要的算力,软件开发并提供了 GPU 虚拟化技术,满足数据中心中以 GPU 直通、vGPU 的方式使用 GPU 的需求。摩尔线程通过 PCIe Passthrough 技术支持 GPU 直通,通过软件截获直通的方式开发了 vGPU 驱动,并在底层支持 SR-IOV 方案。整体的软件产品通过 MT vGPU 的软件产品形态提供。虚拟化出来的 vGPU 的功能与物理 GPU 设备形态上完全一致,向上可以支持虚拟机中的业务运行。虚拟化系统的架构图如下图所示

图表 1 摩尔线程 GPU 虚拟化框架示意图
摩尔线程虚拟化方案
摩尔线程基于软件的 GPU 虚拟化方案作为整个云基础架构的关键部分,云端为了硬件的集群化以及渲染节点的抽象化,都需要硬件提供虚拟化技术。常见的 GPU 虚拟化技术包括:GPU 直通、GPU 分块。分别可以将 GPU1 对 1 或者 1 对多的分配给不同的节点,以服务于不同的终端。通过多个节点共享的使用一个 GPU 硬件,服务器能够支持更多路的计算服务。摩尔线程的 GPU 虚拟机化方案,主要由四部分构成:摩尔线程物理 GPU、摩尔线程虚拟化驱动、摩尔线程虚拟 GPU 设备和摩尔线程虚拟 GPU 驱动。摩尔线程全功能 GPU 作为整个虚拟化方案的硬件基础,拥有先进的异构计算架构,融 合了通用计算,3D 渲染,超高清视频编解码集 AI 训练推理于高清显示于一体,适用于云、边、端各类应用领域,提供了高效稳定的算力保证。虚拟机中,以通用的虚拟 PCIe 设备方式提供给虚拟机使用 IOMMU( Input–output memory management unit )和 VFIO( Virtual Function I/O )技术,兼容主流的 KVM 虚拟化平台。摩尔线程虚拟化驱动,使主流的操作系统对虚拟化无感知,于在物理机使用操作系统体验一致。
相对于目前虚拟 GPU 只能等分分配显存,摩尔线程的 GPU 切分方式更加多样性,可以按照不同的需求采取非等分的方式切分显存。 根据渲染节点任务的负载,GPU 虚拟化应对应的支持不同负载的 GPU 能力分块。目前市面上的显卡只能支持固定比例的分配,这对于多样化的渲染需求来说是不友好的。摩尔线程的 GPU 灵活切分和动态切分需求能够在服务器不重启的情况下,根据负载的需求对 GPU 资源进行划分,以支持云端纷繁复杂的应用需求,最大化的利用硬件能力。
多种调度算法,适应不同场景。对于 GPU 算力的划分,摩尔线程的虚拟化 GPU 软件,针对于不同需求提供了三种调度方式:优先调度策略、等分时间片调度策略、弹性调度策略。
摩尔线程 GPU 直通
作为标准的 PCIe 设备,摩尔线程的显卡支持 GPU 直通的方式到虚拟机中的使用方式。这种情况下,GPU 的性能保真度可以最大化,而且可以实现了不同操作系统上共享设备的使用方式。
2. 核心功能
摩尔线程 GPU 虚拟化技术
摩尔线程的 GPU 虚拟化技术提供了将一块物理 GPU 切分成多个虚拟 GPU,并发的服务于多路虚拟机负载的能力。在虚拟机操作系统中,摩尔线程提供了 Windows 10 等操作系统的虚拟 GPU 驱动,兼容 DirectX 等渲染框架,DXVA 等编解码框架,加速虚拟机中的显示渲染、视频编解码等核心功能。通过实际的测试表明,使用了摩尔线程的 vGPU 的云桌面能够有效的加速 19 款教育类应用,并且能够在视频播放、视频会议、日常办公等场景显著的降低 CPU 的负载,提高整机性能。
做为主机端的 PCIe 设备和虚拟机端的虚拟化 GPU 设备,摩尔线程的 GPU 依赖于 CPU、操作系统、QEMU-KVM 版本,目前 MT vGPU 已经兼容的环境列表如下:
| 环境项目 | 描述 | 备注 |
|---|---|---|
| CPU | Intel CPU,x86 架构 | VT-x 使能 |
| 操作系统 | 基于 ubuntu, centos 等的 Linux 操作系统 | |
| 操作系统+内核版本 | CentOS 7.5 + 5.10.02 Ubuntu 20.04.1 + 5.4.0-423 CentOS 7.9 + 5.10.384 CentOS 7.6 + 4.18.05 CentOS 7.6 + 4.19.126 OpenEuler 20.03 + 4.19.0 BCLinux-for-Euler-21.10 + 4.19.90 | |
| QEMU | 2.11.2,4.2 及后续新版本 | |
| Windows 操作系统 | Windows 10 1909,Windows 21H2 及后续新版本 Windows Server 2019 |
图表 2 摩尔线程 GPU 虚拟化适配环境
灵活切分技术
传统的 GPU 虚拟化技术只能实现对 GPU 资源的均分,对于使用 vGPU 的虚拟机来说性能需要保持一致,在一些应用场景下不能满足虚拟机灵活分配的需求。摩尔线程针对这一行业痛点,开发并提供了灵活切分技术。从功能上来讲,灵活切分技术是在 GPU 的能力范围之内,提供不等分的 vGPU,满足不同业务负载的需求,同时使云平台对于 GPU 的资源做到更细程度的成本控制与纳管。
vGPU 的切分是按照显存的大小对算力、显存、编解码资源进行分割的,目前在摩尔线程“春晓”GPU 芯片上,灵活切分的范围和 vGPU 的数量如下表所示:
| Type-ID | Type-vRAM | 最大分辨率 | 虚拟显示器数量 | S3000 可用数量 |
|---|---|---|---|---|
| mtgpu-1101 | 1GB | 1920x1080 | 1 | 32 |
| mtgpu-1101 | 1GB | 1920x1080 | 2 | 28 |
| mtgpu-1102 | 2GB | 1920x1080 | 2 | 16 |
| mtgpu-1104 | 4GB | 1920x1080 | 2 | 8 |
| mtgpu-1108 | 8GB | 1920x1080 | 2 | 4 |
| mtgpu-1116 | 16GB | 1920x1080 | 2 | 2 |
| mtgpu-1132 | 32GB | 1920x1080 | 2 | 1 |
图表 3 摩尔线程 vGPU 支持切分类型和对应 vGPU 数量
在单个 GPU 显存的范围之内,用户可根据自己的业务负载程度和期望的负载数量,灵活的自主选择 vGPU 的类型。
动态切分技术
在云端,业务的持续性是关键点之一,传统的 GPU 虚拟化技术为了更改 vGPU 的切分,需要重启主机生效,这对于云端来说是非常不友好的。为了满足这一行业痛点,摩尔线程的 GPU 虚拟化技术支持动态切分。即用户可以根据业务需要随时申请、释放 vGPU 资源,释放出来的 vGPU 资源作为资源池,如果有新的业务负载需要申请使用,无需重启主机,可以直接从资源池中获取相应资源。

图表 4 动态切分技术示意图