perf_event self-monitoring overhead
compared against perfctr and perfmon2
The new Linux perf_event performance counter interface has more overhead
than previous Linux performance counter interfaces.
On this page I compare the overhead of various
Linux hardware performance counter implementations.
Publications
A summary of my findings as of January 2015 can be found in
the following
ISPASS 2015 paper:
- V.M. Weaver.
"Self-monitoring Overhead of the Linux perf_event
Performance Counter Interface",
IEEE International Symposium on Performance Analysis of
Systems and Software (ISPASS 2015), Philadelphia, Pennsylvania,
March 2015.
- The IEEE would prefer you obtain this paper through their
IEEE Explore interface (link to this when available)
- You can also view my personal copy of the paper. Warning!
IEEE Copyright rules apply!
2015_ispass_overhead.pdf
- Here are the slides from the talk I gave at ISPASS:
ispass2015_overhead_slides.pdf
A preliminary version of this work was presented in April 2013 at the
2013 FastPath workshop:
Tools
The tools used to generate the data and plots can be obtained
from git:
git clone git://github.com/deater/perfevent_overhead.git
Older Results
Kernel Comparison
The outliers are caused by L2 cache misses as well as DTLB misses.
rdpmc Results
Compiler Results
Older results comaring amd0f/atom/core2/nehalem
Some even older results
Back to the perf_event overhead page