Over the past few years, the world has welcomed many new Arm cores and ISA versions. A few generations of CPUs are now widely used in various public clouds. Several generations of powerful desktop computers appeared, including the new Macs. The AArch64 port was integrated into JDK 9 and received multiple optimizations in JDK 11. Even more enhancements were introduced in newer versions. Windows and macOS have joined Linux on the list of supported operating systems with native Arm port. In addition, Linux can now be built on musl. Virtualization and container tools such as Docker and Kubernetes also run on Arm servers and desktops.
However, developers still run into quirks when working on Arm-based machines or targeting them for deployment. It’s time to update the guidebook on current equipment and its capabilities. The latest Java test scores reflect the advances in software and hardware, which are rapidly pacing forward.
Dmitry Chuyko
Dmitry Chuyko is a Senior Performance Engineer at BellSoft, an OpenJDK committer, and a public speaker. Prior to joining BellSoft, Dmitry worked on the Hotpot JVM at Oracle, and before that he had many years of programming experience in Java. He is currently focused on optimizing HotSpot for x86 and ARM, previously being involved in rolling out JEP 386, which enables the creation of the smallest JDK containers.