A step towards transparent integration of input-consciousness into dynamic program optimizations

Kai Tian, Eddy Z. Zhang, Xipeng Shen

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

12 Scopus citations

Abstract

Dynamic program optimizations are critical for the efficiency of applications in managed programming languages and scripting languages. Recent studies have shown that exploitation of program inputs may enhance the effectiveness of dynamic optimizations significantly. However, current solutions for enabling the exploitation require either programmers'annotations or intensive offline profiling, impairing the practical adoption of the techniques. This current work examines the basic feasibility of transparent integration of input-consciousness into dynamic program optimizations, particularly in managed execution en- vironments. It uses transparent learning across production runs as the basic vehicle, and investigates the implications of cross-run learning on each main component of input-conscious dynamic optimizations. It proposes several techniques to address some key challenges for the transparent in- tegration, including randomized inspection-instrumentation for cross-user data collection, a sparsity-tolerant algorithm for input characterization, and selective prediction for efficiency protection. These techniques make it possible to au- tomatically recognize the relations between the inputs to a program and the appropriate ways to optimize it. The whole process happens transparently across production runs; no need for offline profiling or programmer intervention. Experiments on a number of Java programs demonstrate the effectiveness of the techniques in enabling input-consciousness for dynamic optimizations, revealing the feasibility and potential benefits of the new optimization paradigm in some basic settings. Copyright is held by the author / owner(s).

Original languageEnglish (US)
Title of host publicationOOPSLA'11 - Proceedings of the 2011 ACM International Conference on Object Oriented Programming Systems Languages and Applications
Pages445-462
Number of pages18
DOIs
StatePublished - 2011
Externally publishedYes
Event2011 ACM International Conference on Object Oriented Programming Systems Languages and Applications, OOPSLA'11 - Portland, OR, United States
Duration: Oct 22 2011Oct 27 2011

Publication series

NameProceedings of the Conference on Object-Oriented Programming Systems, Languages, and Applications, OOPSLA

Other

Other2011 ACM International Conference on Object Oriented Programming Systems Languages and Applications, OOPSLA'11
Country/TerritoryUnited States
CityPortland, OR
Period10/22/1110/27/11

All Science Journal Classification (ASJC) codes

  • Software

Keywords

  • Dynamic optimizations
  • Dynamic version selection
  • Java virtual machine
  • Just-in-time compilation
  • Proactivity
  • Program inputs
  • Seminal behaviors

Fingerprint

Dive into the research topics of 'A step towards transparent integration of input-consciousness into dynamic program optimizations'. Together they form a unique fingerprint.

Cite this