Meeting JUG.ru with Arthur Pilipenko: Falcon - LLVM-based JIT compiler in Zing JVM

On Tuesday, June 5, a meeting of JUG.ru with Arthur Pilipenko , an engineer of the compiler team of Azul Systems, will take place at the Petersburg office of Oracle. The subject of the meeting is Falcon .

Falcon is a JIT compiler built on the basis of the LLVM infrastructure. For a year now it has been the default compiler in the Zing virtual machine. The new compiler is fully used in production and shows significant performance gains compared to the old C2 compiler.

image

All this was preceded by a long and painstaking work on how to make JVM friends with LLVM and teach LLVM to compile Java code efficiently. We will talk about why we decided to build our compiler based on LLVM and what it took to do. Let's discuss what happened, we will demonstrate the strengths and weaknesses of the new compiler.

Falcon not only accelerates the execution of Java code in Zing, but also opens up possibilities for implementing new functionality. For example, why don't we reuse the compilation results from previous virtual machine launches? Easy! We will tell how this functionality became possible thanks to Falcon and how it is better than Ahead-of-Time compilation.

Arthur Pilipenko works in the Azul Systems compiler team. Over the past three years, he has been involved in the development of Falcon's LLVM-based JIT compiler. Prior to joining Azul, he worked at Orale, where he developed the CLDC HI virtual machine (aka Monty VM).

Participation: free.
Registration: required ( register here ).
Videos: will be (will not be broadcast on YouTube).
Time: from 20:00 to 22:00.
Location: 10th Krasnoarmeyskaya St., 22, Kellerman Business Center, 2nd floor.

Source: https://habr.com/ru/post/412545/


All Articles