Machine learning (ML) has enabled the development of the static profiler GraalSP, integrated into Oracle GraalVM Native Image, resulting in a 7.5% improvement in runtime performance. Static profilers, unlike dynamic profilers, use ML models to predict program profiles by analyzing a program’s characteristics, eliminating the need for profile collection and facilitating optimization. GraalSP uses Graal Intermediate Representation (Graal IR) to represent programs, with features extracted from the Graal IR and used within the ML model for profile prediction. The integration of GraalSP into Native Image has resulted in a 7.46% speedup in execution time across different test programs. The deployment of GraalSP in Oracle GraalVM marks a successful application of ML in compiler optimization, with further updates and ML enhancements in the pipeline.
https://medium.com/graalvm/machine-learning-driven-static-profiling-for-native-image-d7fc13bb04e2