Strategies and software support for the management of hardware performance counters

被引:0
|
作者
Carna, Stefano [1 ]
Marotta, Romolo [2 ,3 ]
Pellegrini, Alessandro [2 ]
Quaglia, Francesco [2 ]
机构
[1] Sapienza Univ Rome, DIAG, Rome, Italy
[2] Univ Roma Tor Vergata, DICII, Rome, Italy
[3] Ctr Nazl Ric High Performance Comp Big Data & Quan, Casalecchio Di Reno, BO, Italy
来源
SOFTWARE-PRACTICE & EXPERIENCE | 2023年 / 53卷 / 10期
关键词
autonomic computing; hardware performance counters; profiling; self-tuning;
D O I
10.1002/spe.3236
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Hardware performance counters (HPCs) are facilities offered by most off-the-shelf CPU architectures. They are a vital support to post-mortem performance profiling and are exploited by standard tools such as Linux or Intel V-Tune. Nevertheless, an increasing number of application domains (e.g., simulation, task-based high-performance computing, or cybersecurity) are exploiting them to perform different activities, such as self-tuning, autonomic optimization, and/or system inspection. This repurposing of HPCs can be difficult, for example, because of the overhead for extracting relevant information. This overhead might render any online or self-tuning activity ineffective. This article discusses various practical strategies to exploit HPCs beyond post-mortem profiling, suitable for different application contexts. The presented strategies are accompanied by a general primer on HPCs usage on Linux. We also provide reference x86 (both Intel and AMD) implementations targeting the Linux kernel, upon which we present an experimental assessment of the viability of our proposals.
引用
收藏
页码:1928 / 1957
页数:30
相关论文
共 50 条
  • [1] Hardware Performance Counters for Embedded Software Anomaly Detection
    Ott, Karl
    Mahapatra, Rabi
    2018 16TH IEEE INT CONF ON DEPENDABLE, AUTONOM AND SECURE COMP, 16TH IEEE INT CONF ON PERVAS INTELLIGENCE AND COMP, 4TH IEEE INT CONF ON BIG DATA INTELLIGENCE AND COMP, 3RD IEEE CYBER SCI AND TECHNOL CONGRESS (DASC/PICOM/DATACOM/CYBERSCITECH), 2018, : 528 - 535
  • [2] Automatic Method for Distinguishing Hardware and Software Faults Based on Software Execution Data and Hardware Performance Counters
    Park, Jihyun
    Choi, Byoungju
    ELECTRONICS, 2020, 9 (11) : 1 - 25
  • [3] Using Hardware Performance Counters to support infield GPU Testing
    Guerrero-Balaguera, Juan-David
    Condia, Josie E. Rodriguez
    Reorda, Matteo Sonza
    2021 28TH IEEE INTERNATIONAL CONFERENCE ON ELECTRONICS, CIRCUITS, AND SYSTEMS (IEEE ICECS 2021), 2021,
  • [4] Hardware and Software Support for Insect Pest Management
    Suto, Jozsef
    AGRICULTURE-BASEL, 2023, 13 (09):
  • [5] Exploiting hardware performance counters
    Uhsadel, Leif
    Georges, Andy
    Verbauwhede, Ingrid
    FDTC 2008: FAULT DIAGNOSIS AND TOLERANCE IN CRYPTOGRAPHY, PROCEEDINGS, 2008, : 59 - +
  • [6] Demand-Driven Software Race Detection using Hardware Performance Counters
    Greathouse, Joseph L.
    Ma, Zhiqiang
    Frank, Matthew I.
    Peri, Ramesh
    Austin, Todd
    ISCA 2011: PROCEEDINGS OF THE 38TH ANNUAL INTERNATIONAL SYMPOSIUM ON COMPUTER ARCHITECTURE, 2011, : 165 - 176
  • [7] Production-Run Software Failure Diagnosis via Hardware Performance Counters
    Arulraj, Joy
    Chang, Po-Chun
    Jin, Guoliang
    Lu, Shan
    ACM SIGPLAN NOTICES, 2013, 48 (04) : 101 - 112
  • [8] The Demonstration of Hyper Software Defined Hardware Counters
    Zhao, Tao
    Li, Tao
    Han, Biao
    Sun, Zhigang
    Huang, Jinfeng
    2014 IEEE 6TH INTERNATIONAL CONFERENCE ON CLOUD COMPUTING TECHNOLOGY AND SCIENCE (CLOUDCOM), 2014, : 708 - 711
  • [9] Design of Software Defined Hardware Counters for SDN
    Zhao, Tao
    Li, Tao
    Han, Biao
    Sun, Zhigang
    Huang, Jinfeng
    2014 IEEE 20TH INTERNATIONAL WORKSHOP ON LOCAL & METROPOLITAN AREA NETWORKS (LANMAN), 2014,
  • [10] Formal Verification of Hardware/Software Power Management Strategies
    Mukherjee, Rajdeep
    Dasgupta, Pallab
    Pal, Ajit
    Mukherjee, Subhankar
    2013 26TH INTERNATIONAL CONFERENCE ON VLSI DESIGN AND 2013 12TH INTERNATIONAL CONFERENCE ON EMBEDDED SYSTEMS (VLSID), 2013, : 326 - 331