Title :
A Bayesian network approach for compiler auto-tuning for embedded processors
Author :
Ashouri, Amir Hossein ; Mariani, Giovanni ; Palermo, Gianluca ; Silvano, Cristina
Author_Institution :
Dipt. di Elettron., Politec. di Milano, Milan, Italy
Abstract :
The complexity and diversity of today´s architectures require an additional effort from the programmers in porting and tuning the application code across different platforms. The problem is even more complex when considering that also the compiler requires some tuning, since standard optimization options have been customized for specific architectures or designed for the average case. This paper proposes a machine-learning approach for reducing the cost of the compiler auto-tuning phase and to speedup the application performance in embedded architectures. The proposed framework is based on an application characterization done dynamically with microarchitecture independent features and based on the usage of Bayesian Networks. The main characteristic of the Bayesian Network approach consists of not describing the solution as a strict set of compiler transformations to be applied, but as a complex probability distribution function to be sampled. Experimental results, carried out on an ARM platform and GCC transformation space, proved the effectiveness of the proposed methodology for the selected benchmarks. The selected set of solutions (less than 10% of the search space) demonstrated to be very close to the optimal sequence of transformations, showing also an applications performance speedup up to 2.8 (1.5 on average) with respect to -O2 and -O3 for the cBench suite. Additionally, the proposed method demonstrated a 3× speedup in terms of search time with respect to an iterative compilation approach, given the same quality of the solutions1.
Keywords :
belief networks; computer architecture; electronic engineering computing; embedded systems; learning (artificial intelligence); microprocessor chips; optimisation; program compilers; statistical distributions; ARM platform; Bayesian network; GCC transformation space; application code porting; application code tuning; compiler auto-tuning; compiler transformations; complex probability distribution function; cost reduction; embedded architectures; embedded processors; machine-learning approach; microarchitecture; standard optimization options; Bayes methods; Network topology; Optimization; Probability distribution; Program processors; Training; Vectors;
Conference_Titel :
Embedded Systems for Real-time Multimedia (ESTIMedia), 2014 IEEE 12th Symposium on
Conference_Location :
Greater Noida
DOI :
10.1109/ESTIMedia.2014.6962349