NVIDIA RTX 6000 Ada Generation 深入测试 您所在的位置:网站首页 cuda的作用 NVIDIA RTX 6000 Ada Generation 深入测试

NVIDIA RTX 6000 Ada Generation 深入测试

#NVIDIA RTX 6000 Ada Generation 深入测试| 来源: 网络整理| 查看: 265

前言——专业卡应用场景和特点简介

和用于游戏娱乐的游戏卡不同的是,专业图形卡或者说工作站卡是为生产力设计的,能够为用户创造价值,满足某些特定需求,例如 7x24 的应用环境、行业软件加速、大内存内存计算、多屏巨幕等等。

例如,大家耳熟能详的Photoshop、Premiere Pro、Davinci Resolve Studio、3ds Max、Maya,工作站显卡在这几个应用中的主要优势是大显存内存、高可靠性。当然专业应用的范围绝不至于创意类的,像工业领域的 PTC Creo、达索 Solidworks、西门子 NX、Ansys Fluent 等都是非常重要的工业设计和计算解决方案。

这些应用涉及到的加速部分各不相同,例如有些需要视频编解码加速、有些需要可靠的 OpenGL 加速,有些则可能还需要 CUDA 通用计算,GPU 厂商和软件开发商需要密切配合才能提供良好的兼容性和性能发挥。

此外还有一些特殊的行业软件,例如舞美背景、街头巨幕电子广告牌等,有些是解决方案商自己开发或者定制的,显卡需要提供多屏硬件同步功能,这也是工作站卡才能实现的。

对普通用户来说专业卡给他们的最大差别可能是高昂的价格,例如上一代的 RTX 6000,报价是 6999 美元,折合人民币大约是 48000 多,远高于同期的旗舰级游戏卡。但是和后者相比,专业卡的大显存内存、专业软件认证、多屏能力都是游戏卡无法提供的。在 NVIDIA 公布的财务数据里,专业图形的占比一直很高,这说明虽然专业卡的价格很高,但是选择专业卡的用户大有人在。

NVIDIA 正式进入专业卡市场是从 1999 年基于 NV10GL 芯片的 Quadro 开始,在那之前 NVIDIA 收购了德国艾尔莎的专业卡团队,着手进入这个之前被 3DLabs、Intense3D(野猫专业卡)、FireGL 等老牌专业卡把持的市场,Quadro 问世后,上述对手几乎是一夜间被全部干翻,专业卡市场迅速切换到 NVIDIA Quadro 上并维持至今,期间虽然有若干对手试图再起波澜但最终都铩羽而归。

市场上目前就剩下 AMD RADEON Pro(前身是 FireGL)、新晋的 Intel Arc Pro(部分团队成员来自 3D Labs),在 NVIDIA 构建的强大专业卡生态面前它们的份额并不起眼。

NVIDIA 保持着每代新架构 GPU 都推出相应专业卡的策略,去年的 GTC 2022 秋季峰会上,该公司就推出了基于 Ada Lovelace 的全新旗舰专业卡——RTX 6000 Ada,这次测试的对象就是这款产品。

RTX 6000 Ada 产品技术介绍

从 Ampere 架构的专业卡开始,NVIDIA 启用了名为 RTX 的新专业卡品牌,之前的 Quadro 品牌告一段落,最后一款 Quadro 旗舰专业卡是基于 TU102GL 的 Quadro RTX 6000,而后就是去掉了 Quadro 品牌基于 GA102GL 的 RTX A6000,RTX 6000 Ada 则是基于 AD102GL 这枚 GPU。

上图就是 NVIDIA RTX 6000 Ada Generation,采用双槽散热器设计,提供了一个透背鼓风机风扇,显示输出支持 4 个 DP 1.4,采用 PCIE 4.0 x16 总线。

上图中的两个接口分别是多屏同步和立体显示辅助接口,用于确保多屏和立体显示的时候画面稳定不跳脱。

RTX 6000 Ada 采用了 PCIE 新制定的大功率供电接口 12VHPWR 接口,接口位于显卡散热器的后侧,这种接口能显著减少电缆占用的空间。

AD102GL(或者说 AD102-875) 基于 NVIDIA 最新的 Ada Lovelace 微架构,采用台积电 4nm 定制制程生产,和同样 AD102 的游戏卡版本相比,RTX 6000 Ada 选择了更注重稳定性、可靠性的设计,具备较低频率、更低的功耗设定,但是另一方面它拥有更完整的内核启用数量(18176 vs 16384)和两倍容量的内存内存(48 GiB vs 24 GiB)。

从架构层面看,Ada Lovelace 的主要有以下几点变化:

采用台积电 4N 制程,集成了 763 亿个晶体管,芯片面积为 680 平方毫米;高达 96 MiB L2 Cache,是上一代 RTX A6000 6 MiB 的 16 倍;CUDA 计算能力版本为 8.9;第四代张量内核 Tensor Core,支持 FP8、FP16、TF32、BF16 和稀疏化加速;第三代光线追踪内核,支持着色器执行重排序(SER);具备双 3 个 NVENC 和 3 个 NVDEC 视频编码编解码器,支持新增 8K 10-bit 60fps AV1 硬件编码编解码能力;集成了新版本的光流加速器(OFA),具备两倍于上一代的光流加速能力;去掉了 NVLink 支持;电源连接器改用更紧凑的 12VHPWR。

如果你有耐性并且觉得上面列出的清单过于粗略的话,那么你可以看看接下来关于 Ada Lovelace 架构的细节。

Ada Lovelace 架构细节——计算性能

Ada Lovelace 这个代号源自英国数学家洛夫莱斯伯爵夫人奥古斯塔·埃达·金·诺尔,据闻在1842到1843年间,她翻译了一篇意大利军事工程师分析机的文章,并加上详尽的笔记(篇名就叫笔记),提出了计算机的用途不仅仅可用于算数还能用于其他方面的说法,被后世誉为计算机之母。

Ada Lovelace 采用台积电专门为 NVIDIA 定制的 4 纳米制程,RTX 6000 Ada 采用的 就是基于该架构的 AD102GL GPU,物理上拥有 12 个 GPC(图形处理簇),每个 GPC 内包含有 6 个 TPC(纹理处理簇),每个 TPC 内包含有两个 SM(流计算模组),每个 SM 内有 128 个支持单周期单精度 FMA 计算的 CUDA 内核(CUDA Core)或者说 PE(按照 OpenCL 术语定义),完整的 AD102 具备 18432 个 CUDA Core,RTX 6000 Ada 启用了其中的 18176 个 CUDA Core 或者说 142 个 SM。需要注意的是,和 Ampere 类似,Ada 的 CUDA Core 里有一半是 FP32 和 INT32 共享指令端口的,因此在有 INT32 指令的时候,RTX 6000 Ada 的CUDA Core FP32 FMA 等效数量将是 9088 个。

Ada Lovelace 架构细节——内存子系统

和 Ampere 相比,Ada Lovelace 最大的微架构变化是大幅度提升了 L2 Cache 的容量,AD102GL 的 L2 Cache 是 GA102GL(Ampere 架构,RTX A6000 采用的芯片代号)的 16 倍,或者说 96 MiB。

在 GPU 上引入更大的 L2 Cache 可以显著改善计算或者渲染时的内存带宽压力,减少访存压力,有效改善性能/耗电比。

在内存类型上,AD102 虽然支持更快的 GDDR6X,但是可能出于 GDDR6X 高耗电的缘故,RTX 6000 Ada 和之前的同级别专业卡一样都选择了更省电的 GDDR6 内存,容量为 48 GiB,总线位宽 384-bit,带宽高达 960 GiB/s,是 RTX A6000 的 1.25 倍。

Ada Lovelace 架构细节——第三代光线追踪内核

在每个 Ada Lovelace 的 SM 里都有一个基于 MIMD 的第三代光线追踪内核,它的主要作用是对光线追踪里的射线求交进行加速计算。

光线追踪渲染的原理是模拟从观察者方向向屏幕发射射线,射线穿过屏幕直到击中场景中的某个三角形,此时渲染程序会判断这个三角形是什么材质,例如透明、光滑、粗糙或者是不反射任何光线的,根据这些特性决定是否射线求交是否到此为止或者做折射、反射等衍生射线的后续计算。

可以看到,光线追踪的涉及到的计算其实很简单,但是对于写实场景来说,里面的三角形数量可能有数以百万甚至数以亿计,每条射线需要从这数量庞大的三角形中找到被击中的那个需要耗费大量的时间。

为此,人们引入了名为加速体的技术,例如实时光线追踪渲染一般选择名为 BVH(多层次包围盒)将场景中的各个对象框起来,相当于建立起若干个粗糙版本的场景,能够显著减少三角形遍历次数。

NVIDIA 的光线追踪内核就是对 BVH 和三角形进行遍历和求交加速的硬件固定功能单元,当完成某条射线的求交后,就会把结果交给 SM 负责该击中点的计算,例如折射、反射等计算。

而第三代光线追踪内核在多个方面做了增强。

首先是三角形求交能力在 Ampere 架构的第二代光线追踪内核基础上予以了倍增,相当于每个周期能完成四次三角形求交计算。

介绍 Ada 架构专业卡 RTX 6000 Ada 的主要特点,特别是相对上一代的改进之处,例如计算性能(规模、第三代光线追踪、第四代张量内核),此外还有内存容量、外观设计等。

其次是引入了透明度微图引擎(OME)和位移式微信网面引擎(DMME),前者可以用于透明对象例如基于 Alpha 透明纹理渲染的植物、爆炸烟雾等,而后者或者说 DMME 则可以用于加速高细节度表面的物体。

按照 NVIDIA 的说法,启用 OME 后,Ada Lovelace 的 Alpha 遍历性能比 Ampere提升一倍,启用 DMME 后,能实现 10 倍于 Ampere 的 BVH 构建速度和 1/20 的 BVH 空间占用。

Ada Lovelace 架构细节——着色器执行重排序

所有 GPU 的通用计算单元例如 CUDA 里的 SM 在物理上都是 SIMD,只是在线程调度上采用了名为 SIMT 的方式,在对三角线求交点进行计算的时候,SM 中的所有 SIMD 通道都需要等待场景中遍历步进最远的射线完成计算后才能进入下一条射线的计算。

在很多情况下,这些深遍历需要的耗时可能比纹理采样(意味着访存)更多——这意味着 SM 中会有大量的计算资源被虚耗,而且是耗能极高的高速怠机状态。

这就形成了一种矛盾,遍历越深才能让画面渲染准确度越高,但是性能和电力浪费也可能会越严重。

对于 SER 的原理,NVIDIA 使用了上面这张图来做说明。

按照从左到右的顺序,来自“摄像机”或者说“观察者视点”的射线(主射线,Primary Ray)进入场景中并击中墙壁(黄色)、猫(红色)、底座(红色)以及地面(绿色),发生击中的时候就会产生 Primary Hit 着色计算,此时的着色计算代码路径和访存特性基本上是连贯而有序的。

随后发生了反射特性的衍生射线,此时的射线方向是不一致的,产生了第四张图中那样的乱成麻絮的代码路径和访存特性。此时 SER透过对 SIMD 的寄存器进行重排序,就能让这些乱成麻絮的代码执行次序得到优化,形成第五张的样子,此时代码执行路径以及访存特性基本上是一致的,SM 的执行效率得到了最佳化。

第二代光流加速器与 DLSS 3.0

NVIDIA 在图灵架构开始就集成了名为 NVOFA 的光流加速器,用于视频和 VR 光流插帧加速,而这次 Ada 架构引入的新 NVOFA 单元较 Ampere 的版本性能提升了一倍(达到 305 TOPS),NVIDIA 基于该单元提供了名为 DLSS 3.0 的超采样技术。

DLSS 3.0 本质上就是 DLSS 2.X 加上 NVOFA 实现的插帧,可以说,DLSS 2.x 实现空间超采样,而 DLSS 3.0 在空间超采样的基础上引入了时间超采样,理论上能在 DLSS 2.X 的基础上实现帧率翻倍。

DLSS 3.0 的最有效应用场景是出现了 CPU 瓶颈并且系统响应时延在可以接受的程度时,提供接近翻倍的帧率。

NVIDIA 正在准备名为 Streamline 2.0 的 DLSS 集成工具,在这个版本中,不仅提供了 NVIDIA DLSS、Reflex、DLAA、NRD(NVIDIA 实时降噪器)等技术的支持,而且还预留了接口支持Intel XeSS、AMD FSR 等多种超分辨率技术,这意味着软件开发人员只需要熟悉一套工具,就能快速部署来自不同 GPU 厂商的超分辨率技术。

AV1 硬件加速与三个NVENC + 三个NVDECNVIDIA 双视频编码器

视频创作是创意工业流程中的重要环节,而视频创作中常见的机器耗时操作就是编码输出,NVIDIA 是最早提供硬件视频编码器的 GPU 厂商,自 2012 年 Kepler 开始集成了 h.264 编码器至今已经经历了 8 次迭代更新。

Ada 架构这次提供的 NVENC 提供了支持对来自开放媒体联盟(AOMedia)的 AV1 视频压缩技术提供硬件编解码硬件加速,AV1 是一种免版权税的开放视频编码技术,相同画质下压缩水平与 h.265 不相伯仲。

除此以外,RTX 6000 Ada 还提供了双三个 NVENC 视频编码器,能实现专业级的 8K 60p 或者同时 4 多条 4k 60p 视频流编码支持,这对于一些需要快速剪导出片的剪辑师来说很有意义。

产品实测测试平台CPU:英特尔 Core i9 13900K,默认频率,开启超线程,名义内核电压降压 0.05v主板:七彩虹 CVN Z790 GAMING FROZEN V20显卡:NVIDIA Quadro RTX 6000/NVIDIA RTX 6000 Ada内存:七彩虹 CVN DDR5-6000 16GiB *2 @ 6400MT/s,时序 CL36-38-38-76硬盘:Plextor M10P 1TB电源:鑫谷 GM1000W 冰山版 ATX 3.0 版显示器:AOCx保时捷联名 Agon Pro PD32M 3840x2160 120Hz 关闭 G-sync操作系统:Windows 11 Pro 英文版 / Ubuntu 22.04 Kernel 6.2.8驱动程序: 531.18 n for Windows/ 530.30.02 for Linux 64-bit

其实早在去年 12 月份的时候我已经拿到这片 RTX 6000 Ada ,但是当时因为担心驱动尚未完全就绪的缘故,所以一直未能展开正式的测试,直到这个月 NVIDIA 方面表示驱动就绪后,我才开始测试。

对比的产品是 Quadro RTX 6000,是图灵时代的同级产品,其实最理想的对比应该是基于 Ampere 的 RTX A6000,但是实在没调到,所以这次对比测试属于隔代相望。

底层性能测试内存子系统

首先让我们来看看内存子系统方面的情况 ,这里我使用的是基于 Vulkan API 编写的底层测试工具 gpuperf,从测试结果可以看到,和 Quadro RTX 6000 相比,RTX 6000 Ada 的 L1 Cache 转折点始于 112 KiB 终于 192 KiB,而基于图灵架构的 Quadro RTX 6000 L1 Cache 在 24 KiB 处开始转折终于 48 KiB。

在 L2 Cache 方面,RTX 6000 Ada 在 56 MiB 处开始转折终于 96 MiB,比同样 L2 Cache 容量的游戏卡 RTX 4090 延伸多了 32 MiB,这可能和 RTX 6000 Ada 启用了更多的 计算单元。

在带宽表现方面,RTX 6000 由于功率约束的原因,L1 Cache 表现要比 RTX 4090 低不少,但是依然达到了 Quadro RTX 6000 的三倍水平,进入 L2 Cache 后,RTX 6000 Ada 的表现要略微好于 RTX 4090。当访问片外内存的显存时,RTX 4090 由于采用了 GDDR6X,内存带宽性能会比 RTX 6000 Ada 好一些,但是并没有高很多(RTX 6000 Ada 大约是 RTX 4090 的 97%),而 Quadro RTX 6000 的实测带宽只有RTX 6000 Ada 的 70% 左右。

通用计算

底层通用计算主要测试的是 CUDA Core 的通用计算性能,使用的同样是基于 Vulkan API 的 gpuperf。

从测试结果来看,RTX 6000 Ada 的 FP32 和 FP16 性能非常接近,相较之下,基于图灵的Quadro RTX 6000 的 FP16 性能可以做到 FP32 的两倍。

RTX 6000 Ada 的 FP32 通用计算性能基本上是 Quadro RTX 6000 的 5 倍,测试结果符合两片卡的理论值差距。

张量计算

张量(tensor)是线性代数中的一种数学函数形式,它最初是在物理学中使用,从力学到广义相对论,张量都是不可或缺的重要描述方式。

而在机器学习中,张量要简单许多,它就是一种数组函数或者干脆说多维数组也不会偏离太多,但是它的确是人工智能框架中使用的最常见的数据类型,所以对提供张量计算加速,就相当于提供了人工智能计算加速,NVIDIA 从 Volta 微架构中开始集成了 Tensor Core,到了 Ada 已经是进化到了第四代。

自从 2006 年开始推出 CUDA 后,NVIDIA 为推广 CUDA 耗费了庞大的资源,为各大学术机构和商业机构中提供了大量培训和样品支持,许多人藉此掌握了使用 CUDA 的诀窍,开始被越来越多人关注。

其中我觉得尤其以2011 年 Computer Architecture:A Quantitative(国内翻译作计算机体系结构:量化研究方法)第五版这本书为标志,这本书在过去主要围绕 CPU、网络、存储提供各种量化(或者说定量)研究的手段,被认为是计算机科学领域的圣经,在第五版中,破天荒地提供了 NVIDIA GPU 的章节,说明业界已经高度认可 CUDA 为代表的的 GPU 通用计算。

2014 年,谷歌公司著名的 AlphaGo 围棋程序项目启动,仅仅一年后,搭载多个 GPU 的AlphaGo 就以 5:0 的战绩击败了欧洲围棋冠军樊麾二段,之后数年 AlphaGo 经过升级加载了专用张量加速器 TPU 后接连击败了九段顶尖围棋高手,名噪一时。

为了应对类似 TPU 这样的张量加速器,NVIDIA 在 Volta 上开始引入 Tensor Core 以增强 AI 计算的竞争力。

和 TPU 这类专用加速器相比,带有张量加速的 GPU 在竞争上丝毫不落下风,因为 GPU 此时兼具了通用计算和 AI 加速的优点,适用领域大为扩展,从桌面到移动计算,从自动驾驶到超级计算机,GPU 或者更准确地说 CUDA 在 AI 计算领域的风头依然很火。

在这里,我使用 cublasmatmubench 进行张量性能测试,由于软件相对较旧,所以缺乏 Ada 第四代张量内核 fp8 数据类型的支持,这里提供 int8、tf32、fp16、fp32、fp64 的数据供大家参考。

这个测试的结果和矩阵设置参数有较大关系,为了反映跑该测试程序时显卡能达到的最大值,在这里两张显卡的矩阵设置参数比不一样。

例如跑 int8 的时候,Quadro RTX 6000 使用的矩阵参数是 -m=1536 -n=1536 -k=16384,而 RTX 6000 Ada 的矩阵是 -m=2560 -n=1536 -k=16384,参数选择的标准就两条:能把运行时的功耗尽量接近显卡的功耗约束以及最大化测试结果。

这样是合理的,就好像 Top500(超算 500 强)跑 Linpack 的时候大家也必须对矩阵参数做针对化的调优一样。

从测试结果来看,RTX 6000 Ada 的 INT8 实测性能大约是 Quadro RTX 6000 的 2.3 倍。

在 TF32 测试中,由于 Quadro RTX 6000 缺乏硬件支持,因此它其实是用 FP32 单元执行,由于 TF32 的实际格式是 19-bit,占用的内部资源较少,所以在 Quadro RTX 6000 上即使用 FP32 单元1执行性能也会比 FP32 更快一些(14.3 vs 13.6)。由于 RTX 6000 Ada 具备硬件 TF32 支持,所以在这里性能达到了 Quadro RTX 6000 的 4.63 倍。

上述测试并没有使用 RTX 6000 Ada 的稀疏化支持。

光线追踪

这里我使用 Matt Pettineo 的 DXR Path Tracer 进行了简单的对比,测试条件是每像素 16 射线、8 次反弹、32 光源,并且启用了若干常见的渲染效果:

从测试结果来看,在光线追踪底层测试中,RTX 6000 Ada 的性能是 Quadro RTX 6000 的 3 倍。

在实际应用中,如果涉及到动态模糊、启用了 Ada 新引入的 DME、OMME、SER 等特性的话,两者的差距将会更大。

专业工作站性能测试——SPEC Viewperf 2020 v3.1

SPEC 是有业界主要芯片厂商和系统商共同组建的非营利性机构,目的是开发出行业都认可的性能测试工具,Viewperf 是该组织下属的 GPC 部门开发的专业卡性能测试工具,这个测试工具的工作原理是采集真实工作站应用的图形渲染轨迹,然后将其和渲染场景、素材打包在一起做成,能反映真实应用下不同显卡的渲染性能表现,而无需用户安装相应的工作站软件。

Viewperf 2020 v3.1 是 Viewperf 系列基准测试的最新版本,主要反映的是视口实时渲染性能,包含了 Maya-06、Energy-03、Catia-06、Creo-03、3dsmax-07、SNX-04、Solidworks-07、Medical-03 等 8 个测试包,除了 3dsmax-07 使用的是 DX12 API 外,其余使用的都是 OpenGL。

它们分别对应了 Maya 2019、OpendTect 地震可视化、达索 CATIA V5 和 3DEXPERIENCE CATIA、PTC Creo 4.0、3ds Max 2016 DX11 视口渲染器、西门子PLM 的 NX 8.0、达索 SolidWorks 2020、Tuvok 医学可视化渲染等软件或者工具,运行时涉及到的数据集都是基于真实应用的,例如 Energy-03 使用的数据集就是来自 Open data - SEG Wiki 的真实地震数据。

此外,SPEC Viewperf 会对所有测试场景采集运行中的截图,供测试人员和 SPECgpc 官方确认画面渲染正确性。

在 Viewperf 2020 v3.1 测试中,RTX 6000 Ada 基本上两倍于 Quadro RTX 6000 的性能,其中 medical-03 和 energy-03 分别达到了 2.54 倍和 2.28 倍,差距最小的是 creo-03,前者是后者的 1.42 倍性能。

工作站专业性能测试——SPEC Workstation 3.1

SPECgpc Workstation 3.1 发布于 2021 年或者说 Viewperf 2020 v3.1 之前的一年,它属于工作站整体测试,涵盖了 CPU、图形和存储子系统三个部分,由于发布相对较早,所以里面的实时渲染测试版本要旧一些,不过除了实时渲染测试外,它还有若干个 GPU 通用计算的子项目(包括有 LuxRender、caffe、FAH),这是 Viewperf 中没有的。

在实时图形渲染部分测试数据中,RTX 6000 Ada 的性能基本上是 Quadro RTX 6000 的两倍,两者差距最小的地方是 sw-04。

在 GPU 计算中,LuxRender 渲染器部分 RTX 6000 Ada 的性能达到了 Quadro RTX 6000 的 2.72 倍,caffe 和 fah 的差距则小很多,估计是这两个测试和优化比较密切相关。

工作站专业性能测试——SPECapc for 3ds Max 2020

除了类似 viewpef 这种基于真实应用的渲染轨迹回放测试外,SPEC 还提供了直接对接到真实应用软件的 SPECapc 项目,这个项目下包含了多个应用的测试脚本和模型,透过这些测试,可以让真实应用自动执行不同的测试动作并得出测试结果。

其中,SPECapc for 3ds Max 2020 基准测试是面向运行 Autodesk 3ds Max 2020 的计算系统的供应商和用户的性能评估软件,包含了 43 个测试,涵盖了建模、交互式操作和视觉效果,涵盖了 CPU 和 GPU 在 3ds Max 2020 的性能表现。

SPECapc 的所有测试都需要真实并且有完整授权的软件,例如我这里跑的 SPECapc for 3ds Max 2020 1.1,就需要安装 Autodesk 3ds Max(我加装了 Update 3.5,以便和 spec.org 官方测试数据对比),而不是像 SPECgpc Viewperf 或者 SPEC Workstation 那样只是提取出图形渲染轨迹然后回放,SPECapc 由于涉及真实应用,有相当部分性能开销用在脚本执行等地方,所以性能差别会比 Viewperf 等更小些。

RTX 6000 Ada 的整体得分是 3.31,是 Quadro RTX 6000 的 1.3 倍左右,其中区别较大的高级视觉风格(Advanced Visual Style),RTX 6000 要快大约 47% 左右。

工作站专业性能测试——SPECapc for Maya 2023

SPECapc for Maya 2023 基准测试包含 47 个测试,使用 11 个不同的模型和动画。它包括八种不同模式下的图形测试和五种不同的 CPU 测试。

面向图形的测试使用六种不同的 Maya 视图设置——着色、着色 SSAO、着色线框、着色 SSAO 线框、纹理和纹理 SSAO,测量动画和 3D 模型旋转性能。

该基准测试包含以下 11 个模型,其中最大的模型包含 780 万个三角形:

Sol 和 Solette 动画。1.8M 三角形,1.25GiB 纹理阿波罗 11 号——质感良好、造型优美的角色Sven – 10 个角色模型副本,为动画装配Tiger – 1.3 GiB 真实渲染的老虎模型,有头发太空坠毁——宇宙飞船坠入水中的 Bifrost 模拟丛林逃生——以斯文角色为特色的动作动画场景房间光线追踪——一个光线追踪的房间(使用 CPU 光线追踪)Sol ray trace – Sol,光线追踪(使用 CPU 光线追踪)木材场景光线追踪——一棵光线追踪树(使用 CPU 光线追踪)Wall of Death 模型——衡量评估缓存性能

在 Maya 2023 测试中,RTX 6000 Ada 提供的图形性能大约是 Quadro RTX 6000 的 1.8 倍(6.06 vs 3.31),考虑到两者的发布价格非常接近,RTX 6000 Ada 的确提供了非常出色的性能表现。

工作站专业性能测试——SPECapc for Solidworks 2020

SPECapc for Solidworks 2020 于 2020 年 9 月 30 日发布,它的主要新功能包括:

在Solidworks 2020 的增强型图形界面下进行测试。用于文件转换和模拟的两个新 CPU 测试。在 Solidworks 中使用 2D 绘图模式的新测试。

SPECapc for Solidworks 2020 基准测试包括 10 个模型和 50 个测试,用于执行全方位的图形和 CPU 功能。模型大小在内存中从 392 MiB 到 2.3 GiB 不等。基准测试中包含以下模型:

Audi R8(汽车)— 715 MiB 内存,测试显卡性能和 Visualize CPU 光线追踪黑猫头鹰(台式电脑)— 1.15 GiB 内存,测试显卡性能和 Visualize CPU 光线追踪Digger(挖掘机)— 464 MiB 内存,测试显卡性能和 Visualize CPU 光线追踪法拉利(汽车)— 533 MiB 内存,测试显卡性能和 Visualize CPU 光线追踪Jet 引擎 — 665 MiB 内存,测试显卡性能和 Visualize CPU 光线追踪Menjac(电机组件)— 514 MiB 内存,测试显卡性能电机 — 392 MiB 内存,测试显卡性能SpaceShipCrawler (NASA Crawler Transporter 模型) — 2.3 GiB 内存,显卡性能超级跑车(鸥翼门)— 822 MiB 内存,测试显卡性能特斯拉塔 — 495 MiB 内存,测试显卡性能

在这个测试中,我使用的是 Solidworks 2022 SP 3.1,与 http://SPEC.org 官网上公布的数据使用的版本一致,在正式测试之前,遵照测试指南将 Solidworks 2022 SP 3.1 的所有设置恢复为默认值,这通常会比安装 SolidWorks 后直接跑测试快一些,特别是 CPU,例如 CPU raytraing 得分。

在 Solidworks 2022 SP 3.1 中,RTX 6000 Ada 的性能是 Quadro RTX 6000 的 1.83 倍,领先幅度最大的是 GPU shaded RealView with Edges,领先幅度为 1.27 倍。

工作站专业性能测试——CFD 计算流体动力学 FluidX3D

CFD 或者说计算流体动力学是流体力学的一个分支,它透过数值分析和数据结构来分析、解决涉及到流体流动的问题。传统上,CFD 一般是用 CPU 来执行,但是最近这类计算也开始在 GPU 上执行了,例如 lattice-Boltzmann 或者说格子玻尔兹曼方法(简称 LBM)就是其中的一种比较受关注的 GPU 并行求解 CFD 的方式,这里我使用了 ProjectPhysX 的 FluidX3D 进行 CFD 性能测试。

FluidX3D 基于 LBM,完全使用 OpenCL 编写(包括 CFD 计算内核和渲染内核),具备非常具竞争力的 CFD 求解速度、内存使用效率(支持 FP32 计算和硬件 FP16 数据压缩保存)和渲染速度,由 Moritz Lehmann(莫里·茨莱曼)开发,他是一位理论物理学博士候选人,也是一位顶尖的 OpenCL 开发人员。

FluidX3D 是他目前做的主要项目,目前项目属于非常活跃的状态,他经常会跑出来发布一些测试数据,例如最近他做的对比案例是西门子公司使用 8 片 A100 花了 12 小时完成了一辆汽车的 CFD 模拟(5500 万个网格,16600 步。当然 5500 万个网格从工程学角度来看的话,也只是属于低分辨率,但是对单系统来说也是比较重的负荷了),而同样规模的计算在 FluidX3D 上,只用了一片 A100 和 147 秒就搞定了。

FluidX3D 的使用相对商业化软件来说还是存在一定使用门槛的,它需要用户在源代码里添加计算代码(函数已经封装好,用户需要做的部分其实不多)以及修改若干定义,然后再用 C++ 编译器进行编译后,得出的可执行文件就是用户用于跑相应 CFD 的程序。

这次我使用的是 FluidX3D 2.3 版测试,在完成本文的时候,2.4 版已经出来但是差别不是很大。

上面的 FP32_FP32、FP32_FP16S、FP32_FP16C,第一个 FP32 表示的是所有算术操作都是使用 FP32 进行计算,第二个数据格式表示存储的数据格式,FP16S 表示使用了 IEEE-754 FP16 标准的 FP16 数据格式(也意味着支持硬件数据格式转换),FP16C 表示了使用更精确的定制 FP16C 格式(因此需要使用软件数据格式转换)。

从测试数据来看,RTX 6000 Ada 的性能基本上就是 Quadro RTX 6000 的 1.5 倍,不过这只是表面性能数据,实际上 RTX 6000 Ada 由于具备高达 48GiB 内存(两倍于 Quadro RTX 6000),意味着 RTX 6000 Ada 可以采用分辨率更高的栅格进行计算,而更高的栅格有助于提高 CFD 运算结果的准确性。

深度学习性能测试——TensorFlow 性能测试

对于开发端客户或者云计算供应商而言,往往需要较高规格 AI 加速卡,通用性更佳的 CUDA GPU 由于具备出色的开发生态以及便于购买、维护等优势,成为大部分 AI 开发商首选,而类似 RTX 6000 Ada 这类专业卡不仅一专多能,而且提供了 7x24 稳定运行能力、高达 48 GiB 内存、长久供货保证,对这些用户来说是有一定吸引力的。

NGC 提供了快速部署 CUDA 平台的便捷方案

AI 开发的主要机器学习库现在主要是 Tensorflow 和 PyTorch,背后的大老板分别是 Google 和 Meta,用户群体都非常庞大,这次测试我选择了 NVIDIA NGC 上最新的 tensorflow 1.x 容器:http://nvcr.io/nvidia/tensorflow:23.02-tf1-py3,操作系统为 Ubuntu 22.04.02 本机操作系统(非 wsl 或者虚拟运行),测试工具是 ai-benchmark,系统环境切换至纯文本模式(tty)启动,使用 ssh 在局域网内远程发送指令执行测试。

AI-benchmark 测试进行中

AI Benchmark 是由瑞士苏黎世联邦理工学院开发的测试工具,分为移动版和桌面版,我们这里使用的是桌面版,版本为 0.1.2,里面有 19 个子项目,合计 42 个子测试,其中包括了 ResNet-V2-152、VGG-16、SRCNN 9-5-5、VGG-19、U-Net、LSTM、GNMT 等主要的深度学习类型和架构。

在人工智能测试中,RTX 6000 Ada 提供了 Quadro RTX 6000 的 2.44 倍性能,其中训练是 2.34 倍,推断是 2.54 倍。

专业AIGC 性能测试——Stable Diffusion AI 绘图性能测试

AIGC 或者说 AI 内容生成是当下最热门的科技话题,无论是 ChatGPT 还是 Midjourney 亦或是 Stable Diffusion,给许多脑力工作者和创意工作者带来了前所未有的震撼,在我看来,目前 AI 的作用可能是更像是效率倍增器。

我在这里跑的的 AIGC 工具就是 Stable Diffusion(稳定扩散),这个基于深度学习的文生图模型是去年或者说 2022 年才发布,能够用于生成文本描述为条件的高细节图像,同时还能用于其他处理,由初创公司 Stable AI 与许多学术研究人员以及非营利机构合作开发。

和同样在 2022 年推出的 Midjourney 文生图模型只提供云服务不同的是,Stable Diffusion 完全开源,可以自行下载到本地部署使用,这让整个社区趋之若鹜,一堆懒人包、LoRA 模型以及各种增强模型随之问世,在一些专业软件中也出现了基于 Stable Diffusion 的插件,例如 Photoshop v24 就有 SD 插件。

我这里使用的是 Automatic 1111 这个基于网页的图形界面,它的功能相对直观,而且已经有大量基于 Automatic 1111 二次开发的网页插件,是当下最流行的 Stable Diffusion 网页版工具包。

Stable Diffusion 目前官方最新版本使用的是 PyTorch:1.13.1 + CUDA toolkit 117,集成的 cuDNN 版本较老,未能充分使用 Ampere、Ada 这两个新架构的优势。

为此,我在这次测试中将 NVIDIA 官网提供的 cuDNN 8.8 for CUDA Toolkit 11.x 覆盖掉 Stable Diffusion 自带的,RTX 6000 Ada 的性能因此提升了一倍。

在执行 Stable Diffusion 的时候,GPU 的频率并不高,一般也就是 900 到 1300MHz,但是此时的功耗已经达到 RTX 6000 Ada 的300 瓦功耗约束。

Stable Diffusion 具体配置环境见下图所示:

测试使用的是 Automatic 1111 system info 插件中提供的 run benchmark 功能,选择的模型是 Automatic 1111 安装 Stable Diffusion 时自带的 v1-5-pruned-emaonly.safetensors 这个模型。

从测试结果来看,RTX 6000 Ada 的性能基本上是 Quadro RTX 6000 的 2 到 2.29 倍,这样的性能表现相当出色。

专业性能测试渲染性能测试——Blender Benchmark 3.1.0

NVIDIA 在 20 年前就开始涉足离线成品级渲染器,例如基于 Cg 语言的 Gelato以及基于 CUDA 的 MetalRay、Iray等,如今 NVIDIA 正全力推动基于 RTX 技术包的 OptiX 渲染框架,让更多的第三方厂商采用该技术提升渲染生产力,大量三维软件和渲染器纷纷将 RTX 渲染技术纳入自己的产品中,这其中就包括了开源三维软件 Blender(渲染器为 Cycles)。

Bender Benchmark 是 Blender 提供的基准测试软件,这是一个完全独立的渲染性能基准测试包,提供了图形界面和命令行两种版本,测试的场景有三个,分别是教室、旧货店(见下图)和怪兽,感兴趣的话,大家可以到这个网站下载独立的脚本和场景。

和 Quadro RTX 6000 相比,RTX 6000 Ada 实现了平均 3.4 倍的性能,其中在 monster(怪兽)场景中性能达到了 4 倍,这是一个让人印象深刻的测试结果。

渲染性能测试——V-Ray Benchmark 5.0.2

V-Ray 是有保加利亚软件公司 Chaos 开发的一个渲染器,支持包括 3ds Max、Maya、Revit、Cinema 4D、Rhinoceros、Unreal、Blender 等三维软件,是最早支持 NVIDIA RTX 硬件光线追踪的渲染器之一,在 2017 年,V-Ray 获得了奥斯卡科学与技术奖,。

Chaos 也提供了自己的 V-Ray 光线追踪测试包,提供了包括 CPU、CUDA、RTX 三种渲染方式的测试。

我只选择了 RTX 硬件光线追踪渲染方式,在这个模式下,RTX 6000 Ada 的性能是 Quadro RTX 6000 的 3.82 倍,表现同样相当耀眼。

测试总结

综合分析测试结果以及产品特点。从底层计算性能来看,NVIDIA RTX 6000 Ada Generation 提供了非常强大的浮点计算性能,甚至要比功率约束(300 瓦 vs 450 瓦)和体积(双槽 vs 三槽半)都要大 50% 的 GeForce RTX 4090,这其中的主要原因是 RTX 6000 Ada 拥有更完整的内核以及更有效的 L2 Cache 访问能力,所以可以在一些底层测试中提供非常亮眼的表现。

在实际应用方面,RTX 6000 Ada 在图形工作站互动体验方面基本上能达到 Quadro RTX 6000 的 1.5 倍到 2.5 倍左右的性能,在离线成品光线追踪渲染器测试中则达到了 2.8 到 4 倍的性能。

人工智能无疑是未来创意产业极为重要的助推器,RTX 6000 Ada 在这方面的表现也是非常耀眼,2.3 倍于 Quadro RTX 6000 的出色性能并不足以说明一切,48 GiB 的大容量内存对人工智能应用效率提升也是不容忽视的。

提到 48 GiB 内存容量,不能不提的一个重要应用领域就是多屏巨幕支持,RTX 6000 Ada 也将是重要的解决方案。举个例子,有些巨幕管理软件使用自己开发的多屏软件,画面是逐帧存放的,这是因为有些巨幕应用场景的分辨率甚至远高于 8K,显卡的硬件解码达不到这么高的能力。而逐帧存放的话,就需要较大的内存,此时 48 GiB 内存就有非常重要的价值了。

RTX 6000 Ada 的价格对普通用户来说无疑是极为昂贵的,它主要的应用场景是高端图形工作站、计算集群和高性能多屏巨幕解决方案,这些场景的回报率往往相当高,一次性的硬件投资相对于用地、人力和软件成本来说并不算很高,而苛刻的可靠性和运行环境要求和长久持续的供货也是普通显卡难以实现的,RTX 6000 Ada 就是能满足这些要求的产品。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有