• DocumentCode
    704741
  • Title

    Self-monitoring overhead of the Linux perf_ event performance counter interface

  • Author

    Weaver, Vincent M.

  • Author_Institution
    Electr. & Comput. Eng., Univ. of Maine, Orono, ME, USA
  • fYear
    2015
  • fDate
    29-31 March 2015
  • Firstpage
    102
  • Lastpage
    111
  • Abstract
    Most modern CPUs include hardware performance counters: architectural registers that allow programmers to gain low-level insight into system performance. Low-overhead access to these counters is necessary for accurate performance analysis, making the operating system interface critical to providing low-latency performance data. We investigate the overhead of self-monitoring performance counter measurements on the Linux perf_event interface. We find that default code (such as that used by PAPI) implementing the perf_event self-monitoring interface can have large overhead: up to an order of magnitude larger than the previously used perfctr and perfmon2 performance counter implementations. We investigate the causes of this overhead and find that with proper coding this overhead can be greatly reduced on recent Linux kernels.
  • Keywords
    Linux; parallel architectures; performance evaluation; CPU; Linux perf-event interface; hardware performance counter; operating system interface; perf-event self-monitoring interface; performance analysis; performance counter interface; self-monitoring performance counter measurement; Hardware; Kernel; Libraries; Linux; Radiation detectors; Registers;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Performance Analysis of Systems and Software (ISPASS), 2015 IEEE International Symposium on
  • Conference_Location
    Philadelphia, PA
  • Type

    conf

  • DOI
    10.1109/ISPASS.2015.7095789
  • Filename
    7095789