Xevolver: A user-defined code transformation approach to streamlining legacy code migration

Hiroyuki Takizawa, Reiji Suda, Daisuke Takahashi, Ryusuke Egawa

Research output: Chapter in Book/Report/Conference proceedingChapter

Abstract

Since different systems usually require different performance optimizations, an application code is likely "specialized" for a particular system configuration to fully extract the system performance. This is one major reason why migration of an existing application code, so-called legacy code migration, is so laborintensive and error-prone especially in the high-performance computing (HPC) area. To make matters worse, the diversity of system architectures would increase the number of system configurations that have to be considered during the life of an application. As a result, the increasing system complexity and diversity will force programmers to further invest enormous time and effort on HPC application development and maintenance. For long-term software development and maintenance, an HPC application code should not be optimized for a particular system configuration. However, simply excluding system-awareness from the code just results in reducing the performance, because system-awareness can be regarded as the necessary information to exploit the performance of the target system. The goal of this project is to express system-awareness separately from the HPC application code to achieve high performance while keeping the code maintainability. To this end, we have been developing a code transformation framework, Xevolver, so that users can express system-awareness as user-defined code transformation rules separately from HPC application codes. By defining custom code transformations for individual cases, an HPC application code itself does not need to be modified for each system configuration and is transformed for each system by using the code transformations defined separately from the code.

Original languageEnglish
Title of host publicationAdvanced Software Technologies for Post-Peta Scale Computing
Subtitle of host publicationThe Japanese Post-Peta CREST Research Project
PublisherSpringer Singapore
Pages163-181
Number of pages19
ISBN (Electronic)9789811319242
ISBN (Print)9789811319235
DOIs
Publication statusPublished - 2018 Dec 6

ASJC Scopus subject areas

  • Computer Science(all)

Fingerprint Dive into the research topics of 'Xevolver: A user-defined code transformation approach to streamlining legacy code migration'. Together they form a unique fingerprint.

  • Cite this

    Takizawa, H., Suda, R., Takahashi, D., & Egawa, R. (2018). Xevolver: A user-defined code transformation approach to streamlining legacy code migration. In Advanced Software Technologies for Post-Peta Scale Computing: The Japanese Post-Peta CREST Research Project (pp. 163-181). Springer Singapore. https://doi.org/10.1007/978-981-13-1924-2_9