作者:李春港
出处:https://www.cnblogs.com/lcgbk/p/14497838.html
一、简介
memtester是对内存子系统进行压力测试的有效用户空间测试器。可以捕获内存错误和一直处于很高或者很低的坏位。memtester是用于对内存子系统进行压力测试的有效用户空间测试仪。 它对于发现间歇性和不确定性故障非常有效。 请注意,其他硬件区域中的问题(CPU过热,电源规格不合格等)可能会导致间歇性内存故障,因此,您仍然可以通过正常的硬件诊断程序来确定故障的出处;方法仅对您有所帮助 您确定是否存在问题。
其工具适合用于一下系统:
- HP Tru64 Unix 4.0g (Alpha)
- HP Tru64 Unix 5.1b (Alpha)
- HP-UX 11i 11.11 (PA-RISC)
- HP-UX 11i 11.23 (64-bit Itanium)
- Debian GNU/Linux 3.0 (various)
- other 32-bit Linux (RedHat, SuSE, Ubuntu, etc) (various)
- RedHat Enterprise Linux/CentOS (64-bit AMD Opteron)
- FreeBSD 4.9 (32-bit Intel)
- FreeBSD 5.1 (64-bit Alpha)
- NetBSD 1.6 (32-bit Intel)
- Darwin (OS X) 7.5.0 (32-bit PowerPC)
- OS X Leopard/Panther/whatever -- 32- or 64-bit, PPC or x86
二、Memtester安装
- 下载memtester-x.x.x.tar.gz源码压缩包:
http://pyropus.ca/software/memtester/ - 解压压缩包,进入memtester-x.x.x目录:
tar -zxvf memtester-4.3.0.tar.gz
cd memtester-x.x.x/
- 配置编译工具和生成目录:
step 1:
修改conf-cc 、 conf-ld 文件中的cc为自身的交叉编译工具,例如我的交叉编译工具为arm-hisiv300-linux-gcc,则将cc改为arm-hisiv300-linux-gcc
step2:
修改目录下的Makefile:INSTALLPATH = /usr/local 为 INSTALLPATH = ./usr/local
- 编译、安装,最终可执行文件memtester会放在当前目录./usr/local/bin下
make
make install
三、使用说明
将以上生成的二进制文件拷贝到你需要测试的机器上,按照自身需求对机器的进行内存压力测试,memtester必须以root用户身份运行,格式如下:
memtester [-p physaddr] <memory> <runs>
- [-p physaddr] :是一个可选的选项,可选的“ -p physaddr”参数可用于使memtester从特定的物理内存地址开始测试内存,以physaddr的偏移量(以十六进制表示)开始。指定的内存将在测试期间被覆盖;因此,您不能指定属于内核或其他应用程序的区域,不然会导致其他进程或整个系统崩溃。如果使用此选项,则由您决定是否可以安全地覆盖指定的内存。
- < memory > :是要测试的内存量,默认情况下以兆字节为单位。您可以选择包括后缀B,K,M或G(分别用于字节,千字节,兆字节和千兆字节)。
- < runs > :是对所有测试的运行次数的可选限制。
四、测试示例
压力测试海思芯片用于mpp的ddr内存,如下: