Generating Optimal HPC Code with Machine Learning
DescriptionFollowing the deep learning revolution started approximately a decade ago, experts in both fields of compilers and machine learning have approached the problem of generating code using ML methods. Results include, e.g., ML models generating (often suboptimal and sometimes incorrect) code or non-negligible performance improvements by applying ML at various stages of compilation. With the end of Dennard scaling and continuing with the denouement of Moore’s law, keeping the performance growth of HPC systems is becoming increasingly difficult and a more holistic and general mechanism is required to leverage both the robustness and accuracy of compilers with the ability of ML models to handle a wider context then separate stages of compilation. Buried behind mathematical abstraction, the polyhedral model is potentially the right tool for this job and ripe for combining it with ML. This is especially true when considering HPC codes, which often consists of regular loops which in the end amount to programs with complex data and control flow. We present our efforts both in tackling the mathematics and tooling behind polyhedral compilation as well as our strides to combine it with ML, with the goal to unlock the potential of optimal code generation via ML/AI.
TimeMonday, June 2617:00 - 17:30 CEST
Computer Science, Machine Learning, and Applied Mathematics