AOT Vs. JIT: Impact of Profile Data on Code Quality
Just-in-time (JIT) compilation during program execution and ahead-of-time (AOT) compilation during software installation are alternate techniques used by managed language virtual machines (VM) to generate optimized native code while simultaneously achieving binary code portability and high execution performance. Profile data collected by JIT compilers at run-time can enable profile-guided optimizations (PGO) to customize the generated native code to different program inputs. AOT compilation removes the speed and energy overhead of online profile collection and dynamic compilation, but may not be able to achieve the quality and performance of customized native code. The goal of this work is to investigate and quantify the implications of the AOT compilation model on the quality of the generated native code for current VMs.
First, we quantify the quality of native code generated by the two compilation models for a state-of-the-art (HotSpot) Java VM. Second, we determine how the amount of profile data collected affects the quality of generated code. Third, we develop a mechanism to determine the accuracy or similarity for different profile data for a given program run, and investigate how the accuracy of profile data affects its ability to effectively guide PGOs. Finally, we categorize the profile data types in our VM and explore the contribution of each such category to performance.
Wed 21 JunDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
10:50 - 12:30 | Session 1: Compiler Optimization for Embedded SystemsLCTES 2017 at Vertex WS208 Chair(s): Yi Wang Shenzhen University | ||
10:50 25mTalk | AOT Vs. JIT: Impact of Profile Data on Code Quality LCTES 2017 April W. Wade University of Kansas, Prasad Kulkarni University of Kansas, Michael Jantz University of Tennessee | ||
11:15 25mTalk | Adaptive Optimization for OpenCL Programs on Embedded Heterogeneous Systems LCTES 2017 Ben Taylor Lancaster University, UK, Vicent Sanz Marco Lancaster University, Zheng Wang Lancaster University | ||
11:40 25mTalk | Auto-Vectorization for Image Processing DSLs LCTES 2017 Oliver Reiche Friedrich-Alexander-Universität Erlangen-Nürnberg (FAU), Christof Kobylko , Frank Hannig Friedrich-Alexander University Erlangen-Nürnberg (FAU), Jürgen Teich | ||
12:05 25mTalk | Dynamic Translation of Structured Loads/Stores and Register Mapping for Architectures with SIMD Extensions LCTES 2017 Sheng-Yu Fu , Ding-Yong Hong Institute of Information Science, Academia Sinica, Ping Yu Department of Computer Science and Information Engineering, National Taiwan University, Jan-Jan Wu Institute of Information Science, Academia Sinica, Wei-Chung Hsu Dept. Computer Science & Information Engineering, National Taiwan University |