Affiliation:
1. Ghent University, Gent, Belgium
Abstract
A managed runtime environment, such as the Java virtual machine, is non-trivial to benchmark. Java performance is affected in various complex ways by the application and its input, as well as by the virtual machine (JIT optimizer, garbage collector, thread scheduler, etc.). In addition, non-determinism due to timer-based sampling for JIT optimization, thread scheduling, and various system effects further complicate the Java performance benchmarking process.
Replay compilation is a recently introduced Java performance analysis methodology that aims at controlling non-determinism to improve experimental repeatability. The key idea of replay compilation is to control the compilation load during experimentation by inducing a pre-recorded compilation plan at replay time. Replay compilation also enables teasing apart performance effects of the application versus the virtual machine.
This paper argues that in contrast to current practice which uses a single compilation plan at replay time, multiple compilation plans add statistical rigor to the replay compilation methodology. By doing so, replay compilation better accounts for the variability observed in compilation load across compilation plans. In addition, we propose matched-pair comparison for statistical data analysis. Matched-pair comparison considers the performance measurements per compilation plan before and after an innovation of interest as a pair, which enables limiting the number of compilation plans needed for accurate performance analysis compared to statistical analysis assuming unpaired measurements.
Publisher
Association for Computing Machinery (ACM)
Subject
Computer Graphics and Computer-Aided Design,Software
Reference37 articles.
1. Adaptive optimization in the Jalapeño JVM
2. BEA. BEA JRockit: Java for the enterprise. Technical white paper. http://www.bea.com Jan. 2006. BEA. BEA JRockit: Java for the enterprise. Technical white paper. http://www.bea.com Jan. 2006.
3. Myths and realities
4. The DaCapo benchmarks
Cited by
8 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Early Stopping of Non-productive Performance Testing Experiments Using Measurement Mutations;2023 49th Euromicro Conference on Software Engineering and Advanced Applications (SEAA);2023-09-06
2. A Hybrid Distributed EA Approach for Energy Optimisation on Smartphones;Empirical Software Engineering;2022-08-06
3. Towards rigorous validation of energy optimisation experiments;Proceedings of the 2020 Genetic and Evolutionary Computation Conference;2020-06-25
4. Empirical Study of Usage and Performance of Java Collections;Proceedings of the 8th ACM/SPEC on International Conference on Performance Engineering;2017-04-17
5. Cooperation Experience-Prototypen zur Werkzeugunterstützung;Planung koordinierter Wertschöpfungspartnerschaften;2017