The 2022 Graal Workshop

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

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

The Fourth Graal Workshop was held virtually at CGO on April 2, 2022.

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

Topics for discussion included exploring speedup opportunities with GraalVM Native Image, novel uses of Truffle, and new features in the GraalVM compiler.

Program

All times EDT (UTC-4).

Start End Title Resources Speaker(s)
9:00 AM 9:05 AM Welcome   Niklas Vangerow
9:05 AM 10:00 AM Keynote: Static Java: The GraalVM Native Image Programming Model Slides, Recording Christian Wimmer
10:00 AM 10:30 AM Faster Native Image development build times with Quick Build mode Slides, Recording Carlo Refice
10:30 AM 11:00 AM Improving GraalVM Reflection File Generation Slides, Recording Nicolas Toper
11:00 AM 11:30 AM Break    
11:30 AM 12:00 PM Truffle Interpreter Performance without the Holy Graal Slides, Recording Stefan Marr
12:00 PM 12:30 PM TruffleString: highly optimized cross-language string implementation. Slides, Recording Josef Haider
12:30 PM 1:00 PM State of AArch64 on GraalVM Slides, Recording Thomas Shull
1:00 PM 1:30 PM Call-Target Agnostic Keyword Arguments Slides, Recording Maple Ong and Chris Seaton
1:30 PM 2:00 PM Tuning autovectorization in Graal Slides, Recording Yunjie Pan
2:00 PM 2:30 PM Break    
2:30 PM 3:45 PM Lightning Talks    
3:45 PM 4:00 PM Closing remarks & survey   Uma Srinivasan

Keynote

Speaker Christian Wimmer (Oracle Labs)
Title Static Java: The GraalVM Native Image Programming Model
Abstract In this talk we will present our vision for “Static Java”: the programming model enabled by GraalVM Native Image. Applications are initialized at image build time, to allow fast startup time and low memory footprint at run time. Counterintuitively, the ahead-of-time compilation of Java bytecode to machine code is not part of the programming model. But since it is an important implementation detail, we will also talk about the benefits and problems of compiling ahead-of-time compilation. We will show where static analysis helps, what the limitations of static analysis are, which compiler optimizations work well both for JIT and AOT compilation, and where additional compiler phases for AOT compilation are necessary.
Bio Christian Wimmer is the architect of GraalVM Native Image. He was one of the first engineers of the GraalVM project, and helped growing it from a research project of Oracle Labs to a supported Oracle product. He believes that all languages should be equally fast, and that we therefore need to stop writing individual VMs and instead have one polyglot VM. His research interests span from compilers, virtual machines, and secure systems to component-based software architectures. More info.

Organizers

Name Email Twitter
Niklas Vangerow nvangerow@twitter.com @nvgrw
David Degazio davidd@twitter.com @elucentdev
Uma Srinivasan usrinivasan@twitter.com @umatweep

Program committee

Christian Wimmer (Oracle Labs), David Leopoldseder (Oracle Labs/JKU Linz), Niklas Vangerow (Twitter), Kingsum Chow (Alibaba), Kevin Menard (Shopify), Monica Beckwith (Microsoft), Uma Srinivasan (Twitter).

Previous years