Vortrag beim Java Forum Stuttgart, 23. September 2021:
https://www.java-forum-stuttgart.de/vortraege/wirklich-so-schnell-performance-von-native-images-auf-der-graalvm/
Sourcecode-Beispiele auf Github:
https://github.com/accso/graalvm-native
Die GraalVM ist eine – gar nicht mal so neue – Java VM, die Schritt für Schritt immer mehr Produktionsreife und Popularität bei Entwicklern und Architekten gewinnt.
Graal verspricht viel bessere Performance mit der Möglichkeit, Native Images zu erstellen: Schneller Startup, geringer Speicherverbrauch durch die Möglichkeit, Java-Code "ahead-of-time" nach Native-Code zu kompilieren. Wir kompilieren also unseren Sourcecode nicht mehr in guten alten Bytecode, stattdessen in rasend schnellen Maschinencode?
Wir zeigt anhand verschiedener Messungen, ob und wie gut die GraalVM diese Versprechen wirklich einlösen kann. Wir unterscheiden dabei kurzläufiges Startupverhalten von langläufigem Laufzeitverhalten und betrachten auch den Aspekt Speicherverbrauch.
Und nichts kommt ohne Preis: Wir zeigen, welche Fallen (z.B. bei Reflection-Nutzung) zur Build- und zur Runtime lauern, wenn ein solches Native Image erstellt bzw. ausgeführt wird. Und wie testet man das eigentlich alles?