|国家预印本平台
首页|Mapple: A Domain-Specific Language for Mapping Distributed Heterogeneous Parallel Programs

Mapple: A Domain-Specific Language for Mapping Distributed Heterogeneous Parallel Programs

Mapple: A Domain-Specific Language for Mapping Distributed Heterogeneous Parallel Programs

来源:Arxiv_logoArxiv
英文摘要

Optimizing parallel programs for distributed heterogeneous systems remains a complex task, often requiring significant code modifications. Task-based programming systems improve modularity by separating performance decisions from core application logic, but their mapping interfaces are often too low-level. In this work, we introduce Mapple, a high-level, declarative programming interface for mapping distributed applications. Mapple provides transformation primitives to resolve dimensionality mismatches between iteration and processor spaces, including a key primitive, decompose, that helps minimize communication volume. We implement Mapple on top of the Legion runtime by translating Mapple mappers into its low-level C++ interface. Across nine applications, including six matrix multiplication algorithms and three scientific computing workloads, Mapple reduces mapper code size by 14X and enables performance improvements of up to 1.34X over expert-written C++ mappers. In addition, the decompose primitive achieves up to 1.83X improvement over existing dimensionality-resolution heuristics. These results demonstrate that Mapple simplifies the development of high-performance mappers for distributed applications.

Anjiang Wei、Rohan Yadav、Hang Song、Wonchan Lee、Ke Wang、Alex Aiken

计算技术、计算机技术

Anjiang Wei,Rohan Yadav,Hang Song,Wonchan Lee,Ke Wang,Alex Aiken.Mapple: A Domain-Specific Language for Mapping Distributed Heterogeneous Parallel Programs[EB/OL].(2025-07-23)[2025-08-10].https://arxiv.org/abs/2507.17087.点此复制

评论