GraalVM in Aktion – Erstellen eines intelligenten nativen Images
Mit GraalVM für JDK 24 können wir moderne Java zu hochoptimierten nativen ausführbaren Dateien kompilieren. Der neue Graal Neural Network (GNN) Static Profiler nutzt maschinelles Lernen, um die Leistung zu verbessern (um bis zu ~8 %), während die Vector API hardwarebeschleunigte SIMD-Operationen ermöglicht.
Beispiel: Ein einfaches Java-Programm verwendet die in der Entwicklung befindliche Vector API, um zwei große Float-Arrays in Blöcken zu addieren und dabei SIMD-optimierte Schleifen zu erzeugen. Kompilieren mit:
$ native-image -O3 -H:+ProfileGNN –enable-preview VectorExample |
Erzeugt eine Binärdatei, die sofort startet, schneller läuft und kleiner ist als Standard-Builds. -O3 wendet aggressive Optimierungen an, -H:+ProfileGNN aktiviert ML-gesteuerte Optimierungen und –enable-preview ermöglicht die Verwendung von Inkubator-Funktionen.
Das Ergebnis vereint schnellen Start, geringen Speicherbedarf und Rechenleistung auf JVM-Ebene und eignet sich somit ideal für Microservices, Cloud-native Workloads und datenintensive Anwendungen – und das alles auf dem neuesten Stand der modernen Java-Technologie.