作为 Volta 体系结构的后续产品,Turing 是 NVIDIA® 公司最新的 NVIDIA 系列 GPU。目前提供有 GeForce® 系列的 Turing™ GPU,可用于渲染高度逼真的游戏,并且也提供有 Quadro® 系列的 GPU,可加速内容创建工作流程。NVIDIA® Tesla® 系列旨在处理数据中心中的人工智能系统和高性能计算 (HPC) 工作负载。NVIDIA® Tesla® T4 是目前市场上唯一采用 Turing™ 微体系结构的服务器级 GPU,并且受到 Dell EMC PowerEdge R640、R740、R740xd 和 R7425 服务器支持。本博客将新的 Tesla T4 与最新的 Volta V100-PCIe 相比较,讨论它们在 PowerEdge R740 服务器上用于不同 HPC 应用程序(包括 HOOMD-blue、Amber、NAMD 和 HPL)时的性能。
PowerEdge R740 服务器是基于 2U 英特尔® Skylake 的机架安装服务器,在存储、I/O 和加速器支持之间达到理想的平衡。在 x16 PCIe 3.0 插槽中,它最多支持四个*单插槽 T4 或三个双插槽宽度的 V100-PCIe GPU。 表 1 说明了单个 T4 与 V100 之间的差异。Volta™ V100 提供 16GB 或 32GB 内存配置。 由于 T4 仅提供 16 GB 版本,因此我们使用具有 16 GB 内存的 V100 卡来提供比较的性能结果。表 2 列出测试平台的硬件和软件详细信息。
表 1:T4 和 V100 之间的比较
Tesla V100-PCIe |
Tesla T4 |
|
---|---|---|
体系结构 |
Volta |
Turing |
CUDA 核心 |
5120 |
2560 |
张量核心 |
640 |
320 |
计算能力 |
7.0 |
7.5 |
GPU 核心频率 |
1245 MHz |
585 MHz |
动态提升频率 |
1380 MHz |
1590 MHz |
内存类型 |
HBM2 |
GDDR6 |
内存总线 |
4096 位 |
256 位 |
带宽 |
900 GB/s |
320 GB/s |
插槽宽度 |
双插槽 |
单插槽 |
FP32 单精度 |
14 TFLOPS |
8.1 TFLOPS |
混合精度 (FP16/FP32) |
112 TFLOPS |
65 TFLOPS |
FP64 双精度 |
7 TFLOPS |
254.4 GFLOPS |
TDP |
250 W |
70 W |
(表 2):R740 配置和软件版本的详细信息
处理器 |
2 个英特尔® 至强® Gold 6136 @ 3.0 GHz, 12c |
---|---|
内存 |
384 G (12*32 G@2666 MHz) |
本地磁盘 |
480 G SSD |
操作系统 |
Red Hat Enterprise Linux Server 发行版 7.5 |
GPU |
3 个 V100-PCIe 16 GB 或 4 个 T4 16 GB |
CUDA 驱动程序 |
410.66 |
CUDA 工具包 |
10.0 |
处理器设置 > 逻辑处理器 |
已禁用 |
系统配置文件 |
性能 |
HPL |
使用 CUDA10.0 进行编译 |
NAMD |
NAMD_Git-2019-02-11 |
琥珀色 |
18.12 |
HOOMD-blue |
v2.5.0 |
OpenMPI |
4.0.0 |
图 1:在 PowerEdge R740 服务器上采用 V100 和 T4 的情况下的 HOOMD-blue 单精度和双精度性能结果
HOOMD-blue(表示 Highly Optimized Object-oriented Many-particle Dynamics - blue)是一种通用的分子动力学模拟器。默认情况下,HOOMD-blue 以双精度 (FP64) 进行编译,而版本 2.5 提供参数 SINGLE_PRECISION=ON,强制以单精度 (FP32) 进行编译。图 1 显示单精度和双精度的微球数据集结果。x 轴是 GPU 的数量,性能指标是运行 10e6 步所需的小时数。
一个观察结果是,T4 的 FP64 性能相对较低。这是由于硬件限制所致。理论上,T4 可以以双精度提供 254 GFLOPS(请参阅表 1)的峰值性能,而 V100 要比这好约 27 倍。但是,可以以单精度进行编译和运行的 HOOMD-blue 之类应用程序的性能可以通过 FP32 编译选项获得性能优势。HOOMD-blue 社区已考虑我们关于在所有 HOOMD-blue 模块上支持混合精度的建议。一旦工作完成,HOOMD-blue 可以更好地利用混合精度支持的硬件。
比较 T4 和 V100 的单精度性能,我们注意到 V100 比 T4 好 3 倍。由于 CUDA 核心数量和加速器的额定功率,预计 T4 会有这种性能。
PowerEdge R740 服务器中的 GPU 通过 PCIe 进行连接。对于三个 V100 GPU 数据点,由于对等通信,PCIe 总线已饱和。这会影响整体性能,从而产生与一个 GPU 相同的性能。
Amber 是一套程序的总称,它允许用户执行分子动力学模拟,尤其是在生物分子上的模拟。术语“Amber”也用来指在这个套件中实现的经验力场。带有 AmberTools 18.13 的 Amber 版本 18.12 使用 Amber 18 基准套件进行测试,该套件包括 JAC、纤维素、FactorIX、STMV、TRPCage、肌红蛋白和核小体数据集。
图 2:在 PowerEdge R740 服务器上采用 V100 和 T4 的情况下的 Amber 显式溶剂结果
图 3:在 PowerEdge R740 服务器上采用 V100 和 T4 的情况下的 Amber 隐式溶剂结果
图 2 和图 3 分别关于显示显式溶剂和隐式溶剂的单卡和全系统性能数字。 上图中的数据点“系统”表示所有 GPU 的全系统总吞吐量。PowerEdge R740 服务器支持三个 V100 或四个 T4,因此红色和蓝色的“系统”条是三个 V100 或四个 T4 的结果。
首选多个 GPU 卡的聚合数据的原因是,对于 Amber 应用程序,Pascal 和更高版本的 GPU 不会超出单个加速器的范围。用户通常在其他 GPU 上并行运行多个模拟。对于像 STMV(1,067,095 个原子)这样的大型数据集,单个 T4 的性能是 V100 的 33%,整个系统的性能是 V100 的 44%。V100 适用于较大的 PME 运行,像 TRPCage(仅 304 个原子)这样的数据集太小,以致无法有效地使用 V100,因此 V100 的性能并不比 T4 快多少。根据 Amber 官方网站上的结果,几乎所有 GPU 的数量都比仅 CPU 的运行速度快 3 到 4 倍,因此在处理小数据集的服务器上使用 T4 卡将是不错的选项。
图 4:在 PowerEdge R740 服务器上采用 V100 和 T4 的情况下的 NAMD 性能结果
NAMD 是为大型生物分子系统的高性能模拟而设计的分子动力学代码。在这些测试中,未使用预建的二进制文件。相反,NAMD 是用最新源代码 (NAMD_Git-2019-02-11) 和 CUDA 10.0 构建而成。为获得最佳性能,NAMD 使用英特尔® 编译器和库(版本 2018u3)进行编译。图 4 使用 STMV 数据集(1,066,628 个原子,周期性,PME)绘制性能结果。NAMD 不能扩展到超过一个 V100 卡,而它可以使用三个 T4 卡进行出色地扩展。单个 T4 GPU 提供了 V100 性能的 42%。考虑到它只有 V100 TDP 的 28%,这是一个不错的数字。对于电力和冷却能力有限的数据中心,T4 可能是一个选择。
图 5:在 PowerEdge R740 服务器上采用 V100 和 T4 的情况下的 HPL 结果
图 5 显示采用多个 V100 或 T4 GPU 的 PowerEdge R740 上的 HPL 性能。正如预期的那样,在具有多个 GPU 的情况下,HPL 数字在 V100 和 T4 上具有很好的伸缩性。但是,由于 FP64 限制,T4 性能显著低于 V100。由于 T4 的双精度能力有限,它与 V100 的性能比较并不理想,Volta V100 仍然是这种双精度应用的最佳选择。
在此博客中,在 Dell EMC PowerEdge R740 上的 V100 和 T4 之间比较了具有 HOOMD-blue、Amber、NAMD 和 HPL 的 HPC 应用程序性能。T4 不仅用于深度学习推理,而且有利于具有单精度或混合精度支持的 HPC 应用程序。其低 TDP 可以帮助提高电源和冷却能力有限的传统数据中心的运行速度。T4 的 PCIe 体积小巧,非常适合更通用的 PowerEdge 服务器。将来,计划对更多应用程序(例如,RELION、GROMACS 和 LAMMPS)进行附加测试,以及针对可以利用混合精度的应用程序进行测试。
*免责声明:为了进行基准测试,对 Dell PowerEdge R740 中的四个 T4 GPU 进行了评估。当前,根据官方声明,PowerEdge R740 在 x16 PCIe 插槽中最多支持三个 T4。