International Journal of Computer Applications |
Foundation of Computer Science (FCS), NY, USA |
Volume 86 - Number 9 |
Year of Publication: 2014 |
Authors: Waseem Ahmed |
10.5120/15010-3303 |
Waseem Ahmed . Bridging the Performance Gap between Manual and Automatic Compilers with Intent-based Compilation. International Journal of Computer Applications. 86, 9 ( January 2014), 1-7. DOI=10.5120/15010-3303
In spite of years of research in automatic parallelization, progress has been slow in terms of tools that can consistently generate scalable, portable and efficient code for multiple architectures. Moreover, a substantial difference in efficiency exists between code generated automatically and code generated by an expert programmer. Although the fact that the best sequential algorithm for a problem can be very different from the best parallel algorithm is well known, the feature of algorithm substitution is absent from most tools available today. However, automatically identifying an algorithm used in code is not trivial considering the nuances in programming style, algorithmic representations and expressions. This paper presents a novel Intent Based Compilation approach that uses a rule-based Expert System Engine to identify the intent of the algorithm used in the code based on fine- and coarse-grained features extracted from code. Using this information, the most optimized algorithm for the target architecture is then substituted. Results obtained by using Amoeba, a framework that incorporates this methodology, on codes obtained from the public domain are presented.