一种适用于多种环境下测量PCIE卡功耗的装置与方法与流程

文档序号:14248046阅读:537来源:国知局
一种适用于多种环境下测量PCIE卡功耗的装置与方法与流程

本发明涉及信息技术领域,特别涉及一种适用于多种环境下测量pcie卡功耗的装置与方法。



背景技术:

目前产品功耗及产品功耗性能比已经成为大客户选型入围测试的重要关注点和入门门槛,各厂家的竞争越来越激烈。cpu、硬盘、内存等部件厂商为优化功耗不断改进设计,对服务器整机来说,各部件功耗影响着整机散热及电源设计。

pcie卡主要是指pcie总线接口的外插卡,比如显卡、gpu、网卡、hba卡等。目前高端显卡和gpu的功耗最高可达250w,在配置多个gpu的服务器整机上为保证良好的散热效果,需要准确掌握这些pcie卡的功耗值,然后通过设计仿真模型进行散热仿真测试,从而掌握大功耗pcie卡对整机风道风流的影响以及是否满足散热规格;因此首先需要准确掌握pcie卡的功耗。

以显卡为例说明:一般小于75w的显卡,供电来自于pcie总线上的3.3v和12v,因其是系统总线的结构,无法测量其电压电流值,因此现有技术中仅可以通过间接的方式得到显卡的功耗值,例如通过命令行的形式等。

为了解决如上的技术问题,本发明通过设计pcie转接板解决了主板pcie总线3.3v和12v的电压电流的测量,搭建了测试环境并通过所设计的测量设备计算pcie卡的功耗,同时结合多种环境下的加压方法,与系统下用命令读出的功耗值进行对比,实现多种环境下对pcie卡功耗的掌握。



技术实现要素:

更具体而言,为了解决如上的技术问题,本发明提出一种适用于多种环境下测量pcie卡功耗的装置,包括:

pcie卡,所述pcie卡为与pcie总线接口插接式连接的外插卡,用于实现对应的功能作用;

pcie转接卡,所述pcie转接卡连接在主板pcie插槽上,且上述pcie卡安装在该pcie转接卡上以实现该pcie卡与pcie总线接口的插接式连接;

数据采集与计算设备,所述数据采集与计算设备与pcie转接卡电连接,通过采集pcie转接卡传递过来的电信号并计算而得到pcie卡的功耗;

所述pcie转接卡内部包括有基于欧姆定律设计实现的电信号采集电路,所述电信号采集电路能够采集得到用于计算pcie卡功耗所需的电信号,并将电信号传递给数据采集与计算设备;

所述数据采集与计算设备计算得到pcie卡的功耗,并将该计算结果与系统下通过命令行形式直接获取的功耗值进行对比,以分析所述pcie卡的功耗性能。

较佳地,所述装置可以测量pcie在3.3v与12v供电电压下的功耗,所述pcie转接板中的电信号采集电路具体设计方式为:在3.3v和12v供电线路中串联一个精密电阻,并测量所述精密电阻两端的电压;

较佳地,所述数据采集与计算设备获得12v及3.3v电路电压情况下精密电阻两端的电压值u1和u2,由于已知精密电阻的阻值,可以根据安培定律分别得出12v及3.3v电路电压下的电流值i1与i2,再根据瓦特定律计算出12v及3.3v电路电压下电路的功耗p1与p2,pcie卡的总功耗为p1与p2之和;

较佳地,数据采集与计算设备使用安捷伦数据采集仪,所述pcie转接卡的电信号采集电路中所设置的精密电阻两端焊接连接线连接至数据采集与计算设备;

较佳地,数据采集与计算设备连接在电脑上,并运行数据采集软件,数据采集软件界面包括有数据采集开关功能按钮、数据采集时间间隔设置功能按钮、12v及3.3v电路电压下电流电压显示功能框、12v及3.3v电路电压下功耗显示功能框及pcie卡总功耗显示功能框;

较佳地,数据采集软件在系统运行稳定后,重新开启一次再开始采集数据,按照所设定的采集数据的数据采集时间间隔,记录某一时间段内的12v电路及3.3v电路的平均电流、平均功耗、最大电流及最大功耗值,得到idle模式下的功耗所需的相关数值。

较佳地,在操作系统下运行对应的加压测试软件,数据采集软件在系统运行稳定后,重新开启一次再开始采集数据,按照所设定的采集数据的数据采集时间间隔,记录某一时间段内的12v电路及3.3v电路的平均电流、平均功耗、最大电流及最大功耗值,得到运行加压测试软件下的加压模式下的功耗所需的相关数值。

较佳地,所述操作系统为windows操作系统或者linux操作系统,且在windows操作系统下运行的加压测试软件为furmark,在linux操作系统下运行的加压测试软件为cuda。

此外,本发明还基于如上所述的适用于多种环境下测量pcie卡功耗的装置,实现了对应的测量pcie卡功耗的方法,包括如下步骤:

步骤1、设计实现内部包括有基于欧姆定律设计实现的电信号采集电路的pcie转接卡,将所述pcie转接卡连接在主板pcie插槽上,并将pcie卡安装在该pcie转接卡上;所述电信号采集电路能够采集得到用于计算pcie卡功耗所需的电信号,并将电信号传递给数据采集与计算设备;电信号采集电路具体设计方式为:在供电线路中串联一个精密电阻,并测量所述精密电阻两端的电压;

步骤2、设置数据采集与计算设备,并将所述数据采集与计算设备与pcie转接卡电连接;

步骤3、将数据采集与计算设备连接到电脑上,并运行数据采集软件,数据采集软件在系统运行稳定后,重新开启一次再开始采集数据,按照所设定的采集数据的数据采集时间间隔,记录某一时间段内的12v电路及3.3v电路的平均电流、平均功耗、最大电流及最大功耗值,得到idle模式下的功耗所需的相关数值;

步骤4、在操作系统下运行对应的加压测试软件,数据采集软件在系统运行稳定后,重新开启一次再开始采集数据,按照所设定的采集数据的数据采集时间间隔,记录某一时间段内的12v电路及3.3v电路的平均电流、平均功耗、最大电流及最大功耗值,得到运行加压测试软件下的加压模式下的功耗所需的相关数值;

步骤5、所述数据采集与计算设备计算得到pcie卡的功耗,并将该计算结果与系统下通过命令行形式直接获取的功耗值进行对比,以分析所述pcie卡的功耗性能。

较佳地,所述操作系统为windows操作系统,且在windows操作系统下运行的加压测试软件为furmark,在windows操作系统下通过命令行形式直接获取功耗值的方式如下:用管理员权限运行msdos,进入到c:\programfiles\nvidiacorporation\nvsmi文件夹,使用nvidia-smi命令查看显卡温度以及功耗。

较佳地,所述操作系统为linux操作系统,且在linux操作系统下运行的加压测试软件为cuda,在linux操作系统下通过命令行形式直接获取功耗值的方式如下:进入/root/nvidia_cuda-8.0_samples/5_simulations/nbody目录,执行make命令生成可执行文件;然后运行./nbody-benchmark-device=0-numbodies=10000000命令对显卡加压;另开启命令行界面,运行nvidia-smi命令读取显卡温度功耗值。

本发明利用自行设计的pcie转接板,借助安捷伦数据采集仪以及数据采集软件实现实际测量显卡的功耗的办法,可在多种应用环境下使用,不受os限制,能够实时掌握显卡的功耗。此外,本发明测试方法可实现跟软件读取进行对比,更清晰直观的展现显卡功耗以及利用率情况,可普遍应用于选型测试以及兼容性测试中;本发明专利不仅适用于显卡,同样适用于其他pcie转接卡实时测量功耗。

附图说明

图1是本发明实施例中系统架构示意图;

图2是本发明实施例中电信号采集电路的示意图;

图3是本发明实施例中另一电信号采集电路的示意图;

图4是本发明实施例中实物连接关系示意图;

图5是本发明实施例中实物连接关系示意图之二;

图6是本发明实施例中数据采集软件界面示意图;

图7是本发明实施例功耗测试流程示意图;

具体实施例

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。

本发明的实施例提供一种适用于多种环境下测量pcie卡功耗的装置,如图1所示,包括如下功能端:pcie卡1、pcie转接卡2、数据采集与计算设备3,以及与所述pcie转接卡连接的主板4,所述主板具有pcie插槽,以及数据采集与计算设备3所连接的电脑主机5;

其中,所述pcie卡1为与pcie总线接口插接式连接的外插卡,用于实现对应的功能作用;

所述pcie转接卡2连接在主板4的pcie插槽上,且上述pcie卡1安装在该pcie转接卡2上以实现该pcie卡与pcie总线接口的插接式连接;

数据采集与计算设备3,所述数据采集与计算设备3与pcie转接卡2电连接,通过采集pcie转接卡2传递过来的电信号并计算而得到pcie卡1的功耗;

所述pcie转接卡2内部包括有基于欧姆定律设计实现的电信号采集电路21,所述电信号采集电路21能够采集得到用于计算pcie卡1功耗所需的电信号,并将电信号传递给数据采集与计算设备3;

所述数据采集与计算设备3计算得到pcie卡1的功耗,并将该计算结果与系统下通过命令行形式直接获取的功耗值进行对比,以分析所述pcie卡的功耗性能。

本发明实施例还基于如上所述的适用于多种环境下测量pcie卡功耗的装置,实现了对应的测量pcie卡功耗的方法,参见说明书附图6所示的流程图,其包括如下步骤:

步骤1、设计具有电信号采集电路的pcie转接卡,并连接该pcie转接卡至主板;设计实现内部包括有基于欧姆定律设计实现的电信号采集电路的pcie转接卡,将所述pcie转接卡连接在主板pcie插槽上,并将pcie卡安装在该pcie转接卡上;所述电信号采集电路能够采集得到用于计算pcie卡功耗所需的电信号,并将电信号传递给数据采集与计算设备;电信号采集电路具体设计方式为:在供电线路中串联一个精密电阻,并测量所述精密电阻两端的电压;

步骤2、设置并连接数据采集与计算设备;将所述数据采集与计算设备与pcie转接卡电连接;

步骤3、运行数据采集软件;将数据采集与计算设备连接到电脑上,并运行数据采集软件,数据采集软件在系统运行稳定后,重新开启一次再开始采集数据,按照所设定的采集数据的数据采集时间间隔,记录某一时间段内的12v电路及3.3v电路的平均电流、平均功耗、最大电流及最大功耗值,得到idle模式下的功耗所需的相关数值;

步骤4、加压模式下采集数据并计算功耗的步骤;在操作系统下运行对应的加压测试软件,数据采集软件在系统运行稳定后,重新开启一次再开始采集数据,按照所设定的采集数据的数据采集时间间隔,记录某一时间段内的12v电路及3.3v电路的平均电流、平均功耗、最大电流及最大功耗值,得到运行加压测试软件下的加压模式下的功耗所需的相关数值;

步骤5、分析比较步骤;所述数据采集与计算设备计算得到pcie卡的功耗,并将该计算结果与系统下通过命令行形式直接获取的功耗值进行对比,以分析所述pcie卡的功耗性能。

本实施例以p600显卡为例,数据采集与计算设备3为安捷伦数据采集仪(agilentdatalogger34970a);分别在windows操作系统环境以及linux操作系统环境下利用加压测试软件给显卡加压,并通过本发明所设计pcie转接板测量pcie3.3v和12v的电压、电流,利用安捷伦数据采集仪计算功耗,同时对比在系统下通过命令读取的功耗值,实现显卡功耗的准确掌握。其中,windows操作系统环境加压测试软件furmark,linux环境下利用cuda计算平台实现显卡加压。

本实施例windows操作系统以及linux操作系统分别以windows7和redhat6.6为例,并通过官网下载p600显卡驱动以及furmark、cuda程序,显卡驱动程序版本为:377.35(windows),381.22(linux),furmark程序版本为v1.15.0,cuda程序版本为:cuda_8.0。

本实施例的装置可以测量pcie卡在3.3v与12v供电电压下的功耗,所述pcie转接板中的电信号采集电路具体设计方式为:在3.3v和12v供电线路中串联一个精密电阻,并测量所述精密电阻两端的电压。

如图2、3所示,为了可以测量pcie3.3v和12v的功耗,需要测量其电压,根据欧姆定律设计了pcie转接板,方法是在3.3v和12v线路中串联精密电阻,这里选择的精密电阻为2毫欧,其他pcie信号直接在pcb板上做相应的延长。

本实施例用到安捷伦数据采集仪(agilentdatalogger34970a)作为数据采集与计算设备用于显示精密电阻两端的电压。

所述pcie转接卡的电信号采集电路中所设置的精密电阻两端焊接连接线连接至安捷伦数据采集仪;以显卡为例,具体可以参见如图4、5所示的电路连接图:其中,图4显示了将pcie转接卡精密电阻两端焊接连接线连接至数据采集仪;在图5中,将显卡安装在转接卡上,转接卡连接在主板pcie插槽上,显卡输出接口连接显示器,在操作系统中安装显卡驱动;此时显卡能够正常运行。

安捷伦数据采集仪连接在电脑上,并运行数据采集软件,数据采集软件界面包括有数据采集开关功能按钮、数据采集时间间隔设置功能按钮、12v及3.3v电路电压下电流电压显示功能框、12v及3.3v电路电压下功耗显示功能框及pcie卡总功耗显示功能框;具体如图6所示。

所述安捷伦数据采集仪获得12v及3.3v电路电压情况下精密电阻两端的电压值u1和u2,由于已知精密电阻的阻值,可以根据安培定律分别得出12v及3.3v电路电压下的电流值i1与i2,再根据瓦特定律计算出12v及3.3v电路电压下电路的功耗p1与p2,pcie卡的总功耗为p1与p2之和。具体计算过程如下:

安捷伦数据采集仪可以读出pcie12v及3.3v电路精密电阻两端的电压值u1和u2,由于已知精密电阻的阻值,可以根据安培定律得出:

12v电路的电流值:i1=u1/r1

3.3v电路的电流值:i2=u2/r2

在根据瓦特定律计算出:

12v电路的功耗:p1=12*i1

3.3v电路的功耗:p2=3.3*i2

显卡的总功耗:p=p1+p2

实际上i1、i2、p1、p2、p可以在安捷伦数据采集软件里设置好,功耗测试时,软件界面直接就可以显示所需的i1、i2、p1、p2、p各项数值。

其中,在windows操作系统下:通过如上的设置与连接,使得显卡能够正常运行用,管理员权限运行msdos,进入到c:\programfiles\nvidiacorporation\nvsmi文件夹,使用nvidia-smi命令查看显卡温度以及功耗。

通过如上的步骤一直观察显卡温度以及功耗,待稳定后(稳定大约需要30min),数据采集软件重新开启一次再开始采集数据,采集5min后停止采集数据,记录这5min时间段内的12v电路及3.3v电路的平均电流、平均功耗、最大电流及最大功耗值即为idle模式的功耗所需的相关数值。

随后,在windows系统下运行furmarkv1.15.0,通过上述命令行的形式一直观察显卡温度以及功耗,待稳定后(稳定大约需要30min),数据采集软件重新开启一次再开始采集数据,采集5min后停止采集数据,记录这5min时间段内的12v及3.3v电路的平均电流、平均功耗、最大电流及最大功耗值即为运行furmark时所需的相关数值。与如上命令行形式读出的数值进行比较

其中,在linux操作系统下:linux系统下安装显卡驱动以及安装cuda_8.0.44_linux.run,安装完成后,进入/root/nvidia_cuda-8.0_samples/5_simulations/nbody目录,执行make命令生成可执行文件;然后运行./nbody-benchmark-device=0-numbodies=10000000命令对显卡加压;另开启命令行界面,运行nvidia-smi命令读取显卡温度功耗值。

待温度以及功耗稳定后(稳定大约需要30min),数据采集软件重新开启一次再开始采集数据,采集5min后停止采集数据,记录这5min时间段内的12v及3.3v电路的平均电流、平均功耗、最大电流及最大功耗值即为linux系统下加压时所需的相关数值。与如上通过命令行读出的数值进行比较。

对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其他实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是符合与本文所公开的原理和新颖特点相一致的最宽的范围。

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