The GraalVM project provides, among other options, a means to deliver Java programs as compact, self-contained, fast-startup native images. GraalVM has been moving from research to development for quite a few years now. However, it is only just beginning to be properly integrated with the latest OpenJDK releases and there is still much to be done to get it fully productized and to improve usability and performance.
This talk will recount our joint experiences of trying to add new and/or improved capabilities to the the GraalVM code base. Our story will stumble gracelessly from one pitfall to the next cock-up in the hope that by exposing and explaining our own history of lamentable error and occasional failure you will be able to avoid being doomed to repeat it.
We will provide a guide to getting started and building GraalVM, an overview of the how the compiler, native image generator and other elements of the GraalVM toolkit operate plus a map of what code sits where in the source tree and how it fits together and offer tips for debugging the Graal compiler and native image generator -- all the tasks you will need to perform in order to attain a vantage point from which to change or add to the current functionality.
Speakers: Andrew Dinn Josh Matsuoka