NVIDIA 5090GPU适配经验分享

NVIDIA 5090GPU适配经验分享

1.实际结论

经过完整适配以及对结果分析,5090不支持通过NVIDIA SMbus Post-Box协议获取GPU卡温度/功耗/部件编码/序列号/固件版本等信息;

对于5090 GPU 温度信息可以通过读取直接寄存器来实现

2.操作环境

  • 软件版本:[ OpenUBMC 2512]

  • 整机系统:已知可用redhat-8.10 \ openEuler-22.03-SP4

  • 在系统上安装NVIDIA 对应的GPU驱动与CUDA版本并且安装

3.component_drivers组件配置步骤

该组件下具体代码内容均参考Tesla T4

1.在drivers/pcie_gpu_card/nvidia/csr/目录下创建dds和sr文件:

2.在../nvidia/目录下创建文件夹nv_5090,文件夹下目录如图示:

3.在../nvidia/meson.build文件下面添加subdir(‘nv_5090’)

4.在mds/service.json文件里面修改version版本

5.上述完成后便可进行组件编译记录编译后的生成的组件版本

4.manifest组件配置

1.在build/product/BMC/openUBMC/rootfs/include/profile.txt目录下添加sr文件

2.在build/subsys/rc/framework.yml和build/subsys/stable/framework.yml文件里面将component_drivers组件的版本修改成之前编译的版本

3.修改完成后即可进行编译与升级

5.实际结果

通过对比NVIDIA TESLA T4发现NVIDIA 5090GPU卡无法获取部件编码、序列号、固件版本、GPU卡温度,GPU功耗

6.问题定位

通过beagle抓包工具对NVIDIA 5090GPU进行抓包,数据如下:

对比Tesla T4数据:

得出结论:NVIDIA 5090不支持NVIDIA SMbus Post-Box协议获取GPU卡温度/功耗/部件编码/序列号/固件版本等信息。

7.利用直接寄存器读取温度

1.在不加压的情况下,web端温度数据与nvidia-smi命令查询温度差值不超过5℃:

2.在加压十分钟的情况下,web端温度数据与nvidia-smi命令查询温度差值不超过5℃:

2 个赞