Demos
All demos run with chmod +x demo.sh && ./demo.sh using Podman and Red Hat UBI images.
ubi9/openjdk-21-runtime ships Shenandoah as the default GC — Red Hat's concurrent collector giving 1–20ms pauses. Demos that compare GC algorithms explicitly override it with -XX:+UseG1GC or -XX:+UseZGC.
Core Session — 60 min
Container-Aware Heap Sizing
Without UseContainerSupport, the JVM reads host RAM from /proc/meminfo and claims 25% of the node’s full memory — ins...
GC Monitoring with Prometheus
Two Quarkus apps (G1GC on :8080, ZGC on :8081) + Grafana LGTM + standalone Prometheus scraping /q/metrics. Live GC pa...
AppCDS Startup Acceleration
AppCDS caches parsed + verified bytecode. Quarkus gets ~5% improvement. Spring Boot gets ~40%. The small Quarkus numb...
Extended / Bonus — 90 min
Project Leyden AOT Cache
Verified result: 609ms → 148ms (−75%) startup on JDK 25 LTS. Caches parsed + linked classes AND JIT method profiles. ...
REST vs gRPC: Two Protocols
One Quarkus app simultaneously serves REST on :8080 and gRPC on :9000. Same service, two protocols, honest comparison...
Low-Latency JVM: G1GC vs ZGC
Two identical Quarkus apps, same heap, same load. One G1GC, one ZGC. The GC pause delta (not throughput) is the metri...
Right-Sizing & Cost Impact Analysis
Pure Python analysis — no containers, no cluster needed. 14 days of bundled Prometheus sample data from a 7-service c...
Project Panama: C++20 via FFM
The Foreign Function & Memory API (JEP 454, finalized JDK 22) calls a native C++20 shared library from pure Java....
AI Inference: LangChain4j + ONNX + Panama
In-process AI inference via LangChain4j → ONNX Runtime → Panama FFM → native .so. The all-MiniLM-L6-v2 sentence embed...