Programming Heterogeneous Systems from an Image Processing DSL
Jing Pu, Steven Bell, Xuan Yang, Jeff Setter, Stephen Richardson,, Jonathan Ragan-Kelley, Mark Horowitz

TL;DR
This paper extends the Halide language to enable automatic generation of hardware accelerators and integrated software for heterogeneous systems, simplifying programming and improving performance and energy efficiency.
Contribution
It introduces a compiler that automatically creates hardware accelerators from high-level image processing code and generates complete software, facilitating heterogeneous system programming.
Findings
Achieves up to 6x higher performance over CPU
Reduces energy consumption by up to 8x
Demonstrates effective mapping on Xilinx Zynq platform
Abstract
Specialized image processing accelerators are necessary to deliver the performance and energy efficiency required by important applications in computer vision, computational photography, and augmented reality. But creating, "programming,"and integrating this hardware into a hardware/software system is difficult. We address this problem by extending the image processing language, Halide, so users can specify which portions of their applications should become hardware accelerators, and then we provide a compiler that uses this code to automatically create the accelerator along with the "glue" code needed for the user's application to access this hardware. Starting with Halide not only provides a very high-level functional description of the hardware, but also allows our compiler to generate the complete software program including the sequential part of the workload, which accesses the…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsParallel Computing and Optimization Techniques · Embedded Systems Design Techniques · CCD and CMOS Imaging Sensors
