Azul Systemshas today announced the immediate availability of Zing 17.03, with full support for Azul’s new Falcon just-in-time (JIT) compiler based onLLVMand designed to replace the C2 compiler used inprior versions of Zing, as well as in Oracle HotSpot and OpenJDK.
Falcon is the first new production JIT compiler available for Java SE since C2 was introduced at JavaOne in 1997.LLVM is a modern open source compiler framework and the preferred back-end”engine” for many new languages like Swift and Rust. It has great support from the academic community, and a wide range ofcommercial backersincluding AMD, Apple, Cray, IBM, Intel, Microsoft, Sony and SAP. This broad support helps it takes full advantage of new server hardware and new instruction sets, often taking advantage of new processor technologies such as the vectorization and crypto optimizations in Intel’s Broadwell and Skylake processors, long before support appears in other languages.
Given this, it is unsurprising that Falcon is able to outperform C2 on newer hardware. For example, Tene told InfoQ that it is up to 3.5x faster than Oracle HotSpot on specific crypto workload benchmarks, and around 10% faster that Oracle HotSpot on Cassandra benchmarks using Skylake-based servers (Intel Xeon E5-xxxx). It is alsoconsiderably faster than previous versions of Zing in low latency environments. Tene told us that one existing Azul Zing customerrunning trading infrastructure saw a speed-up of around 18-24%.Azul is the first organization to use LLVM in a production-grade managed runtime.
In order to make this work, LLVM has been enhanced with additional functionality from Azul including optimization in the presence of safepoints and GC barriers, the ability to provide JIT code replacement and deoptimization, and speculative runtime optimizations that include implicit null checks, speculative devirtualization and guarded inlining.As one would expect, Falcon also supportsAzul’s ReadyNowtechnology, introduced in 2014. ReadyNow is designed to obviate the need for “warming-up” the Java Virtual Machine, a practice used by application owners attempting to take advantage of the JIT compiler optimizations after the JVM has had enough time to learn which code tocompile to the machine level.
Zing 17.03 is available for immediate download by existing customers from the Zing support portal. The new Zing release isalso available for30-day trialsfrom the Azulwebsite. The single-license annual subscription price for Zing is $3500 USD per server, with significantly lower prices for higher volumes and longer-term subscriptions.