Xevdriver: A Software System Supporting XML-based Source-to-Source Code Transformations on Fortran Programs

Xevdriver: A Software System Supporting XML-based Source-to-Source Code Transformations on Fortran Programs
复制标题

Xevdriver:支持 Fortran 程序上基于 XML 的源代码到源代码转换的软件系统

DOI:
10.1109/candar.2016.0096
复制
发表时间:
2016
期刊:
2016 Fourth International Symposium on Computing and Networking (CANDAR)
影响因子:
--
通讯作者:
Hiroyuki Takizawa
Hiroyuki Takizawa
中科院分区:
--
文献类型:
--
作者:
R. Suda;Hiroyuki Takizawa

文献摘要

被引文献

相似文献

Xevolver框架是一个代码转换框架,用于支持高性能计算代码的渐进式修改。本文介绍了一组软件模块,这些模块便于对多个源代码进行多种代码转换的管理任务。我们将这组软件模块称为xevdriver,因为它使用Xevolver框架驱动转换。首先,xevdriver提供了临时文件的抽象视图。Fortran和XML之间的解析和反解析是自动完成的,用户在一系列代码转换应用过程中无需跟踪临时文件名。其次,xevdriver还提供了转换组合的抽象视图。xevdriver提供了一种脚本语言,用户可以在其中将代码转换的组合定义为过程。第三,根据上述抽象提供了日志功能和一个日志查看器。用户可以从代码转换过程的高级抽象层面在日志查看器上查看源代码是如何转换的,并且可以深入检查中间结果,直至转换实现的任意具体程度。我们的工具集将有助于基于Xevolver框架的复杂代码转换的开发、管理和应用。
The Xevolver framework is a code transformation framework for supporting evolutional modifications of high performance computing codes. This paper introduces a set of software modules that facilitates administrative tasks about multiple code transformations on multiple source codes. We call this set of software modules the xevdriver, because it drives transformations using Xevolver framework. First, xevdriver provides an abstract view of temporary files. Parsing and unparsing between Fortran and XML are done automatically, and the user do not have to keep track of temporary file names during a series of applications of code transformations. Second, xevdriver also provides an abstract view of combinations of transformations. Xevdriver provides a script language, in which users can define combinations of code transformations as procedures. Third, the logging functions and a log-viewer are provided in accordance with the above abstractions. Users can check how the source codes are transformed on the log-viewer from the high level abstractions of code transformation procedures, and can inspect the intermediate results down into an arbitrary level of concreteness of the implementations of transformations. Our toolset will help development, management and applications of complex code transformations based on Xevolver framework.