Verification of polyhedral optimizations with constant loop bounds in finite state space computations

15Citations
Citations of this article
4Readers
Mendeley users who have this article in their library.
Get full text

Abstract

As processors gain in complexity and heterogeneity, compilers are asked to perform program transformations of ever-increasing complexity to effectively map an input program to the target hardware. It is critical to develop methods and tools to automatically assert the correctness of programs generated by such modern optimizing compilers. We present a framework to verify if two programs (one possibly being a transformed variant of the other) are semantically equivalent. We focus on scientific kernels and a state-of-the-art polyhedral compiler implemented in ROSE. We check the correctness of a set of polyhedral transformations by combining the computation of a state transition graph with a rewrite system to transform floating point computations and array update operations of one program such that we can match them as terms with those of the other program. We demonstrate our approach on a collection of benchmarks from the PolyBench/C suite.

Cite

CITATION STYLE

APA

Schordan, M., Lin, P. H., Quinlan, D., & Pouchet, L. N. (2014). Verification of polyhedral optimizations with constant loop bounds in finite state space computations. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 8803, pp. 493–508). Springer Verlag. https://doi.org/10.1007/978-3-662-45231-8_41

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free