arrow
Return

Automatically Translating Image Processing Libraries to Halide

delete2019-11-08
delete26
delete
OA
AI
M
M Ahmad *
J
Jonathan Ragan‐Kelley
A
Alvin Cheung
S
Shoaib Kamil
DOI:10.1145/3355089.3356549delete
deleteOriginal
deleteShare
deleteSave
View PDF
Abstract

Abstract

En 中文
This paper presents DEXTER, a new tool that automatically translates image processing functions from a low-level general-purpose language to a high-level domain-specific language (DSL), allowing them to leverage cross-platform optimizations enabled by DSLs. Rather than building a classical syntax-driven compiler to do this translation, DEXTER leverages recent advances in program synthesis and program verification, along with a new domain-specific synthesis algorithm, to translate C++ image processing code to the Halide DSL, while guaranteeing semantic equivalence. This new synthesis algorithm scales and generalizes to much larger and more complex functions than prior work, including the ability to handle tiling, conditionals, and multi-stage pipelines in the original low-level code. To demonstrate the effectiveness of our approach, we evaluate DEXTER using real-world image processing functions from Adobe Photoshop, a widely used multi-platform image processing program. Our results show that DEXTER can translate 264 out of 353 functions in our test set, with the original implementations ranging from 20 to 150 lines of code. By leveraging Halide's advanced auto-scheduling capabilities, we get median speedups of 7.03x and 4.52x for DEXTER-translated functions as compared to the original implementations on Intel and ARM architectures, respectively.
Keywords:
Verified Lifting
Machine Programming
Stencil Computation
AI Summary

AI Summary

Key information extracted from the uploaded paper, including a brief overview, abstract, background, key highlights, visual analysis, and future outlook.

Journal

ACM Transactions on Graphics cover
ACM Transactions on Graphics
IF:
9.5
Papers:
4.7K
Citations:
3.6W

Organization

U
University of Washington
Scholars:
8.0W
Papers: 7.0W
Citations: 12.5W
University of California System cover
University of California System
Scholars:
37.5W
Papers: 33.7W
Citations: 6.6K