End-to-end translation validation for the halide language

Basile Clément, Albert Cohen
2022 Proceedings of the ACM on Programming Languages (PACMPL)  
This paper considers the correctness of domain-specific compilers for tensor programming languages through the study of Halide, a popular representative. It describes a translation validation algorithm for affine Halide specifications, independently of the scheduling language. The algorithm relies on "prophetic" annotations added by the compiler to the generated array assignments. The annotations provide a refinement mapping from assignments in the generated code to the tensor definitions from
more » ... he specification. Our implementation leverages an affine solver and a general SMT solver, and scales to complete Halide benchmarks.
doi:10.1145/3527328 fatcat:sm4gpdt64jfhvmmd6eelsf6rt4