Low-Overhead Dynamic Instruction Mix Generation using Hybrid Basic Block Profiling

被引:1
|
作者
Nowak, Andrzej [1 ,2 ]
Szostek, Pawel [3 ]
Yasin, Ahmad [4 ]
Zwaenepoel, Willy [2 ]
机构
[1] CERN Openlab, Geneva, Switzerland
[2] Ecole Polytech Fed Lausanne, Lausanne, Switzerland
[3] Criteo, Paris, France
[4] Intel Corp, Santa Clara, CA USA
来源
2018 IEEE INTERNATIONAL SYMPOSIUM ON PERFORMANCE ANALYSIS OF SYSTEMS AND SOFTWARE (ISPASS) | 2018年
关键词
D O I
10.1109/ISPASS.2018.00032
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Dynamic instruction mixes form an important part of the toolkits of performance tuners, compiler writers, and CPU architects. Instruction mixes are traditionally generated using software instrumentation, an accurate yet slow method, that is normally limited to user-mode code. We present a new method for generating instruction mixes using the Performance Monitoring Unit (PMU) of the CPU. It has very low overhead, extends coverage to kernel-mode execution, and causes only a very modest decrease in accuracy, compared to software instrumentation. In order to achieve this level of accuracy, we develop a new PMU-based data collection method, Hybrid Basic Block Profiling (HBBP). HBBP uses simple machine learning techniques to choose, on a per basic block basis, between data from two conventional sampling methods, Event Based Sampling (EBS) and Last Branch Records (LBR). We implement a profiling tool based on HBBP, and we report on experiments with the industry standard SPEC CPU2006 suite, as well as with two large-scale scientific codes. We observe an improvement in runtime compared to software instrumentation of up to 76x on the tested benchmarks, reducing wait times from hours to minutes. Instruction attribution errors average 2.1%. The results indicate that HBBP provides a favorable tradeoff between accuracy and speed, making it a suitable candidate for use in production environments.
引用
收藏
页码:189 / 198
页数:10
相关论文
共 50 条
  • [1] A low-overhead profiling and visualization framework for Hybrid Transactional Memory
    Arcas, Oriol
    Kirchhofer, Philipp
    Soenmez, Nehir
    Schindewolf, Martin
    Unsal, Osman S.
    Karl, Wolfgang
    Cristal, Adrian
    2012 IEEE 20TH ANNUAL INTERNATIONAL SYMPOSIUM ON FIELD-PROGRAMMABLE CUSTOM COMPUTING MACHINES (FCCM), 2012, : 1 - 8
  • [2] A Low-Overhead Method of Embedded Software Profiling
    Liu Fagui
    Li Shengwen
    Xie Ran
    Luo Chunwei
    2009 ISECS INTERNATIONAL COLLOQUIUM ON COMPUTING, COMMUNICATION, CONTROL, AND MANAGEMENT, VOL IV, 2009, : 436 - 439
  • [3] On the Generation of Binary functions with Low-Overhead
    Voyiatzis, I.
    Efstathiou, C.
    2017 12TH IEEE INTERNATIONAL CONFERENCE ON DESIGN & TECHNOLOGY OF INTEGRATED SYSTEMS IN NANOSCALE ERA (DTIS 2017), 2017,
  • [4] Low-overhead memory leak detection using adaptive statistical profiling
    Chilimbi, TM
    Hauswirth, M
    ACM SIGPLAN NOTICES, 2004, 39 (11) : 156 - 164
  • [5] A low-overhead technique for dynamic blackboarding using morphing technology
    Citrin, W
    Gurka, J
    COMPUTERS & EDUCATION, 1996, 26 (04) : 189 - 196
  • [6] Low-Overhead Reuse Distance Profiling Tool for Multicore
    Sasongko, Muhammad Aditya
    Chabbi, Milind
    Unat, Didem
    EURO-PAR 2021: PARALLEL PROCESSING WORKSHOPS, 2022, 13098 : 555 - 559
  • [7] A Low-Overhead Dynamic Optimization Framework for Multicores
    Fletcher, Christopher W.
    Harding, Rachael
    Khan, Omer
    Devadas, Srinivas
    PROCEEDINGS OF THE 21ST INTERNATIONAL CONFERENCE ON PARALLEL ARCHITECTURES AND COMPILATION TECHNIQUES (PACT'12), 2012, : 467 - 468
  • [8] Low-overhead decision support for dynamic buffer reallocation
    Schmidt, Karsten
    Baechle, Sebastian
    COMPUTER SCIENCE-RESEARCH AND DEVELOPMENT, 2012, 27 (01): : 29 - 43
  • [9] A unified, low-overhead framework to support continuous profiling and optimization
    Zhang, M
    He, XB
    Yang, Q
    2003 IEEE INTERNATIONAL PERFORMANCE, COMPUTING, AND COMMUNICATIONS CONFERENCE PROCEEDINGS, 2003, : 327 - 334
  • [10] A Low-Overhead Hybrid Routing Algorithm for ZigBee Networks
    Ren, Zhi
    Tian, Lihua
    Cao, Jianling
    Li, Jibi
    Zhang, Zilong
    PROCEEDINGS OF THE 2ND INTERNATIONAL CONFERENCE ON ELECTRONIC & MECHANICAL ENGINEERING AND INFORMATION TECHNOLOGY (EMEIT-2012), 2012, 23