Back to results

University of Illinois at Urbana-Champaign

Code generation of array constructs for distributed memory systems

Abstract

dc:description

Programming for high-performance systems to fully utilize the potential of the computing system is a complex problem. This is particularly evident when programming distributed memory clusters containing multiple NUMA chips and GPUs on each node since it would require a complex combination of MPI, OpenMP, CUDA, OpenCL, etc to achieve high performance even for sequentially simplistic codes. Programs requiring high performance are usually painstakingly written by hand in C/C++ or Fortran using MPI+X to target these machines. This work presents a multi-layer code generation framework Vaani that takes a very high-level representation of computations and generates C+MPI code by transforming the input through a series of intermediate representations. The very high-level nature of the language greatly facilitates programming parallel systems. Additionally, the use of multiple representations provide a flexible and transparent venue for the user to interact and customize the transformation process to generate code suitable to the user and the target machine. Experimental evaluation shows that the current implementation of Vaani generates code that is competitive with handwritten codes and hand-optimized libraries.

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
2021

Author and committee

dc:creator, dc:contributor.*
Author dc:creator
  • Pothukuchi, Sweta Yamini
Contributors dc:contributor
  • Padua, David
  • Kale, Laxmikant V
  • Kloeckner, Andreas
  • Franchetti, Franz

Subjects

dc:subject × 4

Rights

dc:rights
Statement dc:rights
  • Copyright 2020 Sweta Yamini Pothukuchi
Language dc:language
en

Identifiers

dc:identifier.*
Handle dc:identifier
http://hdl.handle.net/2142/109402
OAI identifier oai:identifier
oai:www.ideals.illinois.edu:2142/109402

Chain of custody

source
Harvested from
University of Illinois - Urbana-Champaign
Base URL
www.ideals.illinois.edu/oai-pmh
Last updated
2026-07-22
Source record
OAI-PMH GetRecord
citation

Pothukuchi, Sweta Yamini. Code generation of array constructs for distributed memory systems. Dissertation thesis, University of Illinois at Urbana-Champaign, 2021. http://hdl.handle.net/2142/109402