使用memtester工具对嵌入式Linux内存压力测试_memtester内存压力测试占用内存越来越多(2)

收集整理了一份《2024年最新物联网嵌入式全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升的朋友。
img
img

如果你需要这些资料,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人

都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

执行“make”编译生成可执行文件“memtester”;然后执行“make install”将执行文件安装到系统,并加入环境变量。嵌入式环境下,我们一般不选择安装,直接把可执行文件拷贝到系统执行即可。

3.2 使用

3.2.1 命令使用格式

memtester工具使用命令格式为memtester [-p 内存物理起始地址] [测试内存大小B/K/M/G] [测试次数]。命令格式不是固定的,可以省略部分。

  • 省略测试次数,则连续进行测试,直到手动结束
  • 省略内存物理起始地址,则由系统随机选择空闲内存测试

实例:

#对1G内存测试100次
./memtester 1G 100

#对2G内存进行连续测试
./memtester 2G

#从0x00010000地址开始测试1G内存100次
./memtester -p 0x10000 1G 100

更详细的介绍和使用说明可执行more README查看。

3.2.2 测试结果

如果有测试项不通过,会输出对应的异常项目;否则会循环测试,直到测试次数完成或者手动结束。

我们首先在X64 Ubuntu上编译测试。

#查看可执行文件类型
acuity@ubuntu:/mnt/hgfs/LSW/software/memtester-4.5.0$ file memtester
memtester: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=a0dcd3ddc63cb0aa9defa6db7a065195ed9c28cd, stripped

  • 首先查看系统剩余空闲内存,确保测试内存不要超出剩余空间
#free命令查看的内存大小单位为K
acuity@ubuntu:/mnt/hgfs/LSW/software/memtester-4.5.0$ free
              total        used        free      shared  buff/cache   available
Mem:        8156736      261328     6498036       13748     1397372     7541972
Swap:             0           0           0

  • 执行测试
#对100M内存测试2次
./memtester 100M 2
Loop 1/2:
  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

Loop 2/2:
  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

Done.

如果存在测试失败项,会有提示“failure”,进而意味内存芯片本身存在问题或者PCB稳定性存在问题。

4 在RK3399平台上测试

修改配置文件,交叉编译在RK3399板子上测试,通过U盘、以太网、WiFi等手段将可执行文件拷贝到板子上。以下方式通过U盘方式执行。

  • 第一步,接入U盘后,查看存储名称,这里为sda1
firefly@firefly:~$ cat /proc/partitions
major minor  #blocks name

   1        0       4096 ram0
 179        0   15267840 mmcblk1
 179        1       4096 mmcblk1p1
 179        2       4096 mmcblk1p2
 179        3      32768 mmcblk1p3
 179        4      32768 mmcblk1p4
 179        5   15083503 mmcblk1p5
 179       96       4096 mmcblk1rpmb
 179       64       4096 mmcblk1boot1
 179       32       4096 mmcblk1boot0
   8        0   15649792 sda
   8        1   15649776 sda1

  • 第二步,手动挂载到"/home"目录(可以挂载到任意目录),这一步需要root权限。
root@firefly:~# mount -t vfat /dev/sda1 /home

  • 第三步,进入"/home"目录,将memtester拷贝到"/usr"目录;然后切换至"/usr"目录,并执行。
root@firefly:~# cd /home
root@firefly:~# cp memtester /usr
root@firefly:~# cd /usr
root@firefly:/usr# ./memtester 1G 1

此时memtester文件可能没有执行权限,需修先改文件属性为“可执行”,再执行。

root@firefly:/usr# chmod 777 memtester 
root@firefly:/usr# ./memtester 1G 1

测试结果:

root@firefly:/usr# ./memtester 1G 1
memtester version 4.5.0 (64-bit)
Copyright (C) 2001-2020 Charles Cazabon.
Licensed under the GNU General Public License version 2 (only).

pagesize is 4096
pagesizemask is 0xfffffffffffff000
want 1024MB (1073741824 bytes)
got  1024MB (1073741824 bytes), trying mlock ...locked.


**收集整理了一份《2024年最新物联网嵌入式全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升的朋友。**
![img](https://img-blog.csdnimg.cn/img_convert/5249603735db0f18e224e1fa695cfd51.png)
![img](https://img-blog.csdnimg.cn/img_convert/d2ae4f5076a46661cc62f861a9101a92.png)

**[如果你需要这些资料,可以戳这里获取](https://bbs.csdn.net/topics/618679757)**

**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人**

**都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**

RCKk-1715710782732)]
[外链图片转存中...(img-uBnlXplQ-1715710782733)]

**[如果你需要这些资料,可以戳这里获取](https://bbs.csdn.net/topics/618679757)**

**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人**

**都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**

  • 5
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值