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.
翻译:由于处理器的性能改进速度放慢,高频处理系统的世界正在向一个更复杂的系统转变,因为处理器的性能改进速度已经放慢。有希望的方法之一是多域特定语言(DSL),它提供了一个生产环境,可以创造一个没有痛苦的高效程序。然而,现有的 DSL 平台本身往往缺乏可移植性,而且花费了DSL 开发者巨大的精力。为了解决这个问题,我们提议了一个基于Aspect-Oright-Product-product-production(AOP)的 DSL(AOP) 构建平台, 使开发者能够通过合并星光模块建立一个 DSL 平台。 光谱模块管理着我们平台上的抽象应用流程、数据结构和记忆存取。 因此, 开发者可以创建任何 DSL 平台, 其目标应用具有HPC 应用程序通常具有的属性, 即抽象假设的属性。 本研究采用了一个能够处理 MPI 和 OpenMP 层的原型平台。 原型平台支持三种类型的应用( Ststrandredred- Grid- Grid- Grid, Unstrat- Grid- Grid- Grid, 和Pid, 和Pimult) 。然后, 我们评估了平台实现灵活和生产率产生的间接成本。