• Paul Mackerras's avatar
    perf_counter: add an mmap method to allow userspace to read hardware counters · 37d81828
    Paul Mackerras authored
    Impact: new feature giving performance improvement
    
    This adds the ability for userspace to do an mmap on a hardware counter
    fd and get access to a read-only page that contains the information
    needed to translate a hardware counter value to the full 64-bit
    counter value that would be returned by a read on the fd.  This is
    useful on architectures that allow user programs to read the hardware
    counters, such as PowerPC.
    
    The mmap will only succeed if the counter is a hardware counter
    monitoring the current process.
    
    On my quad 2.5GHz PowerPC 970MP machine, userspace can read a counter
    and translate it to the full 64-bit value in about 30ns using the
    mmapped page, compared to about 830ns for the read syscall on the
    counter, so this does give a significant performance improvement.
    Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
    Signed-off-by: default avatarPeter Zijlstra <a.p.zijlstra@chello.nl>
    Orig-LKML-Reference: <20090323172417.297057964@chello.nl>
    Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
    37d81828
perf_counter.c 60 KB