Home

About

Advanced Search

Browse by Discipline

Scientific Societies

E-print Alerts

Add E-prints

E-print Network
FAQHELPSITE MAPCONTACT US


  Advanced Search  

 
Exploiting Coarse-Grained Task, Data, and Pipeline Parallelism in Stream Programs
 

Summary: Exploiting Coarse-Grained Task, Data,
and Pipeline Parallelism in Stream Programs
Michael I. Gordon, William Thies, and Saman Amarasinghe
Massachusetts Institute of Technology
Computer Science and Artificial Intelligence Laboratory
{mgordon, thies, saman}@mit.edu
Abstract
As multicore architectures enter the mainstream, there is a press-
ing demand for high-level programming models that can effectively
map to them. Stream programming offers an attractive way to ex-
pose coarse-grained parallelism, as streaming applications (image,
video, DSP, etc.) are naturally represented by independent filters
that communicate over explicit data channels.
In this paper, we demonstrate an end-to-end stream compiler
that attains robust multicore performance in the face of varying ap-
plication characteristics. As benchmarks exhibit different amounts
of task, data, and pipeline parallelism, we exploit all types of par-
allelism in a unified manner in order to achieve this generality. Our
compiler, which maps from the StreamIt language to the 16-core
Raw architecture, attains a 11.2x mean speedup over a single-core

  

Source: Amarasinghe, Saman - Computer Science and Artificial Intelligence Laboratory & Department of Electrical Engineering and Computer Science, Massachusetts Institute of Technology (MIT)
Krintz, Chandra - Department of Computer Science, University of California at Santa Barbara

 

Collections: Computer Technologies and Information Sciences