The 2021 Graal Workshop

Science, Art, Magic: Using and Developing The Graal Compiler

Science, Art, Magic: Using and Developing The Graal Compiler

The Third Graal Workshop was held virtually at CGO on February 27, 2021.

Talk about the workshop on Twitter using #graalcgo2021 and follow us @graalcgo.

You can find the recordings for all sessions on YouTube and individual video links below.

Group photo from the first session Group photo from the second session

Topics for discussion included exploring speedup opportunities in the GraalVM compiler, novel uses of GraalVM’s infrastructure, new features in GraalVM, and benchmarking the GraalVM compiler.


All times EST (UTC-5).

Start End Title Resources Speaker
8:00 AM 8:05 AM Welcome Slides Uma Srinivasan
8:05 AM 9:00 AM Keynote: Exploring speedup opportunities in the GraalVM compiler Slides Video François Farquet
9:00 AM 9:30 AM Babashka: a native Clojure interpreter for scripting. Slides Video Michiel Borkent
9:30 AM 10:00 AM Truffle Startup and Warmup Challenges and Opportunities Slides Video Chris Seaton
10:00 AM 10:30 AM One more gap bridged towards practice – support serialization feature in native image Slides Video Ziyi Lin
10:30 AM 11:00 AM Improving Compiler Optimizations by Employing Machine Learning Slides Video Raphael Mosaner
11:00 AM 11:30 AM GraalVM at Facebook Slides Video Chen Li
11:30 AM 12:00 PM Tracking Performance of Graal on Public Benchmarks Slides Video Petr Tuma
12:00 PM 3:00 PM Break    
3:00 PM 3:30 PM Performance understanding tools for GraalVM using eBPF Slides Video Andy Nisbet
3:30 PM 4:00 PM Strato (Twitter PaaS) & Graal Native Image Slides Video Anton Panasenko
4:00 PM 5:00 PM Panel Session: Graal on AArch64    


Speaker François Farquet (Oracle Labs)
Title Explore speedup opportunities in the GraalVM compiler
Abstract This talk will cover the different approaches the GraalVM compiler team applies in its quest to a better performing compiler, release after release. Regression tracking or comparison against competing compilers are obviously necessary not to fall behind, but a more creative approach can lead to unexpected low-hanging fruits: benchmarking non-default compiler configurations potentially produces better performance, giving the opportunity to fix the suboptimal pattern present in the compiler.

Moreover, we’ll see how this hyperparameter analysis helped in understanding the compiler’s trade-offs and in finding optimal default values for all compiler options. From there, we can also go a step further and expose those trade-offs to let the users take the best decision based on their scenario.
Bio François Farquet is a Principal Performance Engineer at Oracle located somewhere in the Swiss Alps. He is a member of the GraalVM compiler team in charge of benchmarking, performance tracking and hyperparameter tuning.

Panel Session

Topic: Graal on AArch64

Name Affiliation Twitter
Monica Beckwith Microsoft @mon_beck
Tom Shull Oracle Labs  
Alan Hayward Arm  
Flavio Brasil Twitter @flaviusbraz
Tianxiao Gu Alibaba  
Andrew Dinn Red Hat  


Name Email Twitter
Uma Srinivasan @umatweep
Niklas Vangerow @nvgrw
Flavio Brasil @flaviusbraz

Program Committee

Alan Hayward (Arm), Chris Seaton (Shopify), Christian Wimmer (Oracle Labs), David Leopoldseder (Oracle Labs/JKU Linz), Niklas Vangerow (Twitter), Tianxiao Gu (Alibaba), Will Holen (Facebook)

Previous years