Abstractions Without Regret with GraalVM
summary
GraalVM claims common Java abstractions run without performance regret by doing inlining, loop unrolling and object virtualization/escape analysis so many local allocations disappear. Example: a varargs objects.hash benchmark is ~164 ops/µs vs 580 raw on Java 8, but GraalCE brings the abstracted and raw versions to parity; logging microbenchmarks rise from ~133 to ~500 ops/s. Native-image gives 5–10 ms startup and much lower memory (35 MB vs 145 MB), Renaissance suites show up to ~2x, and one production migration reports +10% throughput and −25% GC time.
AI-written summary · about
chapters (30)
- 0:00Introduction
- 2:30Performance dimensions
- 6:14Two ways to run GraalVM
- 7:23GraalVM Enterprise Edition
- 8:00Tradeoffs
- 9:57Compilers
- 16:00Performance Quiz
- 22:58Benchmarks
- 24:15Optimizations
- 25:07Turbo Boost
- 27:03Performance Comparison
- 29:45Optimisations
- 37:52Performance Differences
- 39:45Joy of Writing Code
- 40:35Tuning Points
- 41:30Native Image Support
- 42:32Startup Time
- 43:03Team Mode
- 43:33Memory Usage
- 43:49Memory Footprint
- 45:03Chromium Cheat Mode
- 45:21Profile Guided Optimization
- 45:56Write Small Methods
- 46:33Local Allocations
- 47:12Pull Requests
- 47:59Open Source
- 48:11Production Ready
- 48:55Oracle
- 49:34Chromium
- 49:52Feedback
related talks
56mMaximizing Performance with GraalVM
59mMaximizing performance with GraalVM
20mMaximizing Java Application Performance with GraalVM
52mGraalVM: Run Programs Faster Anywhere
46mBring the Action: Using GraalVM in Production
52mMaximizing Performance With GraalVM
35mTop 10 Things to Do with GraalVM
44mJava In The Cloud with GraalVM
