After nearly twenty years, Java has a new just-in-time (JIT) compiler, and it is only available in the Zing runtime for Java. Azul Systems built the Falcon JIT compiler to ensure that Java developers and Java-based businesses can extract maximum performance from today’s server hardware.
The Falcon JIT compiler is fully integrated with Azul’s pauseless garbage collection technology as well as our ReadyNow! technology, which solves Java’s warm-up problems in latency-sensitive applications.
The Falcon JIT compiler is based on technology from LLVM, the popular compiler infrastructure project with active involvement from leading universities and dozens of corporate contributors including Adobe, Apple, Google, NVIDIA, and Intel.
Today LLVM is used in a variety of programming languages and frameworks outside Java and the JVM, including newer platforms like Swift and Rust as well as many others including C/C++, Objective-C, Swift, Clang, OpenCL, CUDA and many more.
LLVM is considered the state-of-the-art in compiler technology, and the LLVM community is continually incorporating new optimization techniques and support for new processor instruction sets and hardware platforms.
The performance advantages for Java workloads when running with Zing’s new Falcon JIT compiler have significant business benefits:
Q: When is Zing shipping with Falcon?
A: Falcon has been shipping with Zing for several months. Effective with version 17.03, Falcon is the default JIT compiler for Zing, replacing the legacy C2 compiler.
Q: Is Falcon faster than C2?
Q: Is C2 still supported by Zing?
A: Yes, C2 can be used by specifying a flag at JVM startup.
Q: Do I need to recompile my existing application to use Falcon?
Q: Which versions of Java are supported by Falcon?
A: Falcon works with applications built using Java SE 7 and Java SE 8.
Q: Will Falcon support Java 9?
A: Yes, in a future release of Zing.
Q: How about a Zing block diagram showing Falcon?
A: Here you go