Skip to Main content Skip to Navigation
Other publications

Perfrewrite -- Program Complexity Analysis via Source Code Instrumentation

Michael Kruse 1, 2 
2 GRAND-LARGE - Global parallel and distributed computing
LRI - Laboratoire de Recherche en Informatique, LIFL - Laboratoire d'Informatique Fondamentale de Lille, UP11 - Université Paris-Sud - Paris 11, Inria Saclay - Ile de France, CNRS - Centre National de la Recherche Scientifique : UMR8623
Abstract : Most program profiling methods output the execution time of one specific program execution, but not its computational complexity class in terms of the big-O notation. Perfrewrite is a tool based on LLVM's Clang compiler to rewrite a program such that it tracks semantic information while the program executes and uses it to guess memory usage, communication and computational complexity. While source code instrumentation is a standard technique for profiling, using it for deriving formulas is an uncommon approach.
Document type :
Other publications
Complete list of metadata

Cited literature [5 references]  Display  Hide  Download
Contributor : Michael Kruse Connect in order to contact the contributor
Submitted on : Saturday, September 6, 2014 - 11:24:57 PM
Last modification on : Sunday, June 26, 2022 - 12:01:52 PM
Long-term archiving on: : Sunday, December 7, 2014 - 10:21:45 AM


Files produced by the author(s)


  • HAL Id : hal-01061505, version 1
  • ARXIV : 1409.2089



Michael Kruse. Perfrewrite -- Program Complexity Analysis via Source Code Instrumentation. 2012. ⟨hal-01061505⟩



Record views


Files downloads