summaryrefslogtreecommitdiff
path: root/mm/vmalloc.c
diff options
context:
space:
mode:
authorLen Brown <len.brown@intel.com>2016-02-27 03:11:29 -0500
committerLen Brown <len.brown@intel.com>2016-03-13 03:55:41 -0400
commit0102b06747c7d24e334d2b27c4b43eed693676f1 (patch)
tree6da6cef237200c4bc3743676dfb0d8371b98ee82 /mm/vmalloc.c
parentfdf676e51f301d207586d9bac509b8ce055bae8a (diff)
tools/power turbostat: detect and work around syscall jitter
The accuracy of Bzy_Mhz and Busy% depend on reading the TSC, APERF, and MPERF close together in time. When there is a very short measurement interval, or a large system is profoundly idle, the changes in APERF and MPERF may be very small. They can be small enough that an expensive interrupt between reading APERF and MPERF can cause the APERF/MPERF ratio to become inaccurate, resulting in invalid calculation and display of Bzy_MHz. A dummy APERF read of APERF makes this problem much more rare. Apparently this 1st systemn call after exiting a long stretch of idle is when we typically see expensive timer interrupts that cause large jitter. For the cases that dummy APERF read fails to prevent, we compare the latency of the APERF and MPERF reads. If they differ by more than 2x, we re-issue them. Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'mm/vmalloc.c')
0 files changed, 0 insertions, 0 deletions