一种对服务器GPU进行EDPP测试的方法与流程

文档序号:13472123研发日期:2017年阅读:7398来源:国知局
技术简介:
本发明针对传统GPU EDPP测试人工操作繁琐、效率低的问题,提出一种自动化测试方法。通过搭建多节点测试环境,实现32个GPU同时测试,每次重启程序确保测试独立性,并将测试结果与GPU状态信息同步记录至日志文件,显著提升测试效率与准确性。
关键词:EDPP测试,自动化测试

本发明涉及服务器gpu测试技术领域,具体地说是一种对服务器gpu进行edpp测试的方法。



背景技术:

计算型服务器——pcie-swith(pcie,全称为peripheralcomponentinterconnectexpress,是一种高速串行计算机扩展总线标准;swith,是一种服务器)是一种全新架构的服务器,该服务器在中国的整机柜服务器领域能够满足客户对高性能计算服务器的需求。

然而在服务器的生产研发阶段,对其图形处理器(英语:graphicsprocessingunit,缩写:gpu)的测试是一个重要的环节。由于在测试过程中测试项较多、每个测试项较长,单个loopedpp(edpp,英文全称为electricaldatepeakprocessing,供电数据峰值处理)测试全程需3个小时左右时间,且为多个节点同时持续必测项,故工作量极大。

现有测试手段均为手动测试且对gpu逐个进行测试,使用时间长,且需人工选择,增加工作人员的工作负担,工作效率低,且人工选择难免会出现错误和纰漏。



技术实现要素:

为克服上述现有技术存在的不足,本发明的目的在于提供一种高自动化程度、高测试效率的对服务器gpu进行edpp测试的方法。

本发明解决其技术问题所采用的技术方案是:一种对服务器gpu进行edpp测试的方法,包括以下步骤:

搭建测试环境;

对多个gpu同时进行多次edpp测试,每次测试均重启测试程序;

将测试过程及结果进行记录。

进一步地,所述搭建测试环境的具体过程为:使gpubox满配,将pcie-switch的gpubox通过minisashd连接测试服务器端,并拷贝显卡驱动及测试工具到服务器端的操作系统。

进一步地,所述对多个gpu同时进行多次edpp测试,每次测试均重启测试程序的具体过程为:

输入测试节点ip和测试次数变量;

判断测试次数变量是否在预设测试次数范围内;

如果测试次数变量不在预设次数范围内,则结束测试;

如果测试次数变量在预设次数范围内,则判断测试次数变量是否为1;

如果测试次数变量不是1,则关闭正在运行的测试程序,进行下一步的操作;如果测试次数变量是1,则调用与测试工具匹配的显卡驱动,进行下一步的操作;

登入测试节点,使各测试节点同时启动测试程序,选择edpp测试项进行测试,并输出测试结果,使测试次数变量加1,重复测试。

进一步地,所述调用与测试工具匹配的显卡驱动的具体步骤为:

执行驱动程序版本检查命令,根据驱动程序的版本号判断现有显卡驱动是否为测试所需驱动;

如果是测试所需驱动,则直接调用该显卡驱动;

如果不是测试所需驱动,则卸载该显卡驱动,调用拷贝的显卡驱动。

进一步地,通过ssh服务登入测试节点,并记录输出信息,所述输出信息包括每个gpu的负载、编号、gpu使用率、功耗、频率、温度和状态中的一种或多种信息,并通过log文件记录。

进一步地,所述测试结果与输出信息记录在同一log文件内。

本发明的有益效果是:

1、本发明将pcie-swith整机柜满配,多节点同时对gpu进行edpp测试,单循环下实现对32个gpu的同时测试,大大缩减了测试时间,提高了工作效率;。

2、本发明将测试的结果及gpu信息记录到同一个log文件中,方便后续对gpu性能的查看和问题的准确定位,避免人工测试和对gpu选择的失误。

3、本发明的方法将测试次数设为多次,且每次测试均重新启动测试程序,避免上次测试对本次测试造成影响,保证每次测试结果的准确、可靠性。

附图说明

图1是本发明所述方法的流程示意图。

图2是本发明中对满配的gpu同时进行多次edpp测试的流程示意图。

具体实施方式

为能清楚说明本方案的技术特点,下面通过具体实施方式,并结合其附图,对本发明进行详细阐述。下文的公开提供了许多不同的实施例或例子用来实现本发明的不同结构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。此外,本发明可以在不同例子中重复参考数字和/或字母。这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施例和/或设置之间的关系。应当注意,在附图中所图示的部件不一定按比例绘制。本发明省略了对公知组件和处理技术及工艺的描述以避免不必要地限制本发明。

本发明将pcie-swith整机柜满配并连接测试服务器,通过测试服务器端的测试工具调用gpu,使整机柜的gpu同时进行edpp测试。

其中测试工具是对gpu进行edpp测试的测试工具,本发明选用的nvqual测试工具为nvqual_p40_v4_18,使用该测试工具中的测试工具需要搭配驱动程序方可使用,本发明选用的驱动程序为p40gpu:driver_367.57。

如图1所示,本方法的具体操作步骤为,

s1,搭建测试环境;

s2,对多个gpu同时进行多次edpp测试,每次测试均重启测试程序;

s3,将测试过程及结果进行记录。

步骤s1中,对测试环境的搭建包括对硬件测试环境的搭建和软件测试环境的搭建,对硬件测试环境的搭建是指将两台pcie-switch整机柜的gpubox满配与测试服务器(server)用minisashd线缆连接起来。其中满配是指单个gpubox安装16个gpu。一个gpubox对应两个server。其中gpubox即安装gpu的盒子。对软件环境的搭建通过拷贝显卡驱动及测试工具到服务器端的操作系统来实现。测试开始时,首先开启gpubox,1min后开启对应server,保证测试系统的稳定性。

如图2所示,步骤s2中对满配的gpu同时进行多次edpp测试的具体步骤为:

s21,输入测试节点ip和测试次数变量;

s22,判断测试次数变量是否在预设测试次数范围内;

s23,如果测试次数变量不在预设次数范围内,则结束测试;

s24,如果测试次数变量在预设次数范围内,则判断测试次数变量是否为1;

s25,如果测试次数变量不是1,则关闭正在运行的测试程序;

s26,登入测试节点,使各测试节点同时启动测试程序,选择edpp测试项进行测试,并输出测试结果,使测试次数变量加1,转到步骤s22;

s27,如果测试次数变量是1,则判断判断现有显卡驱动是否为测试所需驱动;

s28,如果是测试所需驱动,则直接调用该显卡驱动,转到步骤s25;

s29,如果不是测试所需驱动,则卸载该显卡驱动,调用拷贝的显卡驱动,转到步骤s25。

步骤s21中,在测试程序的命令输入行输入测试节点ip及测试次数变量。本发明输入4个测试节点ip,其中每个测试节点ip对应8个gpu,因此本发明同时对32个gpu进行edpp测试。步骤s22中,预设次数为多次,本发明选用10次,预设次数即对每32个gpu进行重复测试的次数,多次测试获得的测试结果更加准确,可靠性更强,本发明进行1次测试所用的时间大约为2.5小时,相比于传统的对1个gpu测试需要3小时的速度,大大提高了工作效率。

步骤s24中,对测试次数是否为1的判断是为了进一步检查并判断server操作系统下是否还存在自带的显卡驱动,如存在自带的显卡驱动,卸载自带的显卡驱动,利用搭建测试环境时新拷贝的显卡驱动。这是由于操作系统自带的显卡驱动无法驱动现有的测试工具,因而无法进行gpu的edpp测试。

步骤s25中,为保证测试过程的稳定进行,先关闭正在运行的测试工具,使每一次测试的测试节点重新启动测试程序,避免出现上次测试的测试程序未关闭对本次测试造成的影响,保证每次测试结果的准确性。

步骤s26中,通过ssh服务登入测试节点,记录并输出信息,输出信息包括每个gpu的负载、编号、gpu使用率、功耗、频率、温度、状态中的的信息。并通过log文件记录,以下是对8个gpu输出内容的举例:

currentapplicationclocks:[1531mhz]

sgemmworkload-m:3584n:1024k:4096l:100000i:10000p:x:t:60-pass

index,timestamp,utilization.gpu[%],power.draw[w],clocks.current.graphics[mhz],temperature.gpu,pstate,clocks_throttle_reasons.hw_slowdown

0,2017/04/0116:27:42.062,0%,14.00w,544mhz,31,p8,notactive

1,2017/04/0116:27:42.077,0%,13.19w,544mhz,30,p8,notactive

2,2017/04/0116:27:42.091,0%,12.39w,544mhz,30,p8,notactive

3,2017/04/0116:27:42.106,0%,13.38w,544mhz,30,p8,notactive

4,2017/04/0116:27:42.121,0%,12.89w,544mhz,31,p8,notactive

5,2017/04/0116:27:42.136,0%,12.99w,544mhz,30,p8,notactive

6,2017/04/0116:27:42.152,0%,13.40w,544mhz,29,p8,notactive

7,2017/04/0116:27:42.167,0%,12.79w,544mhz,33,p8,notactive。

步骤s26中,选择nvqual测试工具的edpp测试项,进行gpu在波动负载压力下供电达到峰值的承受能力,如果通过测试输出pass,否则测试输出fail。将测试结果与gpu的输出信息记录在同一log文件下,便于后续对gpu性能的查看和问题的准确定位。

步骤s27中,对现有显卡驱动是否为测试所需驱动的判断通过执行驱动程序版本检查命令,根据驱动程序的版本号来实现。其中驱动程序版本检查命令为check_driver="nvidia-smi|grep-iversion",其中nvidia-smi是抓取当前gpu信息的指令,grep-iversion是抓区信息里的驱动版本的指令,本发明中,与gpu测试相匹配的显卡驱动的版本为teslap40,型号选用367.57。

在进行edpp测试时,对测试节点同时开启压力,使测试节点同时达到最大值,其中压力是gpu单位时间对各种不同大小数据块传输处理的能力。

步骤s3中,对测试过程及结果的记录即通过log文件记录测试结果和gpu的输出信息。

以上所述只是本发明的优选实施方式,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也被视为本发明的保护范围。

当前第1页1 2 
网友询问留言 留言:0条
  • 还没有人留言评论。精彩留言会获得点赞!