Title :
Extendable pattern-oriented optimization directives
Author :
Cui, Huimin ; Xue, Jingling ; Wang, Lei ; Yang, Yang ; Feng, Xiaobing ; Fan, Dongrui
Abstract :
Current programming models and compiler technologies for multi-core processors do not exploit well the performance benefits obtainable by applying algorithm-specific, i.e., semantic-specific optimizations to a particular application. In this work, we propose a pattern-making methodology that allows algorithm-specific optimizations to be encapsulated into “optimization patterns” that are expressed in terms of pre-processor directives so that simple annotations can result in significant performance improvements. To validate this new methodology, a framework, named EPOD, is developed to map such directives to the underlying optimization schemes. We have identified and implemented a number of optimization patterns for three representative computer platforms. Our experimental results show that a pattern-guided compiler can outperform the state-of-the-art compilers and even achieve performance as competitive as hand-tuned code. Thus, such a pattern-making methodology represents an encouraging direction for domain experts´ experience and knowledge to be integrated into general-purpose compilers.
Keywords :
multiprocessing systems; optimisation; program compilers; EPOD; algorithm specific optimization; compiler technology; hand tuned code; multicore processor; pattern guided compiler; pattern making methodology; pattern oriented optimization directive; preprocessor directive; programming model; Instruction sets; Kernel; Optimization; Programming; Symmetric matrices; Tuning;
Conference_Titel :
Code Generation and Optimization (CGO), 2011 9th Annual IEEE/ACM International Symposium on
Conference_Location :
Chamonix
Print_ISBN :
978-1-61284-356-8
Electronic_ISBN :
978-1-61284-358-2
DOI :
10.1109/CGO.2011.5764679