See this document in CiteSeerX!

Guaranteed Optimization: Proving Nullspace Properties of Compilers (2002)  (Make Corrections)  (6 citations)
Todd L. Veldhuizen, Andrew Lumsdaine
Proceedings of the 2002 Static Analysis Symposium (SAS'02)



  Home/Search   Context   Related

 
View or download:
iu.edu/~tveldhui/papers/2002/...null.ps
Cached:  PS.gz  PS  PDF   Image  Update  Help

From:  iu.edu/~tveldhui/papers/ (more)
Homepages:  T.Veldhuizen  

Rate this article: (best)
  Comment on this article  
Compilers that guarantee optimizations will always be performed.

Abstract: Writing performance-critical programs can be frustrating because optimizing compilers for imperative languages tend to be unpredictable. For a subset of optimizations - those that simplify rather than reorder code - it would be useful to prove that a compiler reliably performs optimizations. We show that adopting a ``superanalysis'' approach to optimization enables such a proof. By analogy with linear algebra, we define the nullspace of an optimizer as those programs it reduces to the empty... (Update)

Context of citations to this paper:   More

.... g 2 G and any program p, O[ g p] O[ p] 4 Nullspace proofs for imperative languages In the full version of this paper [18] we prove the nullspace property for a model optimizer of an imperative language. We summarize the language and the main results in this section. 4.1 An...

Cited by:   More
A Static C++ Object-Oriented Programming (SCOOP).. - Burrus..   (Correct)
Guaranteed Optimization for Domain-Specific Programming - Veldhuizen (2003)   (Correct)
Active Libraries and Universal Languages - Veldhuizen (2004)   (Correct)

Similar documents (at the sentence level):
66.2%:   Guaranteed Optimization: Proving Nullspace Properties of.. - Veldhuizen, Lumsdaine (2002)   (Correct)

Active bibliography (related documents):   More   All
0.2:   Combining Optimizations, Combining Theories - Veldhuizen, Siek   (Correct)
0.2:   Design Principles of Reusable Software Components for the.. - Bader, Berti (1998)   (Correct)
0.1:   A Functional Perspective on SSA Optimisation.. - Chakravarty.. (2003)   (Correct)

Similar documents based on text:   More   All
0.5:   Using MPI with C and the Common Language - Infrastructure Jeremiah Willcock   (Correct)
0.4:   On Combining Program Improvers - Veldhuizen, Siek (2003)   (Correct)
0.3:   Concept-Controlled Polymorphism - Järvi, Willcock, Lumsdaine (2003)   (Correct)

Related documents from co-citation:   More   All
4:   Static interfaces in C (context) - McNamara, Smaragdakis - 2000
4:   ACM Transactions on Programming Languages and Systems (context) - Click, Cooper et al. - 1995
4:   Concept checking: Binding parametric polymorphism in C - Siek, Lumsdaine - 2000

BibTeX entry:   (Update)

Todd L. Veldhuizen and Andrew Lumsdaine. Guaranteed optimization: Proving nullspace properties of compilers. Technical Report TR564, Indiana University Computer Science, 2002. http://citeseer.ist.psu.edu/veldhuizen02guaranteed.html   More

@inproceedings{ veldhuizen:sas:2002,
  author = "Todd L. Veldhuizen and Andrew Lumsdaine", 
  title = "Guaranteed Optimization: Proving Nullspace Properties of Compilers",
  url = "citeseer.ist.psu.edu/veldhuizen02guaranteed.html",
  url = "http://osl.iu.edu/~tveldhui/papers/",
  booktitle = "Proceedings of the 2002 Static Analysis Symposium (SAS'02)",
  publisher = "Springer-Verlag",
  year = "2002",
  pages = "263-277",
  volume = "2477",
  conflocation = "Madrid, Spain",
  conftitle = "Static Analysis Symposium",
  series = "Lecture Notes in Computer Science",
  abstract = "Writing performance-critical programs can be frustrating because
   optimizing compilers for imperative languages tend to be
   unpredictable. For a subset of optimizations - those that simplify
   rather than reorder code - it would be useful to prove that a compiler
   reliably performs optimizations. We show that adopting a
   ``superanalysis'' approach to optimization enables such a proof. By
   analogy with linear algebra, we define the nullspace of an optimizer
   as those programs it reduces to the empty program. To span the
   nullspace, we define rewrite rules that de-optimize programs by
   introducing abstraction. For a model compiler we prove that any
   sequence of de-optimizing rewrite rule applications is undone by the
   optimizer. Thus, we are able to give programmers a clear mental model
   of what simplifications the compiler is guaranteed to perform, and
   make progress on the problem of ``abstraction penalty'' in imperative
   languages." }
Citations (may not include all citations):
788   Rewrite systems - Dershowitz, Jouannaud - 1990
324   Deforestation: transforming programs to eliminate trees - Wadler - 1990
232   Constant propagation with conditional branches (context) - Wegman, Zadeck - 1991
193   Abstract interpretation: A uni ed lattice model for static a.. (context) - Cousot, Cousot - 1977
158   Reasoning about programs in continuationpassing style - Sabry, Felleisen - 1993
133   Multi-stage programming with explicit annotations - Taha, Sheard - 1997
99   Building program optimizers with rewriting strategies - Visser, Benaissa et al. - 1999
86   Advanced Compiler Design and Implementation (context) - Muchnick - 2000
44   Total correctness by local improvement in the transformation.. - Sands - 1996
43   Automatic synthesis of optimal invariant assertions: Mathema.. (context) - Cousot, Cousot - 1977
29   ACM Transactions on Programming Languages and Systems (context) - Click, Cooper et al. - 1995
21   Arrays in Blitz (context) - Veldhuizen - 1998
13   A survey of rewriting strategies in program transformation s.. - Visser - 2001
11   Cheap deforestation in practice: An optimiser for Haskell (context) - Gill, Jones - 1994
11   A uni ed approach to global program optimization (context) - Kildall - 1973
7   The matrix template library: A unifying framework for numeri.. - Siek, Lumsdaine - 1998
6   Composing data ow analyses and transformations (context) - Lerner, Grove et al. - 2002
6   Guaranteed optimization: Proving nullspace properties of com.. - Veldhuizen, Lumsdaine - 2002
6   A taste of rewrite systems - Dershowitz - 1993
5   The abstraction penalty for small objects in C (context) - Robison - 1996
4   Abstraction penalty benchmark (context) - Stepanov - 1994
3   Abstraction benchmarks and performance of C++ applications (context) - uller - 2000
2   Correctness of xpoint transformations (context) - Wei - 1994

Online articles have much greater impact   More about CiteSeer.IST   Add search form to your site   Submit documents   Feedback  

CiteSeer.IST - Copyright Penn State and NEC