Stall-focused benchmarks for JVMs on the x86 architecture
University of New Brunswick
Java is an important programming language both in industry and in academia. The Java Virtual Machine is the execution platform for applications implemented with Java. The x86 Instruction Set Architecture is widely supported by various modern computer architectures. One of the most important performance bottlenecks on these machines is stalling. Therefore, understanding the effect of stalls on Java applications executed on x86 platforms is important to application development and compiler design. In this thesis, a survey of stalls in Java applications on x86 platforms is carried out to gather critical information about the influence of stalls on various Java applications and the frequencies of different types of stalls in Java workloads. Based on such information, a stall-focused benchmark suite is proposed and validated.