论文标题
基于方面的基于方面的编程构件平台,用于构建针对HPC应用的特定领域语言
Aspect-Oriented Programming based building block platform to construct Domain-Specific Language for HPC application
论文作者
论文摘要
HPC系统的世界正在变为更复杂的系统,因为处理器的性能提高已减慢。有希望的方法之一是特定于领域的语言(DSL),该语言提供了一个富有成效的环境,可以创建一个没有痛苦的高效程序。但是,现有的DSL平台本身通常缺乏可移植性,并且花费了DSL开发人员付出了巨大的努力。为了解决此问题,我们建议基于方面的编程(AOP)DSL构造平台,使开发人员能够通过结合方面模块来构建DSL平台。方面模块在我们的平台上管理抽象的应用程序流,数据结构和内存访问。因此,抽象假设的假设,开发人员可以创建任何目标应用程序具有HPC应用程序通常具有的属性的DSL平台。这项研究实施了一个可以处理MPI和OpenMP层的原型平台。原型支持三种类型的应用程序(结构性网格,非结构化网格和粒子模拟)。然后,我们评估了通过达到平台的灵活性和生产力引起的开销。
The world of HPC systems is changing to a more complicated system because the performance improvement of processors has been slowed down. One of the promising approaches is Domain-Specific Language(DSL), which provides a productive environment to create a high-efficient program without pain. However, existing DSL platforms themselves often lack portability and cost DSL developers great effort. To solve this issue, we propose an Aspect-Oriented Programming(AOP) based DSL constructing platform, enabling developers to build a DSL platform by combining Aspect modules. Aspect modules manage abstracted application flow, data structure, and memory access on our platform. Therefore, developers can create any DSL platform whose target application has the attributes which HPC applications usually have, the abstraction assumes. This study implemented a prototype platform that can handle MPI and OpenMP layers. The prototype supports three types of applications (Structured-Grid, Unstructured-Grid, and Particle Simulation). Then, we evaluated the overheads caused by achieving flexibility and productivity of the platform.