Candidate Talk: Streamroller: A Unified Compilation and Synthesis System for Streaming Applications
- Manjunath Kudlur | University of Michigan
Multicore systems have become the industry standard from high-end servers, down through desktops and gaming platforms, and finally into handheld devices. While the industry is still scrambling to find the right model to program these systems, compiler techniques for exploiting coarse grain parallelism have noticeably lagged behind. Stream programming is one model that has wide applicability in the multimedia, graphics, and signal processing domains. Streaming models execute as a set of independent kernels that explicitly communicate data through channels. This talk will present Streamroller, a unified compilation and synthesis system for mapping streaming applications on to multicores and for synthesizing custom application engines for stream programs. The talk will focus on a compiler technique for planning and orchestrating the execution of streaming applications on multicore platforms. The technique addresses the problems of equal work distribution across cores to keep all the cores busy, reducing communication overhead by efficiently overlapping all DMA transfers with computation, and minimizing synchronization overhead. A coarse grain software pipelining technique based on integer linear programming is presented which systematically handles these problems. The talk will also describe the code generation template for implementing the software pipeline onto the Cell architecture. The software pipelining method is compared to a method which simply executes a copy of the stream graph on each available processor. The naive unfolding method works well for completely stateless stream programs, whereas software pipelining produces quality schedules for stream programs with an arbitrary mix of stateful and stateless filters. For a range of streaming applications, a geometric mean speedup of 14.7x was observed on a 16-core Cell platform compared to a single core.
Speaker Details
Manjunath Kudlur received his B.E from P. S. G College of Technology, and M.Sc(Engg) from the Indian Institute of Science, both in computer science and engineering. He is expecting to graduate in summer 2008 with a Ph.D in computer science and engineering from the University of Michigan. Manjunath is interested in compilation for many core architectures, models for parallel programming and high level synthesis of application engines.
-
-
Jeff Running
-
-
Watch Next
-
-
-
-
Accelerating MRI image reconstruction with Tyger
- Karen Easterbrook,
- Ilyana Rosenberg
-
-
-
-
From Microfarms to the Moon: A Teen Innovator’s Journey in Robotics
- Pranav Kumar Redlapalli
-
-