Program transformation techniques applied to languages used in high performance computing

  • Authors:
  • Songqing Yue

  • Affiliations:
  • University of Alabama, Tuscaloosa , AL, USA

  • Venue:
  • Proceedings of the 2013 companion publication for conference on Systems, programming, & applications: software for humanity
  • Year:
  • 2013

Quantified Score

Hi-index 0.00

Visualization

Abstract

Meta-programming has shown much promise for improving the quality of software. A system that supports meta-programming is able to generate or manipulate other programs to extend their behaviour. Thus far, the power of meta-programming has not been explored deeply in the area of High Performance Computing (HPC). We propose to bring the power of meta-programming to languages that may be used in HPC to help to solve various problems in HPC software related to efficiency, scalability, and adaptation. In our initial efforts we have implemented a meta-programming framework called OpenFortran to build arbitrary source-to-source program transformation libraries for Fortran programs. The design focus of OpenFortran is to enable program transformation in a manner that is transparent to application programmers. Similarly, we have also built a framework for C called OpenC. In this doctoral symposium summary, we present the idea of building a generalized meta-programming framework suitable for extending an arbitrary programming language, which would allow source-to-source program trans-formation. We also describe the possibility of solving problems emerging in HPC software via program trans-formation.