gts2 说明书:关于GTC22您还有哪些问题
gts2 说明书:关于GTC22您还有哪些问题A:GPU 应用程序最大的瓶颈在于互联,CPU <-> GPU GPU <-> system memory 解决这个问题不仅会提升现有程序的效率,同时可以将更多的业务应用迁移到GPU上运行。Q:如何理解 NVLink 打开 semi-custom chips and system 的世界?为什么是 NVLink 而不是其他?900GB/s (NVLink GPU 到 GPU) 900GB/s (NVLink C2C GPU 到 CPU) 128GB/s (PCIe Gen5 GPU 到 CPU).
3月份 NVIDIA GTC 大会已经落幕一段时间了,NVIDIA 技术专家梳理了开发者朋友们会感兴趣的一些问题并一一作了解答,本文将这些问题与答案列出方便需要的开发者朋友们查询,原文已经发表在 知乎平台,读者朋友们也可以通过点击文末 “阅读原文” 到知乎网站留言交流。
Q:黄仁勋在主题演讲中介绍 H100 拥有4.9TB/s的带宽,但是 H100 4.9TB/s 的带宽是如何计算得来的呢?由于内存带宽为 3TB/s,NVLink 带宽为 900GB/s,那么外部总带宽意味着什么?
A:4.9 TB/s (H100 对外的带宽总和) =
3TB/s(HBM3 GPU 内存)
900GB/s (NVLink GPU 到 GPU)
900GB/s (NVLink C2C GPU 到 CPU)
128GB/s (PCIe Gen5 GPU 到 CPU).
Q:如何理解 NVLink 打开 semi-custom chips and system 的世界?为什么是 NVLink 而不是其他?
A:GPU 应用程序最大的瓶颈在于互联,CPU <-> GPU GPU <-> system memory 解决这个问题不仅会提升现有程序的效率,同时可以将更多的业务应用迁移到GPU上运行。
Q:NVLink Switch 是否支持 OEM 的 HGX H100 机型?和 DGX H100 相比是否有功能或性能方面的不同?
A:支持。如果配置实现相同的话,理论上性能也是一致的。
Q:H100 GPU 和服务器内部的 NVSwitch 之间的电缆是如何连接的?每条链路的带宽是多少?一条绿线意味着 450GB(18*25)?
A:在服务器内部,GPU、NVLink 和 NVSwitch 在主板上通过 Serdes 相连,每个 H100 有 18 条 NVLink 链路,每条链路单向带宽 25Gb/s,双向带宽 50Gb/s,18条link 总带宽900Gb/s。
Q:NVSwitch 是如何与 NVLink 交换机连接的?每条绿线有多少带宽?18个以下的 NVLink 交换机的物理形式是什么?
A:服务器外部的 NVLink Switch,称为 L2 NVSwitch,它是 1U Rack 形态,内含2个第三代 NVSwitch 模块,共128个 NVLink 端口,对外提供32个 OSFP cages,即每个 OSFP 对内连接4个 NVLink 端口(共计100GB/s单向带宽)。服务器内部的4个 NVSwitch 模块共计 8*18=144条 NVLink 链路对内下联到8块 GPU,对外以 2:1 比例,也就是72条 NVLink 链路上联。这72条 NVLink 链路在服务器内部分别由4个 NVSwitch 模块以 4 OSFP/4 OSFP/5 OSFP/5 OSFP 的方式与18台 L2 NVSwitches 互联,所以18台 L2 NVSwitches 也被以 4/4/5/5 的方式分成了4组,每组分别与服务器内部对应顺序的 NVSwitch 模块提供的 NVLink 端口通过 OSFP 进行连接。
Q:NVLink 交换机是如何与 NDR IB Switch 连接的?我知道32台 DGX H100 服务器使用 NVLink Switch 进行互连,那么1K DGX 100 服务器应该使用 NDR IB Switch。但我不清楚 NVLink 交换机和 NDR Switch 之间的连接情况,谢谢。
A:NVSwitch 和 IB Switch 是两个独立的单元,在32个 DGX H100 服务器 内(既一个 Scalable Unit 内),GPU 直接通信会基于 NCCL 优选 NVLink Scalable Unit 之间则通过带宽最高的 IB 网络进行通信互联。
Q:NVIDIA EOS 系统中,如何理解 bisection 带宽 230TB/s?这个指标的意义代表什么?
A:在 All-To-All 场景中,每一个 GPU 需要向其他的 GPU 同时发送数据。对于这个性能的衡量,使用的指标是 bisection。它计算的是网络中一半的节点向另一半节点发送数据时网络的带宽。
这种情况下是一个网络能够做到的最大的无阻塞的流量,因为所有的通信都是1:1,所以不会产生拥塞,导致触发流控,从而导致带宽降低。其他任何情况都不会超过这个值。
1个 HGX H100 节点内部,通过 NVLink NVSwitch 互联
- 8 / 2 * 900GB/s = 3600 GB/s
1 SU 内 32 个 HGX H100 节点,NVLink 网络收敛比 2:1
- 32*8 / 2 / 2 * 900GB/s = 57 600 GB/s
4 SU SU 之间通过 8* NDR 400Gb/s 网络互联
- (4*32*8)/8/2*400Gb/s = 25 600 GB/s (single direction)
18 SU 之间同理 4SU 直接换算方式:
- (18*32*8)/8/2*400Gb/s = 115.2 TB/s * 2 = 230TB/s (bi-direction)
Q:不同的硬件架构,X86 GPU,Grace Hopper,NVLink scale out,对于人工智能训练有什么区别。
A:Grace 是基于 ARM 架构的 CPU,支持标准的 ARM 指令集。
对于 AI training 的业务场景,客户会直接基于相关的上层 AI 框架(TensorFlow,Pytorch)进行训练,底层调取相关的基础 API/SDK。
基于 ARM NVIDIA 会逐步,完全支持相关的软件栈,如 GPU Driver, CUDA,cuDNN,TRT 等,所以对于用户来讲 x86/Grace GPU,如果底层 GPU API/SDK 和 上层 AI 框架,TensorFlow,Pytorch 都支持,对于用户业务层则无变化。
通信层,AI 框架会调取 NCCL 来进行分布式训练,NCCL 基于 IB 或 NVLink 实现,会选取最优链路,对用户和框架层也是透明的。
Q:FP8 的指数用了多少位?精度用了多少位?是否有更多细节可以分享?如何在训练和推理中采用 FP8?
A:FP8 有两种类型:E5M2 和 E4M3。
E5M2 为 5 位指数 2 位尾数。
E4M3 为 4 位指数 3 位尾数。
在目前的训练中,
E4M3 需要用于前向传递/推理(2 位尾数对某些网络来说不够)。
E5M2 需要用于某些网络的梯度张量(E4 动态范围不够宽)。
Q:SDK、工具和框架如何支持 FP8?
A:FP8 是一种数据类型,在未来的版本中,cuDNN、cublas 将支持 FP8。它还将通过 NeMo 和 Apex等 NLP 工具包提供。
Q:FP8 适合什么样的应用场景?
A:许多流行的架构,如 CNN、RNN 和 Transformers,都可以使用 FP8 训练程序实现类似的精度。
Q:与 INT8 相比,FP8 的优势是什么?
A:FP8 有两种常见的优势:
a) 对于一些模型的推理,INT8 与 QAT 量化方法不能保持准确性。
b) 训练加速。
Q:Transformer Engine 是否一定要使用 FP8 和 FP16?可以使用 FP16 或 FP32 吗?
A:是的。它计算张量的历史范围,并应用每个张量的比例来保持层的精度。这个过程对于 FP16/FP32 来说是不需要的,因为在一般的混合精度中,只需要损失张量的全局尺度就可以做损失缩放。
Q:能否介绍更多关于 Hopper GPU TEE 的信息?
A:关于使用 GPU 进行机密计算,Azure 是第一个在 A100 GPU 上支持 CC 的公有云厂商。
他们有一个关于 GTC 的演讲:Azure 中的机密计算,你可以了解更多细节和演示。
本演讲介绍了在NVIDIA GPU中实现机密计算的五个步骤:
1. 隔离租户的虚拟机
- SEV-SNP 使用虚拟机特定的加密密钥对虚拟机内存进行加密。
2. 隔离GPU内存
- 阻止 MMIO 从主机和其他 GPU 访问 GPU 内存和安全敏感配置。
- 阻止来自 GPU 引擎的出站访问,除非经过加密 。
3. 验证 GPU 状态
- 利用 NVIDIA 认可的特定设备私钥提供硬件信任根。
- HW RoT 测量设备状态、固件状态,并生成由设备特定密钥签署的证明报告。
- 客人应用程序和 GPU 驱动程序可获得证明。
4. 安全密钥交换
- GPU 驱动验证证明。
- 硬件信任根和 GPU 驱动之间的 SPDM 支持的 Diffie-Hellman 密钥交换。
5. 数据传输加密
- 从虚拟机到 GPU 的内存传输由驱动器加密,然后由 GPU 解密到 HBM 内存。
- 从 GPU 到 VM 的内存传输由 GPU 加密,然后由驱动解密到 VM 中。
Q:H100 CUDA Core FP64 算力是3 0TFlops 相比 A100 H100 对传统 HPC 应用的加速多少倍?
A:HPC 应用的范围涵盖很广,通常涉及使用 FP64,采用 FFT 等。在基因组测序中,它还使用了几种动态编程算法,如 Smith-Waterman。在 Hopper 中,FFT 可以受益于块状集群和 sm-to-sm 网络,而 Smith-Waterman 可以受益于 DPX 指令。总的来说,FP64 CUDA 核心和 TensorCore 将为 HPC 应用中的 FP64 内核提供良好的扩展性。
Q:DPX 是如何完成工作的?与现有的有什么不同?
A:如何加速:
这些新指令为许多 DP 算法的内环提供高级融合操作数支持。这将大大加快疾病诊断、物流路线优化甚至图形分析解决方案的速度。
有何差异:
H100 引入了 DPX 指令来加速动态编程的性能。与安培 GPU 相比,算法提高了7倍。
Q:如何将以前的代码改为新的编程层次,包括线程、线程块、线程块集群和网格?如果不改变,对性能有影响吗?
A:CUDA 通过 Cooperative Group API 公开集群。因此,如果您已经在使用Cooperative Group API,那么应该更容易更改。此外,一些 CUDA LIB(至少是cuDNN)已经在使用协作 API,因此对于基于上层 LIB / 框架的应用程序,将直接且透明地受益于 LIB / 框架。线程块集群带来了更多线程和更大共享内存的协同执行,产生了更高的性能。
Q:引用自 GTC “通过 ConnectX-7 连接到 NVIDIA QuanguM-2 英伟达交换机,DGX 超级 POP 可以用更少的交换机和电缆来构建,节省数据中心基础设施上的CAPEX 和 OPEX。”除了节约成本外,从性能角度来看,是否有升级到 ConnectX-7的用例/必要性?
A:ConnectX-7 提供 400G 带宽,是 ConnectX-6 的两倍。NDR IB 交换机支持32 SHARP trees。它可以支持更多的网络计算实例。
Q:Hopper MIG 中是否已经包含 vCS 功能,即云业务提供商是否可以直接将 Hopper MIG 实例出售给多个客户,而无需单独购买 vCS 许可证?
A:MIG 和 Grid 是2个独立的功能,可以协同工作,为云客户提供 MIG 实例,vCS 属于 Grid,需要许可。
Q:NVIDIA AI Enterprise 的研讨会和课程有哪些?
"为开发人员、数据科学家和IT专业人士提供企业培训服务。每购买10个许可证,企业版用户就可以获得一个教师指导的研讨会席位和两个自定进度的课程。"
A:以下是 DLI 研讨会和课程,优惠有效期为 2022年3月21日至9月20日(6个月)。该优惠包括,每购买10个 NVIDIA AI 企业许可证,就可以获得一个 教师指导的研讨会席位*(价值500美元)和 两个自学课程*(每个价值90美元)。
*“教师指导研讨会席位":是指一个人在固定日期参加一个 DLI 公开的教师指导研讨会。
* 中国公开研讨会的时间表定于4月发布,第一个研讨会将于5月下旬举行。
*"两门自学课程":客户将获得两张90美元的优惠券,可用于免费学习两门 DLI 在线自学的90美元课程。
* 详情请参考优惠指南。
Q:NVIDIA morpheus - 运行 Morpheus 需要什么硬件,ConnectX NIC 是否能够满足需求?是否一定需要 BlueFiled DPU?
A:并不是必须,但推荐使用 Bluefield DPU,主要优势:offload host CPU 的运算负载;可以使用 DOCA 软件栈中已经实现的 Telemetry 服务。
Morpheus 参考实施方案是使用带有英伟达 GPU 的英伟达认证服务器构建的,并运行RAPIDS 数据分析框架、Triton 推理和底层 CUDA 加速库。该参考实现方案可选择使用英伟达 BlueField DPU 和 DOCA 遥测接口,以收集应用程序和网络遥测数据并将其流向 Morpheus AI 框架。
如果不用 BlueFiled DPU,用户使用的软件、硬件可以把关注的 Telemetry 信息导入morpheus 就可以。在 DOCA 里面 NVIDIA 开发了 Telemetry 的框架,DOCA 运行在 BlueFiled DPU 上但不能运行在 ConnectX NIC 上的。如需在 ConnectX 上运行 Telemetry,需要客户自己开发。
Telemetry 是新一代从设备上远程高速采集数据的网络监控技术,设备通过 “推模式(Push Mode)” 周期性地主动向采集器上送设备信息,提供更实时、更高速、更精确的网络监控功能。Telemetry 使用 GoogleProtocol Buffer 格式编码,并通过 gRPC协议传输数据。
Q:对于 cuOPT 目前有哪些应用场景和成果?
A:
● CUOPT: RAPIDS 与启发式算法结合,更快地解析大数据,实时优化车辆路线规划和物流
● 适用行业运输、仓储、制造、零售和快餐店。
● 应用路线优化: 动态路线优化使用先进的算法,为调度员和驾驶员提供路线,
降低里程数、燃料成本、CO2 排放量和空闲时间。
物流配送公司可以获得有关路况、交通数据和路线建议的实时反馈,以建立更准确的到货时间预测。
针对限制条件的优化: 对具有有限容量以及不同成本的运输工具,进行移动情况建模。
例如新鲜农产品等商品必须由配有冷藏设备的卡车运输,或者有的客户只能在特定时段接收货物。
仓库拣货: 在拣货和包装流程中实现自动化存储和检索,从而在收到新订单时动态规划和重新规划机器人路线,高效地将货物装载到卡车上。
● 主要的客户价值:
♦ 快速优化 – 将发出1000个包裹的时间由20分钟提升至10秒(120倍)。
♦ 世界纪录的准确性 - 实现世界上最好的结果 规模扩大到10000个地点,在 Gehring & Homberger 基准的190/300实例上。
♦ 最大的规模 - 动态地重新运行模型,并在SLA时间限制内根据变化进行调整。
♦ 节省数百万 - 通过动态重路减少成本达15%。
Q:介绍一下 Modulus?
A:Modulus 是一个独立于 Omniverse 的框架,属于 Accelerated computing / High Performance Computing 系列 Framework 软件,它提供了一个基于 CLI 的工作流来训练物理ML模型并进行推理。用户需要使用后处理应用程序来可视化结果,比如 Paraview。Modulus 也可以作为 Omniverse 生态系统的一部分,将作为 OV 应用程序提供,由 Omniverse 为 Modulus 提供交互式可视化后处理。
Q:Omniverse Cloud 是公有云吗?它是否只适用于 Omniverse 协作工作,如 NV GeForce NOW?应用什么操作系统?Win10 还是 Linux?
A:Omniverse Cloud 是 NVIDIA 自己运营的面向个人创作者、艺术家、设计师的云服务平台,Omniverse Cloud 包括:Nucleus Cloud(一键协作共享服务),通过 GeForce NOW 串流提供的Create、View streaming服务),方便创作者在不同地方进行工作,不必受限于自己的工作电脑。目前,Omniverse Cloud 完整功能仍在开发中,现在处于早期访问阶段(不适用中国大陆地区),具体订阅价格也未公布。
Q:OVX 是 ubuntu 操作系统。因此,客户无法使用一些依赖 Win10 操作系统的应用程序,如 OV Create、OV Audio2F 等。所以 OVX 是否只适用于基于 Isaac Sim 的数字孪生?
A:OVX 是由 NVIDIA 定义的用来运行 OVE 的硬件系统,可以是单个服务器系统,也可以是一个数据中心规模的计算系统,目标是为基于 Omniverse 模拟大规模实时工业数字孪生提供算力支持。OVX 不会像 DGX 产品那样由 NV 定制和销售,而是由OEM 合作伙伴制造和销售,在中国目前认证两家合作伙伴是浪潮和联想。客户可以今年第二季度通过通过浪潮、联想始购买 OVX 服务器。OVX SuperPOD 的架构堆栈将于今年晚些时候提供。
Q:Omniverse 可以从 RTX PC 扩展到超算系统
A:1. 连接到托管 Omniverse Nucleus 的云平台上解决用户端 RTX PC 性能不足问题
2.工业级数字孪生,实时仿真需要专门构建新型计算机
3. 科学计算数字孪生 E2 HPC
Q:是否有西门子 Modulus Omniverse 的风电场数字孪生案例的详细资料?
A:推荐观看 GTC 相关 session,以下 session 供参考:
Developing Digital Twins for Weather Climate and Energy [S41823]
Case Study on Developing Digital Twins for the Power Industry using Modulus and Omniverse [S41671]
Q:是否有 NVIDIA OVX SUPERPOD 整体方案的详细配置和 reference architecture 方案? (计算 存储 网络等)
A:OVX SUPERPOD 由一个或多个 OVX SU(Scalable Unit)、网路系统、存储系统、控制节点和 OVX 软件栈组成。
每个 SU 包含 32 台 OVX 服务器,OVX 服务器的配置是固定的,有两个 OEM 供应商可供选择,分别是浪潮和联想。对于规模比 OVX SUPERPOD 小的需求,我们可以提供OVX POD,OVX POD 可以由 8 台或者 16 台 OVX 服务器构成。
OVX SUPERPOD 网络系统可以分为两个情况。对于单 个SU 或者 OVX POD 的用户,只需要一对 Spectrum-3 4600 series 交换机就能够满足需求。对于多个 SU 构成的大型 SUPERPOD 用户,整个网络系统由多套 TOR 交换机和 SPINE 交换机构成,这些交换机的型号都是 Spectrum-3 4600 series ,我们会提供详细的网络设计方案帮助用户确定交换机的具体数量。其中使用的光纤网络线缆,我们推荐使用 NVIDIA 原厂线缆;当然我们也会提供兼容列表和详细技术规范,方便用户选购第三方光纤网络线缆。
存储系统,我们推荐使用 DDN AI400X 存储系统。该存储系统一般由多个存储节点组成,我们要求每个 SU 至少配置 250TB 存储空间和一个存储节点;如果对存储容量和性能有额外要求,请和 DDN 沟通。
控制节点,我们将提供 CPU 控制节点 /Nucleus 服务器的推荐硬件配置,用户可以基于此配置选购合适的服务器型号。
OVX 软件栈主要由 NVIDIA Base Command和NVIDIA Omniverse Enterprise 构成。我们会依据 OVX SuperPOD 的硬件配置来制定各个模块的软件授权数量,具体配置方案需要和 NV 的技术人员/销售沟通。
Q:NVIDIA 是否有计划支持容器直接安装 vGPU?
A:vGPU 产品及开发 t 没有此计划,NVIDIA vGPU 产品是以 hypervisor/VM 为前提的。
*本文转自 NVIDIA英伟达