I'm collecting some profiling information on intel using perf record about taken branches and I'm using -b to make use of LBR. Is there any similar support on ARM and PowerPC? And yes I've seen this: Is Intel's Last Branch Record feature unique to Intel processors?
what's the equivalent of Last Branch Record (LBR) on ARM and POWERPC?
File web.eece.maine.edu/~vweaver/projects/perf_events/sampling/… from 2016 lists no equivalent for ARM in 2.4 section and no data known to author for POWER in 2.5 section: "2.4 ARM ARM has no PEBS or IBS equivalent, but it does have something similar to processor trace called CoreSight". POWER9 PMU has BHRB (Branch history rolling buffer) wiki.raptorcs.com/w/images/6/6b/… but I not sure is it the same as LBR –
Bigg
For ARM CPUs this option has been available since ARMv9.2-A - it's called Branch Record Buffer Extension (BRBE). More information about the topic: https://lwn.net/Articles/951316/ .
Regarding PowerPC. Just got an update from PowerPC maintainers in the Linux kernel. For PowerPC, such a feature is called Branch History Rolling Buffer (BHRB). It's available since Power8 (~2013).
I'm using an ARMv8.2-based system with Linux kernel 4.14.76 in big-endian mode. I need to profile my application using perf for feedback-driven optimization with BOLT ( research.facebook.com/publications/… ), which benefits from Intel's LBR hardware support. Are there any workarounds for older ARM architectures to provide similar profiling capabilities as LBR on Intel in order to do post-link optimization of my application binary using BOLT ? –
Theorize
© 2022 - 2025 — McMap. All rights reserved.