How can machine learning assist to improve JVM performance?
summary
Master’s-thesis pipeline parses G1 GC logs from SPECjbb2015 and DaCapo, extracts sliding-window features, trains Gaussian process regression, and predicts two G1 flags (the min/max YoungGen percent) to maximize throughput or minimize max GC pause. Running predicted min-only increases throughput 20.6% while latency worsens 1.5%; applying both flags yields +20.3% throughput and a 3.46% latency improvement. The implemented pipeline outputs concrete flag values and shows measurable, reproducible gains.
AI-written summary · about
chapters (11)
- 0:00ML for JVM performance
- 1:04JVM flags and impact
- 2:31Benchmarks and data collection
- 4:15Young Gen sizing flags
- 5:40Feature engineering for ML
- 7:05Gaussian Process Regression model
- 9:37Hyperparameter tuning and testing
- 10:41Predicting optimal flags
- 11:46ML pipeline overview
- 12:28Results and improvements
- 13:54Conclusion
related talks
46mMastering GC: tame the beast and make it your best ally
18mLet the machines optimize the machines
44mMastering GC: tame the beast and make it your best ally
39mG1GC Concepts and Performance Tuning
52mGC Tuning & Troubleshooting Crash Course
47mJVM Performance Engineering - Inside OpenJDK and the HotSpot Java Virtual Machine
43mGarbage Collection in Java: The Performance Benefits of Upgrading
48mZGC: A Decade of Redefining Java Performance
