memtester使用说明
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
memtester使用
2010-08-16 18:20:21| 分类:linux之路 |字号订阅
抄录一段官方的解释:
A userspace utility for testing the memory subsystem for faults. It's portable and should compile and work on any 32- or 64-bit Unix-like system. (Yes, even weird, proprietary Unices, and even Mac OS X.) For hardware developers, memtester can be told to test memory starting at a particular physical address as of memtester version 4.1.0.
操作步骤如下:
[root@localhost ~]# wget
http://pyropus.ca/software/memtester/old-versions/memtester-4.2.0.tar .gz
[root@localhost ~]# tar -xvf memtester-4.2.0.tar.gz
[root@localhost ~]# cd memtester-4.2.0
[root@localhost ~]# make && make install
[root@localhost memtester-4.2.0]# vi README
Using memtester
Usage is simple for the basic case. As root, run the resulting memtester binary with the following commandline:
memtester
An optional "-p physaddr" argument available to cause memtester to test
memory starting at a specific physical memory address (by mmap'ing /dev/mem starting at an offset of `physaddr`, which is given in hex). #以上是节选,直接跟要测试的内存的大小就可以,默认单位是M,也可以手动指定为B, K, M, or G; -p参数是指定内存物理地址的。
For example, if you want to test a bank of RAM or device which is 64kbytes in size and starts at physical
address 0x0C0000, you would run memtester as follows:
memtester -p 0x0c0000 64k [runs]
[root@localhost memtester-4.2.0]# memtester 256
memtester version 4.2.0 (32-bit)
Copyright (C) 2010 Charles Cazabon.
Licensed under the GNU General Public License version 2 (only).
pagesize is 4096
pagesizemask is 0xfffff000
want 256MB (268435456 bytes)
got 256MB (268435456 bytes), trying mlock ...locked.
Loop 1:
Stuck Address : ok
Random Value : ok
Compare XOR : ok
Compare SUB : ok
Compare MUL : ok
Compare DIV : ok
Compare OR : ok
Compare AND : ok
Sequential Increment: ok
Solid Bits : ok
Block Sequential : ok
Checkerboard : ok
Bit Spread : ok
Bit Flip : ok
Walking Ones : ok
Walking Zeroes : ok
8-bit Writes : ok
16-bit Writes : ok
注:测试结果仅仅截取了一部分。我测试的过程中,使用的机器内存为1G,swap 分区为4G。首次测试时,将测试的内存大小指为1G,机器死机。个人认为是由于memtester将内存全部占用导致的。
运行memteste非常简单,作为root ./ memtester
这样我们就可以对单颗CPU的机器进行测试,查看内存是否足够稳定。但如果我有多颗CPU和较大的memory呢?最简单的方法是多开几个终端,同时运行memtester,每个CPU分配同样大小的内存。还有一种方法可以使用Baif编写的一个脚本memtester-multi.sh,位置放在memtester-4.0.7下就可以了。这个脚本只在linux下有效!
#!/bin/sh
# Memory Tester Scripts
# by Baif
# version = date