Gpu资源测试通用报告

2024-01-09
9分钟阅读时长

一、通用计算性能测试

1.测试目的

  • 验证 CUDA ⼯具包是否可以正确安装和配置

  • 检查 CUDA 可以访 问的 GPU 设备的数量

  • 计算能⼒、核⼼数量、内存带宽等硬件规格信息,以及它们是否能正常⼯作,确保系统硬件配置的稳定性

2.环境配置

  • NVIDIA A100-SXM4-40GB *8

  • NVIDIA 驱动 535.129.03

  • CUDA 11.8

  • nvidia-fabricmanager服务

3.测试工具

deviceQuery,cuda ⼯具包中 samples/1_Utilities/deviceQuery

项目主页NVIDIA/cuda-samples: Samples for CUDA Developers which demonstrates features in CUDA Toolkit (github.com)

4.测试过程

# 下载samples项目
git clone https://github.moeyy.xyz/https://github.com/NVIDIA/cuda-samples.git
# 编译deviceQuery
cd cuda-samples/Samples/1_Utilities/deviceQuery && make
# 执行deviceQuery
./deviceQuery

5.测试结果

属性
设备 NVIDIA A100-SXM4-40GB
CUDA驱动版本 / 运行时版本 11.8/11.8
CUDA主/次版本号 8.0
全局内存总量 40339 MBytes (42298834944 bytes)
多处理器数量,CUDA核心/多处理器 (108) Multiprocessors, (064) CUDA Cores/MP: 6912 CUDA Cores
GPU最大时钟频率 1410 MHz (1.41 GHz)
内存时钟频率 1215 Mhz
内存总线宽度 5120-bit
L2缓存大小 41943040 bytes
最大纹理维度尺寸 (x,y,z) 1D=(131072), 2D=(131072, 65536), 3D=(16384, 16384, 16384)
最大分层1D纹理尺寸,(num) layers 1D=(32768), 2048 layers
最大分层2D纹理尺寸,(num) layers 2D=(32768, 32768), 2048 layers
常量内存总量 65536 bytes
每块的共享内存总量 49152 bytes
每个多处理器的共享内存总量 167936 bytes
每块可用的寄存器总量 65536
线程束大小 32
每个多处理器的最大线程数 2048
每个块的最大线程数 1024
线程块的最大尺寸 (x,y,z) (1024, 1024, 64)
网格尺寸的最大尺寸 (x,y,z) (2147483647, 65535, 65535)
最大内存间距 2147483647 bytes
纹理对齐 512 bytes
并行复制和内核执行 Yes with 3 copy engine(s)
内核运行时限制 No
集成GPU共享主机内存 No
支持主机页锁定内存映射 Yes
表面对齐要求 Yes
设备支持ECC Enabled
设备支持统一寻址 (UVA) Yes
设备支持受管内存 Yes
设备支持计算抢占 Yes
支持协作内核启动 Yes
支持多设备协作内核启动 Yes
设备PCI域ID / 总线ID / 位置ID 0 / 207 / 0

6.测试结论

当前环境,NVIDIA驱动、CUDA工具包、nvlink服务均已正常安装和配置,系统硬件配置稳定

二、GPU显存带宽测试

1.测试目的

测试主机到GPU设备、GPU设备到主机、以及设备到设备之间的数据传输速度,可用于评估GPU设备与主机之间的带宽,以及用于优化GPU计算应用程序的数据传输性能

2.环境配置

  • 显卡规格:NVIDIA A100-SXM4-40GB *8
  • CUDA版本:11.7
  • NVIDIA驱动版本:525.125.06
  • nvidia-fabricmanager服务

3.测试工具

NVIDIA官方提供的命令行工具bandwidthTest

4.测试过程

cd cuda-samples/Samples/1_Utilities/bandwidthTest/
make
./bandwidthTest

5.测试结果

Transfer Direction Transfer Size (Bytes) Bandwidth (GB/s)
Host to Device 32000000 25.2
Device to Host 32000000 26.3
Device to Device 32000000 1154.8

测试主机到设备、设备到主机、设备到设备的带宽峰值值如上表所示,一般以 GB/s 为单位,该值越高则说明设备和主机之间的数据传输速度越快,系统整体带宽性能越好。其中设备到设备的速度测试实际测试内容为当前GPU的显存性能。

6.测试结论

数据传输的大小32000000 Bytes, A100 GPU主机到设备,设备到主机,设备与设备的显存带宽均低于理论封值,主机到设备、设备到主机影响参数太多,没有理论峰值速度。其中设备到设备的带宽A100 40GB SXM4显卡的理论显存带宽为1555 GB/s,实际测试仅有1154.8GB/s,设备到设备数据传输速度比官方理论峰值低25.79%。(实际带宽会受到多种因素的影响,比如说系统架构和配置、数据传输类型、驱动程序和其他软件等,所以实际带宽都会低于理论峰值)

三、GPU之间的P2P带宽和延迟测试

1.测试目的

评估两个GPU之间的连接性能,包括带宽和延迟,从而评估GPU之间的数据传输性能。在多GPU并行计算中,GPU之间的高速数据传输是保证计算性能的重要因素,因此评估GPU之间连接性能是非常重要的。

测试子项说明:

测试项 含义 详细说明
P2P Connectivity Matrix P2P 连接矩阵 显示 GPU 之间是否支持 P2P 通信。矩阵中的值 1 表示两个 GPU 之间可以直接进行 P2P 数据传输,0 表示不支持(通常会回退到通过主机内存的常规复制方式)。例如,D\D 0 1 表示 GPU0 到 GPU1 的 P2P 连接状态。
Unidirectional P2P=Disabled Bandwidth Matrix (GB/s) 单向 P2P 禁用带宽矩阵(GB/s) 测量在禁用 P2P 的情况下,GPU 之间的单向数据传输带宽(以 GB/s 为单位)。数据传输通过主机内存(CPU 内存)进行,通常带宽较低,因为需要经过 PCIe 或 QPI 链路。矩阵中的对角线值(如 GPU0 到 GPU0)表示同一 GPU 内的内存拷贝带宽,通常远高于跨 GPU 的值。
Unidirectional P2P=Enabled Bandwidth (P2P Writes) Matrix (GB/s) 单向 P2P 启用带宽矩阵(P2P 写,GB/s) 测量在启用 P2P 的情况下,GPU 之间的单向数据传输带宽(以 GB/s 为单位)。数据直接通过 PCIe 或 NVLink 从一个 GPU 内存写入另一个 GPU 内存。对角线值同样表示同一 GPU 内的拷贝带宽,非对角线值反映 P2P 传输性能,NVLink 通常比 PCIe 提供更高带宽(例如,NVLink 可达 ~35 GB/s,PCIe 约 10-20 GB/s)。
Unidirectional P2P=Enabled Bandwidth (P2P Reads) Matrix (GB/s) 单向 P2P 启用带宽矩阵(P2P 读,GB/s) 类似于 P2P Writes,但测量的是从一个 GPU 内存读取数据到另一个 GPU 内存的带宽。某些系统可能在读写方向上的性能略有差异,具体取决于硬件拓扑和驱动配置。
Bidirectional P2P=Disabled Bandwidth Matrix (GB/s) 双向 P2P 禁用带宽矩阵(GB/s) 测量在禁用 P2P 的情况下,GPU 之间同时进行双向数据传输(读和写)的带宽。数据通过主机内存传输,带宽通常比单向传输略高,但仍受限于 PCIe 或 QPI 链路。
Bidirectional P2P=Enabled Bandwidth Matrix (GB/s) 双向 P2P 启用带宽矩阵(GB/s) 测量在启用 P2P 的情况下,GPU 之间同时进行双向数据传输的带宽。NVLink 或优化的 PCIe 配置(如 PLX 交换机)可能显著提高双向带宽,接近理论最大值(例如,PCIe Gen 3.0 x16 理论最大值为 32 GB/s)。
P2P=Disabled Latency Matrix (us) P2P 禁用延迟矩阵(微秒) 测量在禁用 P2P 的情况下,GPU 之间的数据传输延迟(以微秒为单位)。延迟通常较高,因为数据需要通过主机内存和 PCIe 总线传输。对角线值表示同一 GPU 内的延迟,通常最低(约 1-2 微秒)。
P2P=Enabled Latency (P2P Writes) Matrix (us) P2P 启用延迟矩阵(P2P 写,微秒) 测量在启用 P2P 的情况下,GPU 之间的数据传输延迟。启用 P2P(尤其是通过 NVLink)通常显著降低延迟(例如,NVLink 延迟约 1-2 微秒,PCIe 延迟约 10-20 微秒)。异常高延迟(如 49354 微秒)可能表明 P2P 配置失败或硬件拓扑问题。
CPU Latency (us) CPU 延迟(微秒) 表示从 CPU 到 GPU 的数据传输延迟,反映主机到设备(Host-to-Device)或设备到主机(Device-to-Host)的通信时间。CPU 延迟通常高于 GPU 间的 P2P 延迟,因为涉及 CPU 内存和 PCIe 总线。某些情况下,CPU 延迟可能与 GPU 延迟相近,具体取决于硬件配置(如 NVLink 或 PCIe 版本)。

2.环境配置

  • 显卡规格:NVIDIA A100-SXM4-40GB *8
  • CUDA版本:11.7
  • NVIDIA驱动版本:525.125.06
  • nvidia-fabricmanager服务

3.测试工具

NVIDIA官方提供的命令行工具p2pBandwidthLatencyTest

4.测试过程

cd cuda-samples/Samples/5_Domain_Specific/p2pBandwidthLatencyTest
make
./p2pBandwidthLatencyTest

5.测试结果

(1)P2P Connectivity Matrix

D\D 0 1 2 3 4 5 6 7
0 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1
2 1 1 1 1 1 1 1 1
3 1 1 1 1 1 1 1 1
4 1 1 1 1 1 1 1 1
5 1 1 1 1 1 1 1 1
6 1 1 1 1 1 1 1 1
7 1 1 1 1 1 1 1 1

(2)Unidirectional P2P=Disabled Bandwidth Matrix (GB/s)

D\D 0 1 2 3 4 5 6 7
0 1274.47 17.87 12.43 12.42 20.61 20.78 20.84 20.88
1 17.88 1284.95 12.43 12.42 20.43 20.35 20.90 20.87
2 12.55 12.55 1283.89 8.30 12.61 12.61 12.61 12.59
3 12.55 12.55 8.34 1287.07 12.61 12.60 12.60 12.59
4 20.59 20.59 12.49 12.48 1289.19 17.90 20.83 20.93
5 20.57 20.84 12.49 12.48 17.93 1292.39 20.82 20.97
6 20.42 20.66 12.49 12.48 20.89 20.91 1292.39 18.29
7 20.51 20.42 12.49 12.48 20.84 20.91 17.84 1291.32

(3)Unidirectional P2P=Enabled Bandwidth (P2P Writes) Matrix (GB/s)

D\D 0 1 2 3 4 5 6 7
0 1286.01 273.08 274.19 274.89 275.20 272.64 275.20 274.49
1 273.70 1299.92 275.18 274.67 274.69 273.92 274.49 274.47
2 273.39 275.27 1296.68 274.91 274.99 275.08 274.38 274.87
3 274.09 274.91 275.01 1305.35 275.47 274.04 273.62 274.99
4 274.19 275.08 274.51 275.49 1307.53 275.92 274.70 274.86
5 274.70 275.66 273.96 274.52 275.54 1301.00 275.40 275.30
6 275.15 275.18 275.02 275.18 275.61 275.45 1305.35 272.18
7 275.18 275.59 271.25 275.15 274.13 272.81 275.40 1304.26

2个GPU间单向带宽是270GB左右

(4)Bidirectional P2P=Disabled Bandwidth Matrix (GB/s)

D\D 0 1 2 3 4 5 6 7
0 1306.98 19.76 14.34 14.38 28.89 29.44 29.36 29.27
1 19.89 1313.58 14.38 14.38 29.01 29.02 29.08 29.30
2 15.51 15.48 1312.47 9.46 15.55 15.56 15.54 15.52
3 15.58 15.57 9.50 1314.68 15.57 15.58 15.56 15.52
4 28.57 28.94 14.38 14.41 1313.03 19.85 28.45 28.88
5 28.54 28.51 14.38 14.39 19.89 1314.13 28.48 28.92
6 28.58 28.94 14.37 14.42 28.67 28.69 1313.58 20.08
7 28.59 28.78 14.38 14.37 29.33 29.47 20.03 1313.03

(5)Bidirectional P2P=Enabled Bandwidth Matrix (GB/s)

D\D 0 1 2 3 4 5 6 7
0 1306.44 447.94 445.13 445.26 445.11 445.49 444.36 445.00
1 447.30 1308.08 445.13 444.88 444.86 444.99 444.86 445.67
2 446.70 446.94 1318.57 518.03 519.71 519.37 517.66 521.20
3 446.82 447.00 516.49 1313.58 519.53 518.34 518.85 520.45
4 446.26 447.03 443.35 444.35 1306.98 445.26 444.25 445.64
5 446.91 447.17 519.05 518.19 447.30 1320.79 520.11 519.59
6 446.25 447.70 519.22 520.07 446.45 518.22 1313.58 519.59
7 447.20 447.32 517.28 519.74 447.47 519.08 518.39 1311.37

2个GPU间双向带宽400GB左右

(6)P2P=Disabled Latency Matrix (us)

GPU 0 1 2 3 4 5 6 7
0 3.01 21.49 21.51 21.51 21.56 20.20 18.86 21.56
1 21.60 2.90 21.58 21.57 21.70 21.56 21.47 21.57
2 21.51 21.46 2.70 21.57 18.33 18.83 21.40 20.60
3 21.42 21.37 21.56 2.55 16.51 21.59 17.95 21.14
4 21.55 21.48 21.55 21.71 3.00 21.46 21.46 21.46
5 21.53 20.64 21.48 21.56 21.55 2.64 21.39 21.28
6 21.49 21.54 21.59 21.59 21.57 21.44 2.54 21.46
7 21.75 21.56 21.67 21.58 21.45 21.15 21.57 2.66
CPU 0 1 2 3 4 5 6 7
0 3.01 8.01 7.93 7.84 8.23 7.04 7.11 8.24
1 7.98 2.97 7.96 7.90 8.21 7.08 7.13 8.24
2 7.83 7.88 3.02 7.89 8.19 7.12 7.03 8.20
3 7.81 7.84 7.84 2.94 8.20 7.08 7.03 8.12
4 7.92 7.99 7.98 7.97 3.07 7.28 7.30 8.39
5 7.02 7.10 7.07 7.06 7.46 2.39 6.43 7.50
6 7.00 7.14 7.10 7.08 7.48 6.34 2.41 7.46
7 8.28 8.34 8.11 8.04 8.52 7.33 7.33 3.08

(7)P2P=Enabled Latency (P2P Writes) Matrix (us)

GPU 0 1 2 3 4 5 6 7
0 3.01 2.89 2.90 2.90 2.88 2.90 2.90 2.90
1 2.96 2.91 2.91 2.96 2.92 2.92 2.91 2.91
2 2.79 2.73 2.71 2.75 2.73 2.74 2.80 2.72
3 3.10 3.06 3.03 2.98 3.00 3.03 3.03 3.07
4 2.95 2.95 3.02 2.97 3.01 2.96 2.96 2.96
5 2.61 2.62 2.60 2.64 2.61 2.64 2.63 2.71
6 2.68 2.64 2.70 2.70 2.62 2.60 2.53 2.62
7 2.63 2.58 2.56 2.63 2.55 2.77 2.63 2.65
CPU 0 1 2 3 4 5 6 7
0 2.96 2.23 2.16 2.16 2.17 2.16 2.16 2.18
1 2.33 3.00 2.25 2.23 2.32 2.26 2.29 2.29
2 2.30 2.27 3.06 2.27 2.28 2.25 2.25 2.28
3 2.34 2.27 2.27 3.09 2.26 2.22 2.24 2.25
4 2.38 2.38 2.33 2.34 3.06 2.35 2.31 2.38
5 2.01 1.96 1.95 1.97 1.96 2.48 1.94 1.94
6 2.00 2.05 1.99 1.98 1.99 1.99 2.47 1.97
7 2.52 2.40 2.42 2.44 2.44 2.41 2.39 3.25

p2pBandwidthLatencyTest测试结果主要包括两个指标:带宽和延迟。带宽是指两个GPU之间传输数据的速度,一般用GB/s作为单位。p2pBandwidthLatencyTest测试结果中,带宽值越高表示两个GPU之间传输数据的速度越快,性能越好。一般来说,如果两个GPU连接到同一个根节点,则带宽会比连接到不同根节点的GPU之间的带宽要快。延迟是指两个GPU数据传输所需要的时间,一般用us作为单位。p2pBandwidthLatencyTest测试结果中,延迟值越低表示数据传输所需要的时间越短,性能越好。一般来说,如果两个GPU连接到同一个根节点,则延迟会比连接到不同节点的GPU之间的延迟要低。

6.测试结论

GPU A100 各卡间通信正常,带宽比理论值低32.34%,卡间延迟无异常

四、浮点计算性能测试

1.测试目的

浮点运算实际性能

2.环境配置

  • 显卡规格:NVIDIA A100-SXM4-40GB *8
  • CUDA版本:11.8
  • NVIDIA驱动版本:525.125.06
  • nvidia-fabricmanager服务
  • pyTorch

3.测试工具

  • 方法一:NVIDIA官方的GEMM(General matrix multiplication)工具
  • 方法二:PyTorch 提供的 Benchmark

4.测试过程

测试前将GPU时钟频率调整到此GPU所支持的最大频率

查看GPU所支持的最大时钟频率

nvidia-smi -q -d clock

image-20241115151650104

设置GPU应用程序时钟频率 , 语法 nvidia-smi -ac <MEM clock, Graphics clock>

nvidia-smi -lgc 1215,1440

PyTorch方法

测试代码 flops.py

import torch
from torch.utils import benchmark

typ = torch.float16
n = 1024 * 16
a = torch.randn(n, n).type(typ).cuda()
b = torch.randn(n, n).type(typ).cuda()

t = benchmark.Timer(
      stmt='a @ b',
      globals={'a': a, 'b': b})

x = t.timeit(50)
print('float16 ,',2*n**3 / x.median /1e12)


typ = torch.float32
n = 1024 * 16
a = torch.randn(n, n).type(typ).cuda()
b = torch.randn(n, n).type(typ).cuda()

t = benchmark.Timer(
              stmt='a @ b',
                    globals={'a': a, 'b': b})

x = t.timeit(50)
print('float32 ,',2*n**3 / x.median /1e12)


typ = torch.float64
n = 1024 * 16
a = torch.randn(n, n).type(typ).cuda()
b = torch.randn(n, n).type(typ).cuda()

t = benchmark.Timer(
              stmt='a @ b',
                    globals={'a': a, 'b': b})

x = t.timeit(50)
print('float64 ,',2*n**3 / x.median /1e12)

gemm方法

#gemm程序需要更高版本的glibcxx,我们用cuda里自带的
export LD_LIBRARY_PATH=/usr/local/cuda-11.8/nsight-compute-2022.3.0/host/linux-desktop-glibc_2_11_3-x64:$LD_LIBRARY_PATH
#INT 8:
./cublasMatmulBench -P=bisb_imma -m=8192 -n=3456 -k=16384 -T=1000 -ta=1 -B=0
#FP16:
./cublasMatmulBench -P=hsh -m=12288 -n=9216 -k=32768 -T=1000-tb=1 -B=0
#TF32:
./cublasMatmulBench -P=sss_fast_tf32 -m=8192 -n=3456 -k=16384-T=1000 -ta=1 -B=0
#FP32:
./cublasMatmulBench -P=ddd -m=3456 -n=2048 -k=16384 -T=1000-tb=1 -B=0
#FP64:
./cublasMatmulBench -P=sss -m=3456 -n=2048 -k=16384 -T=1000-tb=1 -B=0

5.测试结果

浮点类型 理论性能(TFLOPS) 实测性能(TFLOPS) 实测性能(GFLOPS)
INT8 501 498.848973 498848.973
FP16 259 236.967211 236967.211
TF32 117 57.980576 57980.576
FP64 19.2 18.100587 18100.587
FP64 18.6 19.212092 19212.092

6.测试结论

  1. 对于INT8浮点类型,实测性能略高于理论性能,这可能是由于硬件优化或者其他因素导致的。
  2. FP16和TF32浮点类型的实测性能都略低于其理论性能,这可能表明在这些类型上存在一些性能损失或者硬件限制。
  3. 而对于FP64浮点类型,实测性能与理论性能相比也有所下降,这可能是由于硬件限制或者测试条件的影响。

综上所述,测试结果表明在不同的浮点类型下,实测性能与理论性能之间存在一些差异,这可能受到硬件、优化以及测试条件等多种因素的影响。

五、Transformer+WMT’14

1.测试目的

测试长时间运行时的性能稳定性,以及整体性能。

2.环境配置

  • 显卡规格:NVIDIA A100-SXM4-40GB *8
  • CUDA版本:11.8
  • NVIDIA驱动版本:525.125.06
  • nvidia-fabricmanager服务
  • pyTorch

3.测试工具

pyTorch1.13.1、sockeye3.1.34

4.测试过程

5.测试结果

GPUs Updates(平均) Epoch(平均) Updates/sec Time-cost
1 500 1 0.748 2429.823
2 500 1 0.812 615.760
8 500 1 1.578 316.931

该程序主要使用pytorch的Transformer模型,数据集使用WMT’14英语翻译为德语数据并进行byte-pair encoding编码,测试训练耗时耗时。数据处理参数,训练参数在每次训练中均不改变。测试结果中GPUs表示的GPU数量,Updates表示参数更新次数,Epoch标示训练轮数,Updates/sec表示每秒钟的参数更新次数(模型训练的速度),Time-cost表示训练耗时。

数据预处理参数
word-min-count 2
pad-vocab-to-multiple-of 8
max-seq-len 95
num-samples-per-shard 10000000
训练参数
num-layers 6
transformer-model-size 1024
transformer-attention-heads 16
transformer-feed-forward-num-hidden 4096
batch-type max-word
batch-size 5000
update-interval 20
checkpoint-interval 500
max-updates 15000
optimizer-betas 0.9:0.98
initial-learning-rate 0.06325
learning-rate-scheduler-type inv-sqrt-decay
learning-rate-warmup 4000
seed 1

6.测试结论

。。。

六、NVLink测试

1.测试目的

测试NVLink使用状况,性能

2.环境配置

  • 显卡规格:NVIDIA A100-SXM4-40GB *8
  • CUDA版本:11.8
  • NVIDIA驱动版本:525.125.06
  • nvidia-fabricmanager服务
  • pyTorch

3.测试工具

NVSMI

4.测试过程

查看 nvswicth拓扑

image-20241115151658162

可以看到,任意2个GPU卡之间都是 NVLink12。应该是因为A100引入了 NVSwitch的关系

image-20241115151704328

查看 nvlink 状态

image-20241115151709797

测试代码

import torch
import numpy as np

device = torch.device("cuda")

n_gpus = 8
data_size = 1024 * 1024 * 1024  # 1 GB

speed_matrix = np.zeros((n_gpus, n_gpus))

for i in range(n_gpus):
    for j in range(i + 1, n_gpus):
        print(f"Testing communication between GPU {i} and GPU {j}...")
        with torch.cuda.device(i):
            data = torch.randn(data_size, device=device)
            torch.cuda.synchronize()
        with torch.cuda.device(j):
            result = torch.randn(data_size, device=device)
            torch.cuda.synchronize()
        with torch.cuda.device(i):
            start = torch.cuda.Event(enable_timing=True)
            end = torch.cuda.Event(enable_timing=True)
            start.record()
            result.copy_(data)
            end.record()
            torch.cuda.synchronize()
            elapsed_time_ms = start.elapsed_time(end)
        transfer_rate = data_size / elapsed_time_ms * 1000 * 8 / 1e9
        speed_matrix[i][j] = transfer_rate
        speed_matrix[j][i] = transfer_rate

print(speed_matrix)

5.测试结果

GPU 1 GPU 2 GPU 3 GPU 4 GPU 5 GPU 6 GPU 7 GPU 8
GPU 1 0 464.9859565 526.4730694 526.2759531 525.7450773 525.9377422 473.3910529 526.7334102
GPU 2 464.9859565 0 436.0805066 470.8014557 529.4908943 527.1316232 528.5546556 528.4599488
GPU 3 526.4730694 436.0805066 0 528.6358067 529.1016042 529.6339894 478.4399884 529.2038167
GPU 4 526.2759531 470.8014557 528.6358067 0 478.959038 529.4251015 528.190651 529.1245426
GPU 5 525.7450773 529.4908943 529.1016042 478.959038 0 529.1850375 529.5608754 529.8420447
GPU 6 525.9377422 527.1316232 529.6339894 529.4251015 529.1850375 0 469.9187813 529.6298162
GPU 7 473.3910529 528.5546556 478.4399884 528.190651 529.5608754 469.9187813 0 527.0560527
GPU 8 526.7334102 528.4599488 529.2038167 529.1245426 529.8420447 529.6298162 527.0560527 0

GPU服务器内NVLINK带宽测试

6.测试结论

A100 40GB SXM 理论GPU卡间带宽400GB/s,正常模式NVLink全互通带宽约为370GB基本符合预期。