Loopy: Programmable and Formally Verified Loop Transformations

Loading...
Thumbnail Image

Related Collections

Degree type

Discipline

Subject

Computer Engineering
Computer Sciences

Funder

Grant number

License

Copyright date

Distributor

Related resources

Contributor

Abstract

Abstract. This paper presents a system, Loopy, for programming loop transformations. Manual loop transformation can be tedious and errorprone, while fully automated methods do not guarantee improvements. Loopy takes a middle path: a programmer specifies a loop transformation at a high level, which is then carried out automatically by Loopy, and formally verified to guard against specification and implementation mistakes. Loopy’s notation offers considerable flexibility with assembling transformations, while automation and checking prevent errors. Loopy is implemented for the LLVM framework, building on a polyhedral compilation library. Experiments show substantial improvements over fully automated loop transformations, using simple and direct specifications.

Advisor

Date Range for Data Collection (Start Date)

Date Range for Data Collection (End Date)

Digital Object Identifier

Series name and number

Publication date

2016-07-21

Volume number

Issue number

Publisher

Publisher DOI

relationships.isJournalIssueOf

Comments

MS-CIS-16-04

Recommended citation

Collection