Using Verified Lifting to Optimize Legacy Stencil Codes (Final Project Report)
- Univ. of Washington, Seattle, WA (United States); UC Berkeley
This project investigated new techniques for compiling stencil and stencil-like computations. Stencils computations are commonly found in applications such as image processing, physical simulations, image processing, and machine learning. In recent years, many high-performance domain-specific languages (DSLs) have been proposed to optimize stencil computations. To leverage such DSLs, however, existing codes often need to be rewritten. Such rewriting is manual, labor intensive, and error-prone. To alleviate such issues, this project investigated the application of program synthesis and artificial learning techniques to enable stencil computations to automatically leverage new high-performance DSLs. Rather than constructing syntax driven rules, verified lifting uses program synthesis to search for a target code fragment to compile the given input code into. In addition, it also searches for a proof that validates how the found target code fragment preserves the semantics of the original input. Thus, the target code fragment is guaranteed to be semantically equivalent to the input.
- Research Organization:
- Univ. of Washington, Seattle, WA (United States)
- Sponsoring Organization:
- USDOE Office of Science (SC), Advanced Scientific Computing Research (ASCR)
- DOE Contract Number:
- SC0016260
- OSTI ID:
- 1765083
- Report Number(s):
- DOE-UWASH--16260
- Country of Publication:
- United States
- Language:
- English
Similar Records
Snowflake: A Lightweight Portable Stencil DSL
Helium: lifting high-performance stencil kernels from stripped x86 binaries to halide DSL code