Linux下nvidia压力测试,一种服务器linux系统下GPU压力测试的监控方法与流程

本发明属于服务器测试技术领域,具体涉及一种服务器linux系统下GPU压力测试的监控方法。

背景技术:

随着社会的快速发展,人们对高网络性能、快速存储、大量内存、超高计算能力的GPU的需求越来越大,产品对gpu的需求也越来越大。作为服务器的重要组成部件,它的稳定定直接关乎着机器能否稳定工作。

在服务器的常规测试项目中,GPU的压力测试常作为重要程度最高、优先级最高的测试内容。常用的GPU压力测试程序很多,例如nbody、gpu-burn-master、nvqul_stress等等。

传统GPU压测方法只需关注压力是否正常运行、测试结束后程序原生log是否有异常、系统log是否有异常即可,对于测试期间出现的频率波动、温度及功耗异常、压力duty值等监控不到。此为现有技术的不足之处。

因此,针对现有技术中的上述缺陷,提供设计一种服务器linux系统下GPU压力测试的监控方法;以解决现有技术中的上述缺陷,是非常有必要的。

技术实现要素:

本发明的目的在于,针对上述现有技术存在的缺陷,提供设计一种服务器linux系统下GPU压力测试的监控方法,以解决上述技术问题。

为实现上述目的,本发明给出以下技术方案:

一种服务器linux系统下GPU压力测试的监控方法,其特征在于,包括以下步骤:

S1:测试前将日志信息清空或检查无误的情况下,启动压测程序;

S2:启动监控程序,关注下是否有报错信息弹出。

S3:测试结束后,需要检查监控信息结果,有问题(有监控信息报警)需要反查,定位下是否为服务器本身的问题。

作为优选,所述步骤S1具体包括以下步骤:

S11:设置时间、驱动版本参数,具体指令如下:

time=`date+"%Y-%m-%d%H:%M:%S"`

driver=`nvidia-smi|grep-i version`

DAC=`nvidia-smi-q|grep-A1"Default App"|grep-i mhz|sort|uniq-c|awk'{print$4}'`

nu=`lspci|grep-i nvi|wc-l`

stress_nu=`nvidia-smi|grep"100%"|wc-l`。

作为优选,所述步骤S2具体包括以下步骤:

S21:测试log的检查环节,如存在此文件则会测试前删除,创建收集日志的文件夹;具体指令如下:

S22:驱动的检查环节,如未安装成功有报错提示;具体指令如下:

S23:每隔2秒一次循环检查,确认GPU全部加压成功

S24:收集每秒频率日志,包括GPU温度、GPU温度、内存和GPU的使用率、内存和GPU的频率;具体指令如下:

echo"TIMES:$time">>mhz_results/nvidia_dmon.log

echo"$driver">>mhz_results/nvidia_dmon.log

nvidia-smi dmon|tee-a mhz_results/nvidia_dmon.log

S25:加压过程中收集低于基准频率的“bus id”以及降频日志直到压力测试完成;具体指令如下:

作为优选,所述步骤S3包括以下步骤:

S31:关闭收集频率日志的进程,具体指令如下:

killall nvidia-smi

S32:检查日志并输出大的pass或fail图案,具体指令如下:

本发明的有益效果在于,配合压测程序使用,实现了GPU压测过程中对关键信息的监控,对于故障分析和服务器质量评估提供了参考,可使用在服务器的常规测试中。此外,本发明设计原理可靠,结构简单,具有非常广泛的应用前景。

由此可见,本发明与现有技术相比,具有突出的实质性特点和显著地进步,其实施的有益效果也是显而易见的。

具体实施方式

下面通过具体实施例对本发明进行详细阐述,以下实施例是对本发明的解释,而本发明并不局限于以下实施方式。

本实施例提供的一种服务器linux系统下GPU压力测试的监控方法,其特征在于,包括以下步骤:

S1:测试前将日志信息清空或检查无误的情况下,启动压测程序;

S2:启动监控程序,关注下是否有报错信息弹出。

S3:测试结束后,需要检查监控信息结果,有问题(有监控信息报警)需要反查,定位下是否为服务器本身的问题。

本实施例中,所述步骤S1具体包括以下步骤:

S11:设置时间、驱动版本参数,具体指令如下:

time=`date+"%Y-%m-%d%H:%M:%S"`

driver=`nvidia-smi|grep-i version`

DAC=`nvidia-smi-q|grep-A1"Default App"|grep-i mhz|sort|uniq-c|awk'{print$4}'`

nu=`lspci|grep-i nvi|wc-l`

stress_nu=`nvidia-smi|grep"100%"|wc-l`。

本实施例中,所述步骤S2具体包括以下步骤:

S21:测试log的检查环节,如存在此文件则会测试前删除,创建收集日志的文件夹;具体指令如下:

S22:驱动的检查环节,如未安装成功有报错提示;具体指令如下:

S23:每隔2秒一次循环检查,确认GPU全部加压成功

S24:收集每秒频率日志,包括GPU温度、GPU温度、内存和GPU的使用率、内存和GPU的频率;具体指令如下:

echo"TIMES:$time">>mhz_results/nvidia_dmon.log

echo"$driver">>mhz_results/nvidia_dmon.log

nvidia-smi dmon|tee-a mhz_results/nvidia_dmon.log

S25:加压过程中收集低于基准频率的“bus id”以及降频日志直到压力测试完成;具体指令如下:

本实施例中,所述步骤S3包括以下步骤:

S31:关闭收集频率日志的进程,具体指令如下:

killall nvidia-smi

S32:检查日志并输出大的pass或fail图案,具体指令如下:

以上公开的仅为本发明的优选实施方式,但本发明并非局限于此,任何本领域的技术人员能思之的没有创造性的变化,以及在不脱离本发明原理前提下所作的若干改进和润饰,都应落在本发明的保护范围内。

你可能感兴趣的:(Linux下nvidia压力测试,一种服务器linux系统下GPU压力测试的监控方法与流程)