|
|
|
|
LEADER |
01540 am a22001933u 4500 |
001 |
143847 |
042 |
|
|
|a dc
|
100 |
1 |
0 |
|a Liu, Amanda
|e author
|
700 |
1 |
0 |
|a Bernstein, Gilbert Louis
|e author
|
700 |
1 |
0 |
|a Chlipala, Adam
|e author
|
700 |
1 |
0 |
|a Ragan-Kelley, Jonathan
|e author
|
245 |
0 |
0 |
|a Verified tensor-program optimization via high-level scheduling rewrites
|
260 |
|
|
|b Association for Computing Machinery (ACM),
|c 2022-07-19T13:14:37Z.
|
856 |
|
|
|z Get fulltext
|u https://hdl.handle.net/1721.1/143847
|
520 |
|
|
|a <jats:p>We present a lightweight Coq framework for optimizing tensor kernels written in a pure, functional array language. Optimizations rely on user scheduling using series of verified, semantics-preserving rewrites. Unusually for compilation targeting imperative code with arrays and nested loops, all rewrites are source-to-source within a purely functional language. Our language comprises a set of core constructs for expressing high-level computation detail and a set of what we call reshape operators, which can be derived from core constructs but trigger low-level decisions about storage patterns and ordering. We demonstrate that not only is this system capable of deriving the optimizations of existing state-of-the-art languages like Halide and generating comparably performant code, it is also able to schedule a family of useful program transformations beyond what is reachable in Halide.</jats:p>
|
546 |
|
|
|a en
|
655 |
7 |
|
|a Article
|
773 |
|
|
|t 10.1145/3498717
|
773 |
|
|
|t Proceedings of the ACM on Programming Languages
|