I have a test case to observe perf iTLB-loads,iTLB-load-misses by
perf stat -e dTLB-loads,dTLB-load-misses,iTLB-loads,iTLB-load-misses -p 22479
On your Broadwell processor, perf maps iTLB-loads
to ITLB_MISSES.STLB_HIT
, which represents the event of a TLB lookup that misses the L1 ITLB but hits the unified TLB for all page sizes, and iTLB-load-misses
to ITLB_MISSES.MISS_CAUSES_A_WALK
, which represents the event of a TLB lookup that misses both the L1 ITLB and the unified TLB (causing a page walk) for all page sizes. Therefore, iTLB-load-misses
can be larger or smaller than or equal to iTLB-loads
. They are independent events.