compiler17

Page 1

1

Overview • Machine learning - what is it and why is it useful?

Machine Learning based Compilation • Predictive modelling Michael O’Boyle • Scheduling and low level optimisation March, 2009 • Loop unrolling and inlining • Limits and other uses of machine learning • Future work and summary

M. O’Boyle

Machine Learning based Compilation

March, 2009

M. O’Boyle

Machine Learning based Compilation

March, 2009

2

3

Machine Learning as a solution

Machine Learning

• Well established area of AI, neural networks, genetic algorithms etc. but what has AI got to do with compilation?

• The inputs are characteristics of the program and processor. Outputs, the optimisation function we are interested in, execution time power or code size

• In a very simplistic sense machine learning can be considered as sophisticated form of curve fitting.

• Theoretically predict future behaviour and find the best optimisation

Execution

OUTPUTS

. . .

.

.

.

Machine Learning based Compilation

.

.

.

.

. Program characteristics

INPUTS

M. O’Boyle

.

time

March, 2009

M. O’Boyle

Best Transformation

.

.

.

. .

.

.

.

. Program characteristics

Machine Learning based Compilation

March, 2009


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.