《一种排查多路众核服务器CPU故障的方法.pdf》由会员分享,可在线阅读,更多相关《一种排查多路众核服务器CPU故障的方法.pdf(10页珍藏版)》请在专利查询网上搜索。
1、10申请公布号CN104102566A43申请公布日20141015CN104102566A21申请号201410379159922申请日20140804G06F11/2220060171申请人浪潮电子信息产业股份有限公司地址250101山东省济南市高新区舜雅路1036号72发明人杜彦魁郑辉陈良华54发明名称一种排查多路众核服务器CPU故障的方法57摘要本发明提供一种排查多路众核服务器CPU故障的方法,其特点在于通过对LINUX系统下自带的MCELOG记录文件以及CPUINFO文件解析,将MCELOG中记录的故障的逻辑CPU解析到物理CPU,然后通过对调故障CPU位置,同时对CPU及内存大压力。
2、测试来定位其故障。本发明的一种排查多路众核服务器CPU故障的方法和现有技术相比,可以及时、快速的发现CPU的故障问题,本发明还具有设计合理、结构简单、易于加工、使用方便等特点,因而,具有很好的使用价值。51INTCL权利要求书2页说明书6页附图1页19中华人民共和国国家知识产权局12发明专利申请权利要求书2页说明书6页附图1页10申请公布号CN104102566ACN104102566A1/2页21一种排查多路众核服务器CPU故障的方法,其特征在于通过对LINUX系统下自带的MCELOG记录文件以及CPUINFO文件解析,将MCELOG中记录的故障的逻辑CPU解析到物理CPU,然后通过对调故障。
3、CPU位置,同时对CPU及内存大压力测试来定位其故障。2根据权利要求1所述的一种排查多路众核服务器CPU故障的方法,其特征在于购买TS850满配服务器,其配置为8颗物理CPU,每颗CPU为8核心,不开超线程技术的情况下,其逻辑CPU达到64核之众;应用中出现死机故障,同时/VAR/LOG/MCELOG出现报错信息,但MCELOG记录的CPU为逻辑CPU,其与物理CPU对于关系并不是按序对应;LINPACK可以使用INTELMKL数学库中标准编译出来的测试程序,通过设定相应参数可以让所有CPU核心的使用率达到100,同时使物理内存的利用率达到95以上,CPU与内存之间进行频繁通讯;这种压力测试不。
4、是MEMTEST配合单纯CPU压力测试所能达到的效果,CPU与内存之间的通讯更加紧密;(1)MCELOG报错介绍(2)在LINUX系统下,打开/PROC/CPUINFO文件,文件中显示如下信息通过MCELOG记录报错显示是CPU0BANK0出错,查找CPUINFO文件,可以确定,报错CPU的逻辑号为PROCESSOR0,逻辑号0对应的PHYSICALID为1,可以定位报错的CPU物理号为CPU1;(3)更换物理1号CPU,对调1号与0号CPU故障,进行LINPACK压力测试使用INTELMKL软件中自带的脚本进行测试,所以要保证MKL的正确安装使用INTELMPI软件运行测试,所以保证INTE。
5、LMPI软件的正确安装,且初始化节点MPD环境;以ROOT用户编译LINPACKCD/OPT/INTEL/COMPILER/111/072/MKL/BENCHMARKS/MP_LINPACKMAKEARCHEM64T编译完成后CD/OPT/INTEL/COMPILER/111/072/MKL/BENCHMARKS/MP_LINPACK/BIN/EM64T在此可以看到HPLDAT和XHPL2个文件,其中HPLDAT为配置文件,XHPL为可执行程序;A启动MPD环境CD/ROOTVIMPDHOSTS/编辑主机列表文件,包含所有参加计算的节点主机名MPDBOOTNNUMBER/NUMBER表示启动机。
6、器数目,不大于MPDHOSTS文件所列节点数MPDTRACE/查看当前启动节点,正常情况会将所有启动节点名打印出来B进入执行脚本所在目录CD/OPT/INTEL/MKL/1012024/BENCHMARKS/MP_LINPACK/BIN_INTEL/EM64TC编辑配置文件HPL_SERIALDAT其中的6行为需要修改的参数,分别表示以下含义权利要求书CN104102566A2/2页32OFPROBLEMSSIZESN/有几组N,即需要解几组方程10002000NS/矩阵N的规模,即矩阵的阶数1OFNBS/有几组NB,即有几种分块方式168NBS/NB值即表示分块大小为多少1PS4QS/二位处。
7、理器网格(PQ)D编辑脚本文件RUNME_EM64T修改文件中一句MPIEXECNP64/XHPL_EM64T|TEEAXHPL_EM64T_OUTPUTSTXT中的NP后面的值,应该等于PQ;E执行脚本RUNME_EM64T/RUNME_EM64T(4)大压力测试一段时间后如果再出现故障,再次通过解析MCELOG记录信息由此可以判断出故障随着目前的0号CPU为故障CPU,进行更换处理。权利要求书CN104102566A1/6页4一种排查多路众核服务器CPU故障的方法技术领域0001本发明涉及计算机技术领域,具体地说是一种排查多路众核服务器CPU故障的方法。背景技术0002目前随着多路服务器的。
8、普及,企业级应用中出现了大量如四路服务器、八路众核服务器等多个物理CPU构成的服务器,而CPU与内存之间通讯的故障排查是一项复杂的技术问题。发明内容0003本发明的目的是克服现有技术中存在的不足,提供一种排查多路众核服务器CPU故障的方法。0004本发明的技术方案是按以下方式实现的,其结构中通过对LINUX系统下自带的MCELOG记录文件以及CPUINFO文件解析,将MCELOG中记录的故障的逻辑CPU解析到物理CPU,然后通过对调故障CPU位置,同时对CPU及内存大压力测试来定位其故障。0005购买TS850满配服务器,其配置为8颗物理CPU,每颗CPU为8核心,不开超线程技术的情况下,其逻。
9、辑CPU达到64核之众;应用中出现死机故障,同时/VAR/LOG/MCELOG出现报错信息,但MCELOG记录的CPU为逻辑CPU,其与物理CPU对于关系并不是按序对应;LINPACK可以使用INTELMKL数学库中标准编译出来的测试程序,通过设定相应参数可以让所有CPU核心的使用率达到100,同时使物理内存的利用率达到95以上,CPU与内存之间进行频繁通讯;这种压力测试不是MEMTEST配合单纯CPU压力测试所能达到的效果,CPU与内存之间的通讯更加紧密;(1)MCELOG报错介绍(2)在LINUX系统下,打开/PROC/CPUINFO文件,文件中显示如下信息通过MCELOG记录报错显示是C。
10、PU0BANK0出错,查找CPUINFO文件,可以确定,报错CPU的逻辑号为PROCESSOR0,逻辑号0对应的PHYSICALID为1,可以定位报错的CPU物理号为CPU1;(3)更换物理1号CPU,对调1号与0号CPU故障,进行LINPACK压力测试L使用INTELMKL软件中自带的脚本进行测试,所以要保证MKL的正确安装L使用INTELMPI软件运行测试,所以保证INTELMPI软件的正确安装,且初始化节点MPD环境;以ROOT用户编译LINPACKCD/OPT/INTEL/COMPILER/111/072/MKL/BENCHMARKS/MP_LINPACKMAKEARCHEM64T编译。
11、完成后说明书CN104102566A2/6页5CD/OPT/INTEL/COMPILER/111/072/MKL/BENCHMARKS/MP_LINPACK/BIN/EM64T在此可以看到HPLDAT和XHPL2个文件,其中HPLDAT为配置文件,XHPL为可执行程序;A启动MPD环境CD/ROOTVIMPDHOSTS/编辑主机列表文件,包含所有参加计算的节点主机名MPDBOOTNNUMBER/NUMBER表示启动机器数目,不大于MPDHOSTS文件所列节点数MPDTRACE/查看当前启动节点,正常情况会将所有启动节点名打印出来B进入执行脚本所在目录CD/OPT/INTEL/MKL/10120。
12、24/BENCHMARKS/MP_LINPACK/BIN_INTEL/EM64TC编辑配置文件HPL_SERIALDAT其中的6行为需要修改的参数,分别表示以下含义L2OFPROBLEMSSIZESN/有几组N,即需要解几组方程L10002000NS/矩阵N的规模,即矩阵的阶数L1OFNBS/有几组NB,即有几种分块方式L168NBS/NB值即表示分块大小为多少L1PSL4QS/二位处理器网格(PQ)D编辑脚本文件RUNME_EM64T修改文件中一句MPIEXECNP64/XHPL_EM64T|TEEAXHPL_EM64T_OUTPUTSTXT中的NP后面的值,应该等于PQ;E执行脚本RUNM。
13、E_EM64T/RUNME_EM64T(4)大压力测试一段时间后如果再出现故障,再次通过解析MCELOG记录信息由此可以判断出故障随着目前的0号CPU为故障CPU,进行更换处理。0006本发明的优点是本发明的一种排查多路众核服务器CPU故障的方法和现有技术相比,可以及时、快速的发现CPU的故障问题,本发明还具有设计合理、结构简单、易于加工、使用方便等特点,因而,具有很好的使用价值。附图说明0007图1为一种排查多路众核服务器CPU故障的方法的结构示意图。具体实施方式0008下面结合附图对本发明的一种排查多路众核服务器CPU故障的方法作以下详细说明。0009如图1所示,本发明的一种排查多路众核服。
14、务器CPU故障的方法通过对LINUX系统下自带的MCELOG记录文件以及CPUINFO文件解析,将MCELOG中记录的故障的逻辑CPU解说明书CN104102566A3/6页6析到物理CPU,然后通过对调故障CPU位置,同时对CPU及内存大压力测试来定位其故障。0010某企业购买浪潮TS850满配服务器,其配置为8颗物理CPU,每颗CPU为8核心,不开超线程技术的情况下,其逻辑CPU达到64核之众。0011应用中出现死机故障,同时/VAR/LOG/MCELOG出现报错信息,但MCELOG记录的CPU为逻辑CPU,其与物理CPU对于关系并不是按序对应。0012LINPACK可以使用INTELMK。
15、L数学库中标准编译出来的测试程序,通过设定相应参数可以让所有CPU核心的使用率达到100,同时使物理内存的利用率达到95以上,CPU与内存之间进行频繁通讯。这种压力测试不是MEMTEST配合单纯CPU压力测试所能达到的效果,CPU与内存之间的通讯更加紧密。0013(1)MCELOG报错介绍以下面这个MCELOG报错为例MCE0HARDWAREERRORTHISISNOTASOFTWAREPROBLEMPLEASECONTACTYOURHARDWAREVENDORCPU0BANK0MISC2MCGSTATUSMCISTATUSMCI_MISCREGISTERVALIDMCABUSLEVEL3GE。
16、NERICGENERICOTHERTRANSACTIONREQUESTTIMEOUTERRORBQ_DCU_READ_TYPEBQ_ERR_HARD_TYPEBQ_ERR_HARD_TYPETIMEOUTBINITROBTIMEOUTNOMICROINSTRUCTIONRETIREDFORSOMETIMESTATUS8800004000020E0FMCGSTATUS0可以看出CPU0号逻辑CPU出现异常。0014(2)在LINUX系统下,打开/PROC/CPUINFO文件,文件中显示如下信息PROCESSOR0VENDOR_IDGENUINEINTELCPUFAMILY6MODEL47MODE。
17、LNAMEINTELRXEONRCPUE78837267GHZSTEPPING2CPUMHZ2666844CACHESIZE24576KBPHYSICALID1SIBLINGS8COREID0CPUCORES8APICID32FPUYESFPU_EXCEPTIONYES说明书CN104102566A4/6页7CPUIDLEVEL11WPYESFLAGSFPUVMEDEPSETSCMSRPAEMCECX8APICSEPMTRRPGEMCACMOVPATPSE36CLFLUSHDTSACPIMMXFXSRSSESSE2SSHTTMSYSCALLNXPDPE1GBRDTSCPLMCONSTANT_T。
18、SCIDANONSTOP_TSCARATPNIMONITORDS_CPLVMXSMXESTTM2SSSE3CX16XTPRSSE4_1SSE4_2POPCNTLAHF_LMBOGOMIPS533368CLFLUSHSIZE64CACHE_ALIGNMENT64ADDRESSSIZES44BITSPHYSICAL,48BITSVIRTUALPOWERMANAGEMENT8通过MCELOG记录报错显示是CPU0BANK0出错,查找CPUINFO文件,可以确定,报错CPU的逻辑号为PROCESSOR0,逻辑号0对应的PHYSICALID为1,可以定位报错的CPU物理号为CPU1。0015(3)、更换。
19、物理1号CPU,对调1号与0号CPU故障,进行LINPACK压力测试L使用INTELMKL软件中自带的脚本进行测试,所以要保证MKL的正确安装L使用INTELMPI软件运行测试,所以保证INTELMPI软件的正确安装,且初始化节点MPD环境。0016以ROOT用户编译LINPACKCD/OPT/INTEL/COMPILER/111/072/MKL/BENCHMARKS/MP_LINPACKMAKEARCHEM64T编译完成后CD/OPT/INTEL/COMPILER/111/072/MKL/BENCHMARKS/MP_LINPACK/BIN/EM64T在此可以看到HPLDAT和XHPL2个文件。
20、,其中HPLDAT为配置文件,XHPL为可执行程序。0017A启动MPD环境CD/ROOTVIMPDHOSTS/编辑主机列表文件,包含所有参加计算的节点主机名文件内容形如MPDBOOTNNUMBER/NUMBER表示启动机器数目,不大于MPDHOSTS文件所列节点数MPDTRACE/查看当前启动节点,正常情况会将所有启动节点名打印出来B进入执行脚本所在目录CD/OPT/INTEL/MKL/1012024/BENCHMARKS/MP_LINPACK/BIN_INTEL/EM64TC编辑配置文件HPL_SERIALDATL2OFPROBLEMSSIZESN/有几组N,即需要解几组方程L100020。
21、00NS/矩阵N的规模,即矩阵的阶数【对结果并没有很高的性能要求,一般N值取1或2就行,注意N值为几则对应的NS就要有几个值;矩阵的规模NS值参考系统内存设定,一般占用内存的80左右最佳,例如16G说明书CN104102566A5/6页8内存的情况下,NS取值41448,如果为了加快测试速度,可减小NS值。】L1OFNBS/有几组NB,即有几种分块方式L168NBS/NB值即表示分块大小为多少【NBS不能太大或太小,一般在32到256之间,此处建议取192或224】L1PSL4QS/二位处理器网格(PQ)【首先规定PQ进程数,另外一般PQ,P2的N次幂。也就是说,PQ核心数,例如有64核心,即。
22、可取P为8,Q为64】D编辑脚本文件RUNME_EM64T修改文件中一句MPIEXECNP64/XHPL_EM64T|TEEAXHPL_EM64T_OUTPUTSTXT中的NP后面的值,应该等于PQE执行脚本RUNME_EM64T/RUNME_EM64T。0018(4)大压力测试一段时间后如果再出现故障,再次通过解析MCELOG记录信息MCE1HARDWAREERRORTHISISNOTASOFTWAREPROBLEMPLEASECONTACTYOURHARDWAREVENDORCPU22BANK0MISC2MCGSTATUSMCISTATUSMCI_MISCREGISTERVALIDMCAB。
23、USLEVEL3GENERICGENERICOTHERTRANSACTIONREQUESTTIMEOUTERRORBQ_DCU_READ_TYPEBQ_ERR_HARD_TYPEBQ_ERR_HARD_TYPETIMEOUTBINITROBTIMEOUTNOMICROINSTRUCTIONRETIREDFORSOMETIMESTATUS8800004000020E0FMCGSTATUS0可以看出CPU22号逻辑CPU出现异常。0019查看CPUINFO信息PROCESSOR22VENDOR_IDGENUINEINTELCPUFAMILY6MODEL47MODELNAMEINTELRXEONRC。
24、PUE78837267GHZSTEPPING2CPUMHZ2666844CACHESIZE24576KBPHYSICALID0SIBLINGS8COREID0CPUCORES8说明书CN104102566A6/6页9APICID32FPUYESFPU_EXCEPTIONYESCPUIDLEVEL11WPYESFLAGSFPUVMEDEPSETSCMSRPAEMCECX8APICSEPMTRRPGEMCACMOVPATPSE36CLFLUSHDTSACPIMMXFXSRSSESSE2SSHTTMSYSCALLNXPDPE1GBRDTSCPLMCONSTANT_TSCIDANONSTOP_TSCA。
25、RATPNIMONITORDS_CPLVMXSMXESTTM2SSSE3CX16XTPRSSE4_1SSE4_2POPCNTLAHF_LMBOGOMIPS533368CLFLUSHSIZE64CACHE_ALIGNMENT64ADDRESSSIZES44BITSPHYSICAL,48BITSVIRTUALPOWERMANAGEMENT8由此可以判断出故障随着目前的0号CPU为故障CPU,进行更换处理。0020本发明的一种排查多路众核服务器CPU故障的方法其加工制作非常简单方便,按照说明书附图所示即可加工。0021除说明书所述的技术特征外,均为本专业技术人员的已知技术。说明书CN104102566A1/1页10图1说明书附图CN104102566A10。