University of Illinois at Urbana-Champaign
Building blocks for high-performance languages
Abstract
dc:descriptionAs machine complexity and diversity rise, the importance of high-level abstractions to the high-performance computing ecosystem rises. These tools, like adaptive runtimes and domain-specific or general-purpose languages, promote developer productivity and performance portability, lowering the barrier to building large-scale, high-performance parallel applications. However, their development and maintenance costs can be discouragingly high, relegating us to the use of classical, low-level tools. Observing this, we propose that a language framework with high-level constructs built on a rich runtime system can significantly improve the productivity of language authors. To explore this hypothesis, we designed and implemented such a framework, EIR, then targeted it with an extensible language, Ergoline. Within Ergoline, we embedded several DSLs derived from past works built on the underlying RTS, Charm++. We explored code reuse among them and offered shared optimizations within EIR. To close semantic gaps between Charm++ and EIR, we developed Hypercomm—a suite of optimized abstractions. Through our experiences developing these tools, we conclude that our approach can offer performance and productivity benefits to language authors and their users alike
Degree
thesis:*- Name thesis:degree_name
- Ph.D.
- Level thesis:degree_level
- Dissertation
- Discipline thesis:degree_discipline
- Computer Science
- Grantor
- University of Illinois at Urbana-Champaign
- Year dc:date
- 2022
Author and committee
dc:creator, dc:contributor.*- Author dc:creator
-
- Szaday, Justin Josef
- Contributors dc:contributor
-
- Kale, Laxmikant
- Amato, Nancy
- Padua, David
- Chamberlain, Brad
Subjects
dc:subject × 4Rights
dc:rights- Statement dc:rights
-
- Copyright 2022 Justin Szaday
- Language dc:language
- en, eng
Identifiers
dc:identifier.*- Handle dc:identifier
- https://hdl.handle.net/2142/116159