# Towards Automatic Learning of Heuristics for Mechanical Transformations   of Procedural Code

**Authors:** Guillermo Vigueras (IMDEA Software Institute), Manuel Carro (IMDEA, Software Institute, Universidad Polit\'ecnica de Madrid), Salvador Tamarit, (Universidad Polit\'ecnica de Madrid), Julio Mari\~no (Universidad, Polit\'ecnica de Madrid)

arXiv: 1701.07123 · 2017-01-26

## TL;DR

This paper presents a machine learning approach combining reinforcement learning and classification to automatically learn heuristics for guiding program transformations, aiming to simplify programming on heterogeneous supercomputing platforms.

## Contribution

It introduces a novel combination of reinforcement learning and classification to learn heuristics for program transformation strategies in heterogeneous systems.

## Key findings

- Preliminary results show the approach is effective.
- The method can adapt to different transformation scenarios.
- It improves the efficiency of program transformation strategies.

## Abstract

The current trends in next-generation exascale systems go towards integrating a wide range of specialized (co-)processors into traditional supercomputers. Due to the efficiency of heterogeneous systems in terms of Watts and FLOPS per surface unit, opening the access of heterogeneous platforms to a wider range of users is an important problem to be tackled. However, heterogeneous platforms limit the portability of the applications and increase development complexity due to the programming skills required. Program transformation can help make programming heterogeneous systems easier by defining a step-wise transformation process that translates a given initial code into a semantically equivalent final code, but adapted to a specific platform. Program transformation systems require the definition of efficient transformation strategies to tackle the combinatorial problem that emerges due to the large set of transformations applicable at each step of the process. In this paper we propose a machine learning-based approach to learn heuristics to define program transformation strategies. Our approach proposes a novel combination of reinforcement learning and classification methods to efficiently tackle the problems inherent to this type of systems. Preliminary results demonstrate the suitability of this approach.

## Full text

_Full body text omitted from this summary view._ Fetch the complete paper as Markdown: https://tomesphere.com/paper/1701.07123/full.md

## Figures

20 figures with captions in the complete paper: https://tomesphere.com/paper/1701.07123/full.md

## References

18 references — full list in the complete paper: https://tomesphere.com/paper/1701.07123/full.md

---
Source: https://tomesphere.com/paper/1701.07123