一种Linux服务器的内存压力测试方法

文档序号:6546546阅读:2485来源:国知局
一种Linux服务器的内存压力测试方法
【专利摘要】本发明公开了一种Linux服务器的内存压力测试方法,所述测试方法流程为:1)在需要进行内存压力测试的Linux服务器上,将MemTest脚本和memtester-4.3.0.tar.gz文件拷贝至任意目录;2)赋予脚本文件可执行权限:#chmod777MemTest;3)执行脚本程序:#./MemTest;4)测试结果分析。采用本发明的方法,无需安装第三方软件,简单易用;使用Shell脚本编写,通用性强,可跨平台测试;自动计算最佳的测试参数,支持自定义循环次数,适应不同的测试环境;多进程并发,测试效率高;程序无残留文件,不会对系统造成影响。
【专利说明】—种Linux服务器的内存压力测试方法
【技术领域】
[0001]本发明涉及一种Linux服务器的内存压力测试方法,涉及Linux服务器在判断内存通道故障时的压力测试方法,以及检验内存工作稳定性的拷机测试方法。
技术背景
[0002]随着内存技术的不断发展,单条内存的容量变得越来越大,在满足服务器业务日益增长的程序运行空间的同时,也使得我们检测内存性能与稳定的工作变得越来越繁琐。通常情况下,在业务计算量不大时,内存的存取效率和准确度是比较理想的。但随着访问服务器的用户越来越多,大量数据、指令通过内存与CPU的交互越来越频繁,对内存的压力也就越来越大,服务器的整体稳定性就会受到极大考验。但是我们在实际测试过程中,很难模拟用户现场真实的内存压力状况,因此很难进行快速定位与检测。
[0003]本测试方法通过,可以捕获内存错误和一直处于高位或者低位的坏地址,其测试的主要项目有随机值、异或比较、减/乘/除法、与/或运算等,可用于发现间歇性故障和非确定性故障,对于判断内存故障起到了重要作用。另外,内存控制器的故障也能在压力测试中迅速检出。而且,对于一台新机器,出于拷机测试的目的也需要对其进行压力测试,以确保所有的内存稳定可靠,不存在无法纠正的ECC错误等。
[0004]虽然目前也有 较多的内存压力测试工具,但是大都针对Windows系统,极少的几款针对Linux系统的工具也因为安装麻烦、测试手段单一等缺点而少有人使用。本测试方法借助memtester用户态工具,使用自编程序根据内存总量和CPU逻辑核心数计算最佳的测试参数,多进程并发,测试效率高,易于推广。

【发明内容】

[0005]本发明要解决的技术问题是:提供一种Linux服务器的内存压力测试方法。
[0006]本发明所采用的技术方案为:
一种Linux服务器的内存压力测试方法,所述测试方法流程为:
1)在需要进行内存压力测试的Linux服务器上,将MemTest脚本和memtester-4.3.0.tar.gz文件拷贝至任意目录,比如/root目录等;
2)赋予脚本文件可执行权限:#chmod777 MemTest ;
3)执行脚本程序 .#./MemTest ;
4)测试结果分析。
[0007]所述MemTest脚本程序内容如下:
#!/bin/bash
which memtester >& /dev/null
if [ $? -eq I ]
then
echo "Installing Memtester...〃
【权利要求】
1.一种Linux服务器的内存压力测试方法,其特征在于,所述测试方法流程为: 1)在需要进行内存压力测试的Linux服务器上,将MemTest脚本和memtester-4.3.0.tar.gz文件拷贝至任意目录; 2)赋予脚本文件可执行权限:#chmod777 MemTest ; 3)执行脚本程序..#./MemTest ; 4)测试结果分析。
2.根据权利要求1所述一种Linux服务器的内存压力测试方法,其特征在于,所述MemTest脚本程序内容如下:
3.根据权利要求1或2所述一种Linux服务器的内存压力测试方法,其特征在于,步骤3)中执行脚本程序过程如下: (1)程序运行时会首先检测memtester工具是否已经安装,如果没有则进行安装,如果已经安装则进入下一步; (2)计算测试参数,读取当前服务器的处理器核心数,并记录为变量CP,每隔IOs钟读取一次当前剩余的物理内存,共计三次分别记录为MEM1、MEM2、MEM3,则平均的内存总量为MEM=(MEM1+MEM2+MEM3)/3 ; (3)输入循环测试次数,根据故障情况和需要检测的时间自行决定; (4)开始测试,所有进程后台运行。
4.根据权利要求1或2所述一种Linux服务器的内存压力测试方法,其特征在于,步骤4)测试结果分析内容如下: (1)如果在压力测试过程中机器出现死机、重启问题,说明服务器的内存通道有存在异常的可能,后续通过分组、最小化测试方法定位故障; (2)如果测试过程中没出现问题,测试完成后会在MemTest所在的目录生成测试报告MemTest_result,包括每个进程的测试情况、每个项目的检测结果; (3)检查服务器的系统日志、IPMI日志,查看有无相关报错; (4)最后,对有问题的内存进行维修与更换。
5.根据权利要求3所述一种Linux服务器的内存压力测试方法,其特征在于,所述步骤(2)中根据负载均衡算法, 测试的进程数为CPU核心数的4倍,效果最佳,此时,PROC_NUM=CPU*4,每个进程需要测试的内存容量为PROC_MEM=MEM/PROC_NUM。
【文档编号】G06F11/36GK103984627SQ201410203997
【公开日】2014年8月13日 申请日期:2014年5月15日 优先权日:2014年5月15日
【发明者】李洋, 任华进 申请人:浪潮电子信息产业股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1