PofoliaShared via Pofolia

· 2013

Halide

Jonathan Ragan‐Kelley, Connelly Barnes, Andrew Adams, Sylvain Paris et al.

Short summary

Halide is a new domain-specific language that simplifies the optimization of complex image processing pipelines, achieving performance gains up to 10x over naive implementations.

AI-generated from the title and abstract; the full text is not read.

Key points

  • Image processing pipelines combine stencil computations and stream programs with complex structures.
  • Performance differences between naive and optimized implementations can be an order of magnitude.
  • Efficient implementations require balancing parallelism, locality, and recomputation.
  • Halide is a domain-specific language designed to simplify these optimizations.

AI-generated from the title and abstract; the full text is not read.

Abstract

Image processing pipelines combine the challenges of stencil computations and stream programs. They are composed of large graphs of different stencil stages, as well as complex reductions, and stages with global or data-dependent access patterns. Because of their complex structure, the performance difference between a naive implementation of a pipeline and an optimized one is often an order of magnitude. Efficient implementations require optimization of both parallelism and locality, but due to the nature of stencils, there is a fundamental tension between parallelism, locality, and introducing redundant recomputation of shared values.

The authors' abstract, as published at the source., 2013 · DOI ↗

TakeawaysPremium
Ask the paperFree account

Continue with a free account

Ask the paper: 3 free questions a day about this paper; save it, get its citation, new summaries every day for your field. Takeaways are Premium.

Continue free on the web

Sign in with Google or Apple; no card needed. You come back to this paper.

On your phone:

Field: Hardware and Architecture

Hardware and ArchitectureComputer Science