arrow
返回

Halide: Decoupling Algorithms from Schedules for High-Performance Image Processing

delete2017-12-27
delete70
delete
OA
AI
J
Jonathan Ragan‐Kelley *
A
Andrew Adams
D
Dillon Sharlet
C
Connelly Barnes
S
Sylvain Paris
M
Marc Levoy
S
Saman Amarasinghe
F
Frédo Durand
DOI:10.1145/3150211delete
delete原文链接
delete分享
delete收藏
查看原文
摘要

摘要

En 中文
Writing high-performance code on modern machines requires not just locally optimizing inner loops, but globally reorganizing computations to exploit parallelism and locality-doing things such as tiling and blocking whole pipelines to fit in cache. This is especially true for image processing pipelines, where individual stages do much too little work to amortize the cost of loading and storing results to and from off-chip memory. As a result, the performance difference between a naive implementation of a pipeline and one globally optimized for parallelism and locality is often an order of magnitude. However, using existing programming tools, writing high-performance image processing code requires sacrificing simplicity, portability, and modularity. We argue that this is because traditional programming models conflate the computations defining the algorithm with decisions about intermediate storage and the order of computation, which we call the schedule. We propose a new programming language for image processing pipelines, called Halide, that separates the algorithm from its schedule. Programmers can change the schedule to express many possible organizations of a single algorithm. The Halide compiler then synthesizes a globally combined loop nest for an entire algorithm, given a schedule. Halide models a space of schedules which is expressive enough to describe organizations that match or outperform state-of-the-art hand-written implementations of many computational photography and computer vision algorithms. Its model is simple enough to do so often in only a few lines of code, and small changes generate efficient implementations for x86, ARM, Graphics Processors (GPUs), and specialized image processors, all from a single algorithm. Halide has been public and open source for over four years, during which it has been used by hundreds of programmers to deploy code to tens of thousands of servers and hundreds of millions of phones, processing billions of images every day.
AI总结

AI总结

对已上传原文的论文进行重点信息的提取,主要内容包括:简要概述、研究摘要、背景介绍、关键亮点、图文解析、展望与总结。

期刊

Communications of the ACM 封面图
Communications of the ACM
IF:
12.2
论文数:
1.2W
被引数:
3.7W

机构

A
adobe systems inc.
学者数:
273
论文数: 305
被引数: 0
U
University of Virginia
学者数:
3.0W
论文数: 2.7W
被引数: 4.1W
University of California System 封面图
University of California System
学者数:
37.7W
论文数: 33.8W
被引数: 6.6K
G
Google Incorporated
学者数:
3.5K
论文数: 1.8K
被引数: 8
学者 查看更多机构
引用论文

引用论文

Demonstration of Natural Gas and Hydrogen Cocombustion in an Industrial Gas Turbine
err2022-12-08
err0
PREAI
errHannes Laget; Peter Griebel; Luc Gooren; Fabian Hampp; Nicolas Jouret; Oliver Lammel
err分享
err收藏
The Direct3D 10 system
err2006-07-01
err158
PREAI
errBlythe, David
err分享
err收藏
A Detailed Analytical Study of Hydrogen Reaction in a Novel Micromix Combustion System
err2018-08-30
err0
PREAI
errRamzi Ben Abdallah; Vishal Sethi; Pierre Q. Gauthier; Andrew Martin Rolt; David Abbott
err分享
err收藏
Decoupling Algorithms from Schedules for Easy Optimization of Image Processing Pipelines
err2012-07-01
err141
errOAAI
errRagan-Kelley, Jonathan; Adams, Andrew; Paris, Sylvain; Levoy, Marc; Amarasinghe, Saman; Durand, Fredo
err分享
err收藏
Dust sampling in WEST and tritium retention in tokamak-relevant tungsten particles
err2020-08-01
err0
errOAAI
errS. Peillon; G. Dougniaux; M. Payet; E. Bernard; G. Pieters; S. Feuillastre; S. Garcia-Argote; F. Gensdarmes; C. Arnas; F. Miserque; N. Herlin-Boime; C. Grisolia; O. Pluchery
err分享
err收藏
The Frankencamera: An Experimental Platform for Computational Photography
err2010-07-26
err122
PREAI
errAdams, Andrew; Jacobs, David E.; Dolson, Jennifer; Tico, Marius; Pulli, Kari; Talvala, Eino-Ville; Ajdin, Boris; Vaquero, Daniel; Lensch, Hendrik P. A.; Horowitz, Mark; Park, Sung Hee; Gelfand, Natasha; Baek, Jongmin; Matusik, Wojciech; Levoy, Marc
err分享
err收藏
SPIRAL:: Code generation for DSP transforms螺旋:: DSP变换的代码生成
err2005-02-01
err505
PREAI
errPüschel, M; Moura, JMF; Johnson, JR; Padua, D; Veloso, MM; Singer, BW; Xiong, JX; Franchetti, F; Gacic, A; Voronenko, Y; Chen, K; Johnson, RW; Rizzolo, N
err分享
err收藏
Fast Local Laplacian Filters: Theory and Applications
err2014-09-23
err124
errOAAI
errAubry, Mathieu; Paris, Sylvain; Hasinoff, Samuel W.; Kautz, Jan; Durand, Fredo
err分享
err收藏
学者 查看更多内容