People   Project   Publications   More Info  
    architecture   programming   performance   VLSI   board   applications   tools  




Imagine is a versatile platform for diverse applications.  Our current application set contains graphical and signal processing tools. While Imagine is a SIMD and VLIW machine, it contains sufficient support for conditional operators to allow Imagine to provide high performance on applications like MPEG encoding and Polygon Rendering.   "Efficient Conditional Operations for Data-parallel Architectures"


Stream Programming

Programming overview: Imagine is programmed with a combination of KernelC for Imagine VLIW kernels and StreamC, for the controlling host processor.


Existing Applications

The Imagine team has implemented a set of applications to exercise Imagine's capabilities. 

Polygon rendering
We have implemented a graphics pipeline based on the Stanford Real Time Shading language.
Depth extraction
A single Imagine can perform stereo-depth extraction at 200 frame per second.
MPEG Encoding
An Imagine can encode MPEG2 video at 100-300 fps.
Imagine can sustain 8.5 GOPS when performing FFTs, a considerable performance increase over other programmable processors.
QRD Decomposition
QRD Decomposition is a standard linear algebra operation commonly used for minimizing systems of linear equations.  It is also a key kernel of the Real-Time Space-Time Adaptive Processing  (RT_STAP) and accounts for up to 80% of the computation in the MITRE RT_STAP Benchmark.  Imagine sustains over 10 GFLOPS for realistic matrix dimensions.