Verified integrity properties for safe approximate program transformations

  • Authors:
  • Michael Carbin;Deokhwan Kim;Sasa Misailovic;Martin C. Rinard

  • Affiliations:
  • MIT CSAIL, Cambridge, MA, USA;MIT CSAIL, Cambridge, MA, USA;MIT CSAIL, Cambridge, MA, USA;MIT CSAIL, Cambridge, MA, USA

  • Venue:
  • PEPM '13 Proceedings of the ACM SIGPLAN 2013 workshop on Partial evaluation and program manipulation
  • Year:
  • 2013

Quantified Score

Hi-index 0.00

Visualization

Abstract

Approximate computations (for example, video, audio, and image processing, machine learning, and many scientific computations) have the freedom to generate a range of acceptable results. Approximate program transformations (for example, task skipping and loop perforation) exploit this freedom to produce computations that can execute at a variety of points in an underlying accuracy versus performance trade-off space. One potential concern is that these transformations may change the semantics of the program and therefore cause the program to crash, perform an illegal operation, or otherwise violate its integrity. We investigate how verifying integrity properties -- key correctness properties that the transformed computation must respect -- can enable the safe application of approximate program transformations. We present experimental results from a compiler that verifies integrity properties of perforated loops to enable the safe application of loop perforation.