GPU V100 测试说明

原文链接:https://zhuanlan.zhihu.com/p/645074539

GPU V100 性能测试报告
智星云算力平台
智星云算力平台​
分布式共享算力平台
一、通用计算性能测试

CUDA Driver Version / Runtime Version 12.0 / 12.0
CUDA Capability Major/Minor version number 7.0
Total amount of global memory 32501 MBytes (34079637504 bytes)
(108) Multiprocessors, (064) CUDA Cores/MP 5120 CUDA Cores
GPU Max Clock rate 1380 MHz (1.38 GHz)
Memory Clock rate 877 Mhz
Memory Bus Width 4096-bit
L2 Cache Size 6291456 bytes
Maximum Texture Dimension Size (x,y,z) 1D=(131072), 2D=(131072, 65536), 3D=(16384, 16384, 16384)
Maximum Layered 1D Texture Size, (num) layers 1D=(32768), 2048 layers
Maximum Layered 2D Texture Size, (num) layers 2D=(32768, 32768), 2048 layers
Total amount of constant memory 65536 bytes
Total amount of shared memory per block 49152 bytes
Total number of registers available per block 65536
Warp size 32
Maximum number of threads per multiprocessor 2048
Maximum number of threads per block 1024
Max dimension size of a thread block (x,y,z) (1024, 1024, 64)
Max dimension size of a grid size (x,y,z) (2147483647, 65535, 65535)
Maximum memory pitch 2147483647 bytes
Texture alignment 512 bytes
Concurrent copy and kernel execution Yes with 7 copy engine(s)
Run time limit on kernels No
Integrated GPU sharing Host Memory No
Support host page-locked memory mapping Yes
Alignment requirement for Surfaces Yes
Device has ECC support Disabled
Device supports Unified Addressing (UVA) Yes
Device supports Managed Memory Yes
Device supports Compute Preemption Yes
Supports Cooperative Kernel Launch Yes
Supports MultiDevice Co-op Kernel Launch Yes
Device PCI Domain ID / Bus ID / location ID 0 / 65 / 0

  1. 环境配置:显卡规格:V100 32GB PCIe *2、CUDA 版本:12.0、NVIDIA 驱动版本:525.125.06

  2. 测试工具:

NVIDIA 官方提供的命令行工具 device Query

  1. 测试目的:

验证 CUDA 工具包是否可以正确安装和配置、检查 CUDA 可以访问的 GPU 设备的数量、计 算能力、核心数量、内存带宽等硬件规格信息,以及它们是否能正常工作,确保系统硬件配置的稳定性。

  1. 测试结果

如上表所示。

  1. 测试结论:

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

二、GPU 显存带宽测试

  1. 环境配置:

显卡规格:V100 32GB PCIe *2、CUDA 版本:12.0、NVIDIA 驱动版本:525.125.06

  1. 测试工具:

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

  1. 测试目的:

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

  1. 测试结果:

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

  1. 测试结论:

数据传输的大小 32000000 Bytes V100 GPU 主机到设备,设备到主机,设备与设备的显 存带宽均略低于理论封值,即主机到设备、设备到主机的理论峰值影响条件太多没有具体的 峰值、设备到设备数据传输速度相较于理论峰值低 19%。(实际带宽会受到多种因素的影响,比如说系统架构和配置、数据传输类型、驱动程序和其他软件等,所以实际带宽都会低于理论峰值)

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

  1. 环境配置:

显卡规格:V100 32GB PCIe *2、CUDA 版本:12.0、NVIDIA 驱动版本:525.125.06

  1. 测试工具:

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

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

  2. 测试结果:

(1)P2P Connectivity Matrix:

D\D 0 1
0 1 1
1 1 1

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

D\D 0 1
0 770.84 10.06
1 10.12 773.13

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

D\D 0 1
0 771.99 7.09
1 9.90 773.51

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

D\D 0 1
0 710.07 10.40
1 10.46 776.01

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

D\D 0 1
0 711.04 9.90
1 9.89 772.18

(6)P2P=Disabled Latency Matrix (us):

GPU 0 1
0 2.10 63.95
1 16.27 1.93
CPU 0 1
0 3.54 9.52
1 7.77 2.45

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

GPU 0 1
0 1.98 2.12
1 2.12 1.93
CPU 0 1
0 3.44 2.92
1 2.31 2.58

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

  1. 测试结论:
    V100 各卡间通信正常,延迟最大值最小值与官方数据相差在 1%以内。(测试结果受到多种因素的影响,例如 GPU 类型、PCIe 版本、PCIe 带宽限制、数据大小等,测试结果仅供参考)

四、浮点计算性能测试

1.环境配置:

显卡规格:V100 32GB PCIe *2、CUDA 版本:12.0、NVIDIA 驱动版本:525.125.06 、 pyTorch

2.测试工具:

通过 PyTorch 提供的 Benchmark 进行测试

  1. 测试目的:

浮点运算实际性能

4.测试结果:

机器当前使用用户无法手动调整 GPU 频率

理论性能(TFLOPS) 实测性能(TFLOPS)
FP16 Tensor Core 112 81.90177233701357
Tensor Float 32 14 13.205888549962348
FP64 Tensor Core 7 6.757058160771615

5.测试结论:

半精度、单精度、双精度的测试结果与官方理论值都有一些的差距,16 位实测结果低于理论性能 26.87%,32 位 64 位测试十分接近理论峰值,差值分别为 5.67%,3.47%(测试结果受到多种因素的影响)

五、Transformer+WMT’14

1.环境配置:

显卡规格:V100 32GB PCIe *2、CUDA 版本:12.0、NVIDIA 驱动版本:525.125.06 、

pyTorch、cuFFT

2.测试工具:

pyTorch1.13.1、sockeye3.1.34

3.测试目的:

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

4.测试结果:

显卡数量 平均更新/sec 平均 500update 运行时间(秒)
1 0.0908 5509
2 0.1744 2867

该程序主要使用 pytorch 的 Transformer 模型,数据集使用 WMT‘14 英语翻译为德语数据并进行 byte-pair encoding,测试训练耗时耗时。数据处理参数,训练参数在每次训练中均不改变。

数据预处理参数
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

5.测试结论
该机器在模型训练过程中,运行稳定并且训练速度较好,在本模型中卡间通讯速度并未掣肘整体运行时间。(需要注意的是,显卡的性能并不是独立存在的,而是与其他系统组件一起决定的,所以 PCIe 的连接类型、系统硬件配置的不同等都会有所影响,测试结果仅供参考)

六、NVLink 测试

1.环境配置:

显卡规格:V100 32GB PCIe *2、CUDA 版本:12.0、NVIDIA 驱动版本:525.125.06 、 pyTorch

2.测试工具: NVSMI

3.测试目的:

测试 NVLink 使用状况,性能

4.测试结果:

GPU0 GPU1 NIC0 CPU Affinity NUMA Affinity
CPU0 X PIX PIX 0-15,32-47 0
GPU1 PIX X PIX 0-15,32-47 0
NIC0 PIX PIX X
PIX= Connection traversing at most a single PCIe bridge

5.测试结论
显卡间未使用 NVLink 传输

七、IB 测试

1.环境配置:

显卡规格:V100 32GB PCIe *2、CUDA 版本:12.0、NVIDIA 驱动版本:525.125.06 、 pyTorch

2.测试工具:

IB 网络基准性能测试工具

3.测试目的:

测试 IB 使用状况,性能

4.测试结果:

无 IB 网络

5.测试结论

单机器无法测试 IB 速度

八、其他

nohup 有时会随着 session 的关闭而关闭,并且会在训练中导致错误,切换为 tmux 问题 解决。

session 在无程序运行状态会很快断开。

发布于 2023-07-21 17:08・IP 属地陕西
图形处理器(GPU)
性能测试
GPU 通用计算
​赞同​
​添加评论
​分享
​喜欢
​收藏
​申请转载

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值