NVBandwidth项目:GH200超级芯片主机到设备带宽异常问题分析

NVBandwidth项目:GH200超级芯片主机到设备带宽异常问题分析

【免费下载链接】nvbandwidth A tool for bandwidth measurements on NVIDIA GPUs. 【免费下载链接】nvbandwidth 项目地址: https://gitcode.com/gh_mirrors/nv/nvbandwidth

问题背景

在GH200超级芯片(480GB LPDDR5X + 96GB HBM3)的性能测试中,技术团队观察到了一个异常现象:主机到设备(H2D)的带宽性能表现低于预期。具体表现为:

  1. 使用SM(流式多处理器)拷贝和CE(拷贝引擎)拷贝两种方式的带宽差异不明显
  2. 主机到设备(H2D)与设备到主机(D2H)的带宽存在约15%的不对称性

测试环境配置

测试平台采用了以下配置:

  • 操作系统:Rocky Linux 9.3 (Blue Onyx)
  • 测试工具:NVBandwidth v5.0
  • 硬件平台:GH200超级芯片(包含Grace CPU和Hopper GPU)
  • Linux内核:5.14.0-362.8.1.el9_3.aarch64+64k版本(使用64k页表)
  • NVIDIA驱动版本:550.54.14
  • 额外加载的内核模块:nvidia_peermem和gdrdrv

性能异常表现

通过NVBandwidth工具测试,发现了以下异常现象:

  1. SM与CE拷贝带宽差异不明显

    • SM拷贝带宽:342 GB/s
    • CE拷贝带宽:346 GB/s
    • 理论上SM拷贝应该比CE拷贝快约15%,因为CE拷贝受限于DMA引擎
  2. 带宽不对称性

    • 主机到设备(H2D)比设备到主机(D2H)快约15%
    • 这种不对称性可能是ATS(地址转换服务)的固有特性导致

问题诊断过程

技术团队进行了以下诊断步骤:

  1. 系统拓扑检查

    • 确认GPU与NIC、CPU的拓扑连接关系
    • 检查NUMA亲和性设置
  2. 系统配置验证

    • 确认GPU时钟频率未锁定,运行在默认状态
    • 检查系统日志(dmesg)无错误或警告信息
  3. 解决方案尝试

    • 建议锁定GPU时钟至最高频率(1980MHz)进行测试
    • 升级NVIDIA驱动至565.57.01版本(在其他案例中解决了类似问题)

技术分析

从技术角度看,这种性能异常可能由以下因素导致:

  1. 时钟频率管理

    • GPU未锁定在最高频率可能导致性能波动
    • 动态频率调整可能影响持续带宽性能
  2. 驱动版本兼容性

    • 较旧的驱动版本(550.54.14)可能存在性能优化不足
    • 新版本驱动(565.57.01)可能包含针对GH200的特定优化
  3. 内存子系统配置

    • 64k页表配置可能影响地址转换效率
    • ATS服务的实现方式可能导致H2D与D2H带宽不对称

结论与建议

对于在GH200超级芯片上遇到类似带宽性能问题的用户,建议采取以下措施:

  1. 升级NVIDIA驱动至最新版本(至少565.57.01或更高)
  2. 测试时锁定GPU时钟至最高频率(1980MHz)
  3. 验证系统拓扑和NUMA配置是否正确
  4. 考虑页表大小(64k vs 4k)对性能的影响

通过系统性的性能调优和配置验证,可以充分发挥GH200超级芯片的内存带宽潜力,获得预期的性能表现。

【免费下载链接】nvbandwidth A tool for bandwidth measurements on NVIDIA GPUs. 【免费下载链接】nvbandwidth 项目地址: https://gitcode.com/gh_mirrors/nv/nvbandwidth

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值