CPU性能优化--基于处理器事件的采样

基于处理器事件的采样processor event based sampling PEBS 是CPU的另一种非常有用的特性,PEBS被用来在每个采样点获取更多的补充数据。在Intel处理器中,PEBS是在NetBrust微架构开始i引入的,在AMD处理器中,类似的特性叫基于指令的采样IBS。

这些补充数据有定义好的格式,为PEBS配置性能计数器之后,处理器会保存PEBS缓冲区的内容,并将之转存到内存中。记录的信息包括处理器的架构状态,例如,通用的寄存器,EAX, EBX, ESP等,指令指针寄存器EIP和标志寄存器EFLAGS 等的状态,

用户可以通过dmesg命令来检查PEBS是否启用。

字节偏移 字段 字节偏移 字段

EFLAGS R11

EIP R12

RAX R13

EBX R14

ECX R15

EDX

ESI

EDI

EBP

ESP

linux perf工具没像处理LBR那样原始PEBS内容导出来基于具体需要处理PEBS记录导出部分数据所以不可能通过linux perf工具导出原始PEBS数据linux perf工具提供一些原始采样数据处理后PEBS数据可以通过命令perf report -D获得获得原始PEBS记录可以使用pebs-grabber 工具

6.3.1 精准事件

出现溢出导致中断处理器需要一定时间停止执行标记触发溢出指令这对现代复杂乱序执行CPU架构来说实现起来非常困难

引入滑动概念被定义触发性能事件IP标记事件IPPEBS记录IP字段距离

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值