Linux缓存命中率查看

cachestat/cachetop

安装bcc-tools包,bcc-tools需要内核4.1以上版本

yum install -y bcc-tools

配置PATH路径

export PATH=$PATH:/usr/share/bcc/tools

cachestat 是Linux系统的整体缓存命中率

cachetop是类似top命令,可以查看具体进程的缓存命中率


pcstat(page cache stat)

pc是page cache的意思,可以查看文件里面有多少在内存命中:


vmtouch(Virtual Memory Toucher)

page cache的查看和操控工具


valgrind

Valgrind是一款用于内存调试、内存泄漏检测以及性能分析的软件开发工具。

# yum -y install valgrind
# valgrind --tool=cachegrind app #app为程序名
# 检测程序内存问题
valgrind --tool=memcheck --leak-check=full --log-file=./log.txt  ./程序名


perf

这个就不用解释了吧。

# yum install -y perf
# perf stat -e cache-misses app

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
perf是一个性能分析工具,可以用于测量程序的各种性能指标,包括L2命中率。L2命中率是指CPU的二级缓存(L2 Cache)中的数据被成功命中的比例。 要使用perf测量L2命中率,可以按照以下步骤进行操作: 1. 安装perf工具:首先需要确保系统中已经安装了perf工具。在Linux系统中,可以使用包管理器进行安装,例如在Ubuntu上可以使用以下命令进行安装: ``` sudo apt-get install linux-tools-common linux-tools-generic ``` 2. 启用L2命中率统计:在进行性能分析之前,需要确保L2命中率统计功能已经启用。可以通过修改/sys/devices/cpu/cpuX/cache/indexX/目录下的文件来启用L2命中率统计,其中cpuX表示CPU核心编号,indexX表示缓存层级编号。具体的文件名可能因系统而异,一般为以下之一: - coherency_line_size:缓存行大小 - number_of_sets:缓存组数 - ways_of_associativity:关联度 - size:缓存大小 可以使用以下命令查看当前系统中的缓存信息: ``` ls /sys/devices/cpu/cpuX/cache/ ``` 3. 运行perf命令进行测量:使用perf命令进行性能测量,可以使用以下命令来测量L2命中率: ``` perf stat -e L2_RQSTS:ALL_DEMAND_REFERENCES,L2_RQSTS:ALL_PF_REFERENCES -p <pid> ``` 其中,-e参数用于指定要统计的事件,L2_RQSTS:ALL_DEMAND_REFERENCES表示所有的读取请求,L2_RQSTS:ALL_PF_REFERENCES表示所有的预取请求。-p参数用于指定要监测的进程ID。 运行perf命令后,会输出一些统计信息,其中包括L2命中率的统计结果。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值