Abstract
Xevolver is a code transformation framework under active development to help legacy application migration to extreme-scale computing systems. The framework originally assumes that transformation rules are written in XSLT, which might be too low-level for standard users to express their own rules. Hence, this article describes a high-level interface of the Xevolver framework, which offers an easy and declarative way to define a custom compiler directive associated with a composite of predefined loop transformation rules. Such a compiler directive can also be associated with text insertion and deletion. In the evaluation, 160 variants of a triple-nested loop required for empirical performance tuning can be generated mechanically by using the high-level interface.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Allen, R., Kennedy, K.: Optimizing Compilers for Modern Architectures: A Dependence-Based Approach. Morgan Kaufmann, San Francisco (2001)
Introducing JSON. http://www.json.org/ (9 June 2015)
Kay, M.: XSLT 2.0 and XPath 2.0 Programmer’s Reference (Programmer to Programmer), 4 edn. Wrox Press Ltd., Birmingham (2008)
Naono, K., Teranishi, K., Cavazos, J., Suda, R. (eds.): Software Automatic Tuning—from Concepts to State-of-the-Art Results. Springer, New York (2010)
Suda, R., Hirasawa, S., Takizawa, H.: User-defined source-to-source code transformation tools using Xevolver. Presentation at International Workshop on Legacy HPC Application Migration (LHAM2014) (2014)
Takizawa, H., Hirasawa, S., Kobayashi, H.: Xevolver: an XML-based programming framework for software evolution. Poster presentation at supercomputing 2013 (SC13) (2013)
Takizawa, H., Hirasawa, S., Hayashi, Y., Egawa, R., Kobayashi, H.: Xevolver: an XML-based code translation framework for supporting HPC application migration. In: IEEE International Conference on High Performance Computing (HiPC) (2014)
The Xevolver Project: JST CREST “an evolutionary approach to construction of a software development environment for massively-parallel heterogeneous systems”. http://xev.arch.is.tohoku.ac.jp/ (2011)
Acknowledgements
This research was partially supported by JST CREST “An Evolutionary Approach to Construction of a Software Development Environment for Massively-Parallel Heterogeneous Systems” and Grant-in-Aid for Scientific Research(B) #25280041. The authors would like to thank team members of the CREST project for fruitful discussions on the design and development of the Xevolver framework.
In addition, this research was partially supported by “Joint Usage/Research Center for Interdisciplinary Large-scale Information Infrastructures” and “High Performance Computing Infrastructure” in Japan for using the computing resources installed in Cyberscience Center, Tohoku University.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2015 Springer International Publishing Switzerland
About this paper
Cite this paper
Takizawa, H., Sato, D., Hirasawa, S., Kobayashi, H. (2015). A High-Level Interface of Xevolver for Composing Loop Transformations. In: Resch, M., Bez, W., Focht, E., Kobayashi, H., Qi, J., Roller, S. (eds) Sustained Simulation Performance 2015. Springer, Cham. https://doi.org/10.1007/978-3-319-20340-9_11
Download citation
DOI: https://doi.org/10.1007/978-3-319-20340-9_11
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-20339-3
Online ISBN: 978-3-319-20340-9
eBook Packages: Mathematics and StatisticsMathematics and Statistics (R0)