Design overview

From MAGEEC
Revision as of 13:40, 14 August 2013 by James (talk | contribs) (Listed the three portions of MAGEEC)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search


Overall MAGEEC is split into three phases: data gathering, training, and compiler infrastructure.

Data Gathering

The Data gathering stage is the initial stage where programs are generated, their features collect and the binary executed on the target platform. The energy data for this is collected and entered into a database

Training

The training phase takes the data from the database, and learns a classifier.

Compiler Infrastructure

This portion of MAGEEC embeds into the compiler as a plugin, controlling which optimisation passes get executed based on the classifier that was learned previously.