内存性能测试工具使用

这篇文章介绍了两个IT技术测试工具:bw_mem用于测量内存带宽,支持指定并行度、预热时间和重复次数;lat_mem_rd则专注于内存读取延迟测试,提供随机和顺序访问模式。文章详细解释了如何配置和执行这些测试,以及它们在CPU多核环境下的应用。
摘要由CSDN通过智能技术生成

bw_mem介绍

bw_mem是lmbench套件中的一个子测试工具,用于测试内存带宽,可以对内存RAM进行指定容量读写测试
参数说明:
-P :指定并行度(默认为1),即同时进行读写操作的线程数。
-W :指定预热时间(默认为2秒),即测试前先进行一段时间的数据填充以缓存命中率达到稳定状态,避免影响测试结果。
-N :指定重复次数(默认为10次),即每个块大小和并行度组合下测试多少轮。
size:每个块的大小,单位为字节。
what:表示要测试的类型,包括:
rd: 顺序读取
wr: 顺序写入
rdwr: 读写交替进行
cp: 单线程复制操作
fwr: 随机写入
frd: 随机读取
fcp: 随机复制操作
bzero: 填充0操作
bcopy: 内存拷贝操作
例如,如果想要测试10M块大小、随机读取、并行度为4、预热时间为3秒、重复10次的情况,则运行以下命令:
bw_mem -P 4 -W 3 -N 10 16M frd

测试内容:
测试cpu0~cpu7每个cpu从内存的读写带宽

测试方法:

用cpu0举例,其他cpu核方法一致,测试cpu0对内存的读写速度

  1. 拔掉其他7个cpu核,只保留cpu0在线
  2. echo > 0 /sys/devices/system/cpu/cpu(n)/online,n取值1~7,分别执行拔核动作,需要执行七次该命令
  3. cat /sys/devices/system/cpu/cpu(n)/online 分别读取各个cpu online节点的值,如果是0表示拔核成功
  4. cat sys/devices/system/cpu/online 查看哪个cpu在线
    测试举例:
    把bw_mem push 到系统data目录,修改bw_mem的执行权限
    chmod 777 bw_mem

lat_mem_rd

lat_mem_rd介绍
lat_mem_rd用于内存读取的延迟测试
运行以下命令来测试内存读取延迟:
./lat_mem_rd -P 1 -t -N 10 1M 16
参数说明:

  • -P 1:使用一个进程 进行测试。
  • ` -t:随机访问模式,若无此选项为顺序访问。
  • -N 10:进行 10 次测试并输出平均值。
    1M:访问的最大数据块,单位M
    16:访问的步长大小,单位Byte(如果不写默认是64)
    测试结果
    stride=16
    0.00049 1.584
    0.00098 1.583
    0.00195 1.593
    0.00293 1.593
    0.00391 1.597
    0.00586 1.598
    0.00781 1.600
    0.01172 1.600
    0.01562 1.602
    0.02344 1.602
    0.03125 1.628
    0.04688 2.230
    0.06250 2.207
    0.09375 2.205
    0.12500 2.204
    0.18750 2.237
    0.25000 2.278
    0.37500 2.326
    0.50000 2.351
    0.75000 2.345
    1.00000 2.349
    执行结果的左侧为数据块大小,单位为兆M;右侧为在该数据块大小时测得的延时,延时单位是纳秒ns

测试内容:
我们需要分别测试cpu0~cpu7每个cpu从内存的读数据延时,数据块1M,测试步长分别为16,64,128

把lat_mem_rd push 到系统data目录,修改bw_mem的执行权限
chmod 777 lat_mem_rd

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值