A Practical Approach to Hardware Performance Monitoring based Dynamic Optimizations in a Production JVM

被引:2
|
作者
Cuthbertson, John [1 ]
Viswanathan, Sandhya [1 ]
Bobrovsky, Konstantin [2 ]
Astapchuk, Alexander [2 ]
Kaczmarek, Eric [3 ]
Srinivasan, Uma [1 ]
机构
[1] Intel Corp, Managed Runtime Technol Ctr, Santa Clara, CA 95052 USA
[2] Intel Corp, Managed Runtime Technol Ctr, Novosibirsk, Russia
[3] Intel Corp, Managed Runtime Technol Ctr, Hillsboro, OR 97124 USA
关键词
Optimization; !text type='Java']Java[!/text; Hardware Performance Monitoring;
D O I
10.1109/CGO.2009.13
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
While the concept of online profile directed dynamic optimizations using hardware performance monitoring unit (PMU) data is not new, it has seen fairly limited or no use in commercial JVMs. The main reason behind this fact is the set of significant challenges involved in (7) obtaining low overhead and usable profiling support from the underlying platform (2) the complexity of filtering, interpreting and using precise PMU events online in a JVM environment (3) demonstrating the total runtime benefit of PMU data based optimizations above and beyond regular online profile based optimizations. In this paper we address all three challenges by presenting a practical framework for PMU data collection and use within a high performance product JVM on a highly scalable server platform. Our experiments with Java (TM) workloads using the Sun (TM) Hotspot (TM) JDK 1.6 JVM on the Intel Itanium platform indicate that the hardware data collection overhead (less than 0.5%) is not as significant as the challenge of extracting the precise information for optimization purposes. We demonstrate the feasibility of mapping the instruction IP address based hardware event information to the runtime components as well as the AT server compiler internal data structures for use in optimizations within a dynamic environment. We also evaluated the additional performance potential of optimizations such as object co-location during garbage collection and global instruction scheduling in the AT compiler with the use of PMU generated load latency information. Experimental results show performance improvements of up to 14% with an average of 2.2% across select Java server benchmarks such as SPECjbb2005[16], SPECjvm2008[17] and Dacapo[18]. These benefits were observed over and above those provided by profile guided server JVM optimizations in the absence of hardware PMU data.
引用
收藏
页码:190 / +
页数:2
相关论文
共 50 条
  • [1] Online Optimizations Driven by Hardware Performance Monitoring
    Schneider, Florian T.
    Payer, Mathias
    Gross, Thomas R.
    PLDI'07: PROCEEDINGS OF THE 2007 ACM SIGPLAN CONFERENCE ON PROGRAMMING LANGUAGE DESIGN AND IMPLEMENTATION, 2007, : 373 - 382
  • [2] Online optimizations driven by hardware performance monitoring
    Schneider, Florian T.
    Payer, Mathias
    Gross, Thomas R.
    ACM SIGPLAN NOTICES, 2007, 42 (06) : 373 - 382
  • [3] An Automated Approach to Hardware Performance Monitoring Counters
    Tinetti, Fernando G.
    Mendez, Mariano
    2014 INTERNATIONAL CONFERENCE ON COMPUTATIONAL SCIENCE AND COMPUTATIONAL INTELLIGENCE (CSCI), VOL 1, 2014, : 71 - 76
  • [4] A Heterogeneous Full-stack AI Platform for Performance Monitoring and Hardware-specific Optimizations
    Zhou, Zikang
    Fu, Chao
    Xie, Ruiqi
    Han, Jun
    2021 IEEE 14TH INTERNATIONAL SYMPOSIUM ON EMBEDDED MULTICORE/MANY-CORE SYSTEMS-ON-CHIP (MCSOC 2021), 2021, : 164 - 170
  • [5] Mastitis diagnostics and performance monitoring: A practical approach
    Lam T.J.G.M.
    Olde Riekerink R.G.M.
    Sampimon O.C.
    Smith H.
    Irish Veterinary Journal, 62 (Suppl 4) : 34 - 39
  • [6] A practical approach of online control performance monitoring
    Meng Qing-wei
    Zhong Zhen-fang
    Liu Ji-zhen
    CHEMOMETRICS AND INTELLIGENT LABORATORY SYSTEMS, 2015, 142 : 107 - 116
  • [7] Mastitis diagnostics and performance monitoring: a practical approach
    Lam, T. J. G. M.
    Riekerink, R. G. M. Olde
    Sampimon, O. C.
    Smith, H.
    IRISH VETERINARY JOURNAL, 2009, 62 : 34 - 39
  • [8] Dynamic trace selection using performance monitoring hardware sampling
    Chen, H
    Hsu, WC
    Lu, JW
    Yew, PC
    Chen, DY
    CGO 2003: INTERNATIONAL SYMPOSIUM ON CODE GENERATION AND OPTIMIZATION, 2003, : 79 - 90
  • [9] MirrorTaint: Practical Non-intrusive Dynamic Taint Tracking for JVM-based Microservice Systems
    Ouyang, Yicheng
    Shao, Kailai
    Chen, Kunqiu
    Shen, Ruobing
    Chen, Chao
    Xu, Mingze
    Zhang, Yuqun
    Zhang, Lingming
    2023 IEEE/ACM 45TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, ICSE, 2023, : 2514 - 2526
  • [10] DDGacc: Boosting Dynamic DDG-based Binary Optimizations through Specialized Hardware Support
    Pavlou, Demos
    Gibert, Enric
    Latorre, Fernando
    Gonzalez, Antonio
    ACM SIGPLAN NOTICES, 2012, 47 (07) : 159 - 168