0

I'm using Oprofile to profile some benchmarks, I'm looking specifically for caching issues. I'm with the Intel SDM Volume 3 (from March 2013) as my guide for choosing what events to monitor... however it's being a pain..

The computer I'm doing the experiments is a i7 3630QM (that is, Ivy Bridge), so in the manual I'm looking in tables 19-1 and 19-5, the problem is: which events should I use to measure L1{D,I} cache events? What about L3 (LLC)? Sincerely, the events description of table 19-5 are more vague than the habitual.

My system is Ubuntu 13.04.

JohnTortugo
  • 6,356
  • 7
  • 36
  • 69

1 Answers1

0

Use perf list to get a list of the supported events and their perf names. You'll see events like L1-dcache-loads and LLC-load-misses that you can use.

FYI, it usually takes a while for a new microarchitecture to make it into perf in the kernel, and another while for that kernel version to make it into distributions, so it might happen that your kernel isn't Ivy Bridge aware if you're using, say, the default kernel with Ubuntu 12.04 LTS.

Emmet
  • 6,192
  • 26
  • 39
  • I'm sorry I'll edit my question. Currently I'm using only Oprofile. I guess they use the same event list and interface (perf_events). But I didn't remember seeing anything like L1-d or LLC in ophelp output. – JohnTortugo Sep 02 '13 at 21:38
  • “Look at oprofile. F*ck me, what a horrid piece of crap.” — Linus Torvalds. – Emmet Sep 02 '13 at 21:42
  • Ask Linus :) I think it was in the context of a suggestion to take the userland `perf` tools out of the kernel source, which he opposed using `oprofile` as a counter example because its userland tools and kernel module had gotten very out-of-sync and turned into a giant mess. – Emmet Sep 02 '13 at 23:31