A stream compiler for communication-exposed architectures

By Michael I. Gordon, William Thies, Michal Karczmarek, Jasper Lin, Ali S. Meli, Andrew A. Lamb, Chris Leger, J.S.S.M. Wong, H. Hoffmann, David Maze and 1 more. ASPLOS X, 2002

386 citations recorded by the source corpus.

With the increasing miniaturization of transistors, wire delays are becoming a dominant factor in microprocessor performance. To address this issue, a number of emerging architectures contain replicated processing units with software-exposed communication between one unit and another (e.g., Raw, SmartMemories, TRIPS). However, for their use to be widespread, it will be necessary to develop compiler technology that enables a portable, high-level language to execute efficiently across a range of wire-exposed architectures.In this paper, we describe our compiler for StreamIt: a high-level, architecture-independent language for streaming applications. We focus on our backend for the Raw processor. Though StreamIt exposes the parallelism and communication patterns of stream programs, some analysis is needed to adapt a stream program to a software-exposed processor. We describe a partitioning algorithm that employs fission and fusion transformations to adjust the granularity of a stream graph, a layout algorithm that maps a stream graph to a given network topology, and a scheduling strategy that generates a fine-grained static communication pattern for each computational element.We have implemented a fully functional compiler that parallelizes StreamIt applications for Raw, including several load-balancing transformations. Using the cycle-accurate Raw simulator, we demonstrate that the StreamIt compiler can automatically map a high-level stream abstraction to Raw without losing performance. We consider this work to be a first step towards a portable programming model for communication-exposed architectures.

Subfields: Computer Networks and Communications, Hardware and Architecture

View Paper: https://www.semanticscholar.org/paper/4ce393506dc1e0ddbc65225d2dad24d31d430c90

How researchers see this paper

The researchers whose trusted networks rank it highest, strongest advocate first. Every researcher gets a different order.

In Computer Networks and Communications

  1. G. Mainland
  2. Samuel Williams
  3. John M. Shalf
  4. Greg Morrisett
  5. Saman P. Amarasinghe
  6. Christos Kozyrakis
  7. Ram Rangan
  8. Frédo Durand

In Hardware and Architecture

  1. Saman P. Amarasinghe
  2. Samuel Williams
  3. John M. Shalf
  4. Andrew Adams
  5. Jonathan Ragan-Kelley
  6. Frédo Durand
  7. Christos Kozyrakis
  8. Ram Rangan

Citations in the corpus