Answers are grounded in this paper and cite their sources.
Java-based applications rely on just-in-time (JIT) compilation to convert bytecode into machine code at run-time to improve throughput. However, JIT compilation is achieved at the cost of additional CPU cycles and memory. In the context of modern cloud, where applications have limited computing resources due to containerization, JIT compilation may potentially become a pain-point. The Semeru Cloud Compiler (SCC) is a promising solution that offloads JIT compilation to a remote cloud compiler to reduce the local overhead of JIT compilation in containers. In this paper, we outline novel research directions to further leverage the advantages of remote cloud compilation by extending the SCC to achieve two goals: (i) reduce application start-up time and (ii) improve JIT compilation decision making. To reduce application start-up time, the proposed enhancement is to extract unused or unlikely to be used Java class files from container images. The SCC can still provide the extracted class files to the client JVM if any turn out to be needed. Our preliminary experiments show that this approach can potentially reduce container image sizes by up to 22.1% and start-up times by up to 9.2% for certain applications. To reduce JIT compilation overhead, the proposed enhancement is to perform dynamic analysis of the Java application using the additional resources on the server-side. In turn, the remote JIT compilation can make more informed decisions regarding which methods to compile and optimizations to apply. We are also developing a novel visualization tool designed to help JIT compiler developers identify pain points in current JIT compilation heuristics. Specifically, we have measured that up to 18.9% of JIT compilations for certain applications may be sub-optimal due to later method inlining, and we are investigating how the SCC could help to avoid these potentially wasted compile-time computations by using information learned from other JVM clients.
No takes yet. Share an insight, caveat, or question.
Liu et al. (2024) studied this question.
Synapse has enriched 7 closely related papers on similar clinical questions. Consider them for comparative context: