Speaker Details

Thomas Wuerthinger

Oracle Labs

Thomas Wuerthinger is a Senior Research Director at Oracle Labs leading the GraalVM project with teams implementing programming languages including Java, JavaScript, Ruby, Python, and R. He is the architect of the GraalVM compiler and the Truffle self-optimizing runtime system. Previously, he worked on the Crankshaft optimizing compiler of V8 at Google, and the Maxine research virtual machine at Sun Microsystems. He received a PhD degree from JKU Linz for his research about dynamic code evolution.

Abstractions Without Regret with GraalVM

Conference
Java Language

Performance-aware code often sacrifices elegance and readability for being fast. Previously, to get the best performance developers often had to manually tweak the code to follow certain patterns known to run faster. Nowadays we have better compilers which often don't require such efforts and allow one to write readable code without sacrificing performance. In this session, we discuss how to write Java code without worrying about performance regressions very much. We'll look at the typical code patterns used for writing high-performance Java, refactor them into an easier maintainable, better-looking code without losing performance. You'll learn more about the GraalVM's compiler and how it operates, which optimizations help the most and how to make use of GraalVM in your projects

Scheduled on Wednesday from 12:00 to 12:50 in Room 6

GraalVM
Performance
JVM

Everything you need to know about GraalVM

Deep Dive
Java Language

GraalVM is a high-performance runtime for dynamic, static, and native languages. GraalVM supports Java, Scala, Kotlin, Groovy, and other JVM-based languages. At the same time, it can run the dynamic scripting languages JavaScript including node.js, Ruby, R, and Python. GraalVM answers different performance questions and offers state-of-the-art solutions for peak-performance, startup or memory usage requirements. It's a versatile and large project, which we'll try to introduce thoroughly during this session. We'll look at running Java applications with GraalVM, creating GraalVM native images, running dynamic languages with GraalVM and how to make them work with your existing Java code base. GraalVM has an excellent JIT compiler and we'll look at several benchmarks uncovering which optimisations are the most essential and what code patterns get the largest performance boost. We'll explain the trade-offs between running GraalVM JIT vs. GraalVM AOT, and look at the examples of GraalVM native images. You'll learn how GraalVM implements support for the languages and what are the best practices for using them together. This session gives you a deep overview of GraalVM capabilities and allows you to effectively understand when GraalVM can help you and how to start using it.

Scheduled on Monday from 09:30 to 12:30 in Room 9

GraalVM
Performance
JVM

Talks by tracksTalks by session typesList of SpeakersSchedule