Analysis of input-dependent program behavior using active profiling

Xipeng Shen, Michael L. Scott, Chengliang Zhang, Sandhya Dwarkadas, Chen Ding, Mitsunori Ogihara

Research output: Chapter in Book/Report/Conference proceedingConference contribution

4 Scopus citations

Abstract

Utility programs, which perform similar and largely independent operations on a sequence of inputs, include such common applications as compilers, interpreters, and document parsers; databases; and compression and encoding tools. The repetitive behavior of these programs, while often clear to users, has been difficult to capture automatically. We present an active profiling technique in which controlled inputs to utility programs are used to expose execution phases, which are then marked, automatically, through binary instrumentation, enabling us to exploit phase transitions in production runs with arbitrary inputs. We demonstrate the effectiveness and programmability of active profiling via experiments with six utility programs from the SPEC benchmark suite; compare to code and interval phases; and describe applications of active profiling to memory management and memory leak detection.

Original languageEnglish (US)
Title of host publicationProceedings of the 2007 Workshop on Experimental Computer Science
DOIs
StatePublished - Dec 1 2007
Externally publishedYes
Event2007 Workshop on Experimental Computer Science - San Diego, CA, United States
Duration: Jun 25 2007Jun 26 2007

Publication series

NameProceedings of the 2007 Workshop on Experimental Computer Science

Other

Other2007 Workshop on Experimental Computer Science
CountryUnited States
CitySan Diego, CA
Period6/25/076/26/07

    Fingerprint

Keywords

  • Active profiling
  • Dynamic optimization
  • Memory management
  • Program phase analysis and prediction

ASJC Scopus subject areas

  • Computer Science(all)

Cite this

Shen, X., Scott, M. L., Zhang, C., Dwarkadas, S., Ding, C., & Ogihara, M. (2007). Analysis of input-dependent program behavior using active profiling. In Proceedings of the 2007 Workshop on Experimental Computer Science [5] (Proceedings of the 2007 Workshop on Experimental Computer Science). https://doi.org/10.1145/1281700.1281705