Stream Scheduling

Abstract

Media applications can be cast as a set of computation kernels operating on sequential data streams. This representation exposes the structure of an application to the hardware as well as to the compiler tools. Stream scheduling is a compiler technology that applies knowledge of the high-level structure of a program in order to target stream hardware as well as to perform high-level optimizations on the application. The basic methods used by stream scheduling are discussed in this paper. In addition, results on the Imagine stream processor are presented. These show that stream programs executed using an automated stream scheduler require on average 98% of the execution time that hand-optimized assembly versions of the same programs require.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Aug 01, 2000
Accession Number
ADA419624

Entities

People

  • Bill Dally
  • Brian Towles
  • John D. Owens
  • Peter Mattson
  • Ujval J. Kapasi

Organizations

  • Stanford University

Tags

Communities of Interest

  • Materials and Manufacturing Processes

DTIC Thesaurus Topics

  • Algorithms
  • Arithmetic
  • Arithmetic Units
  • Assembly
  • Bandwidth
  • Compilers
  • Computations
  • Computer Programming
  • Computer Programs
  • Consumers
  • Instructions
  • Mathematical Analysis
  • Mathematics
  • Multithreading
  • Optimization
  • Scheduling (Production)
  • Simulators

Fields of Study

  • Computer science

Readers

  • Computer Vision.
  • Parallel and Distributed Computing.