Skip to main navigation Skip to search Skip to main content

Alias analysis for optimization of dynamic languages

  • Stony Brook University

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

23 Scopus citations

Abstract

Dynamic languages such as Python allow programs to be written more easily using high-level constructs such as comprehensions for queries and using generic code. Efficient execution of programs then requires powerful optimizations - incrementalization of expensive queries and specialization of generic code. Effective incrementalization and specialization of dynamic languages require precise and scalable alias analysis. This paper describes the development and experimental evaluation of a may-alias analysis for a full dynamic object-oriented language, for program optimization by incremen-talization and specialization. The analysis is flow-sensitive; we show that this is necessary for effective optimization of dynamic languages. It uses precise type analysis and a powerful form of context sensitivity, called trace sensitivity, to further improve analysis precision. It uses a compressed representation to significantly reduce the memory used by flow-sensitive analyses. We evaluate the effectiveness of this analysis and 17 variants of it for incrementalization and specialization of Python programs, and we evaluate the precision, memory usage, and running time of these analyses on programs of diverse sizes. The results show that our analysis has acceptable precision and efficiency and represents the best trade-off between them compared to the variants.

Original languageEnglish
Title of host publicationProceedings of the 6th Symposium on Dynamic Languages, DLS '10
Pages27-41
Number of pages15
DOIs
StatePublished - 2010
Event6th Symposium on Dynamic Languages, DLS '10 - Reno/Tahoe, NV, United States
Duration: Oct 17 2010Oct 21 2010

Publication series

NameProceedings of the 6th Symposium on Dynamic Languages, DLS '10

Conference

Conference6th Symposium on Dynamic Languages, DLS '10
Country/TerritoryUnited States
CityReno/Tahoe, NV
Period10/17/1010/21/10

Keywords

  • Algorithms
  • Experimentation
  • Languages
  • Performance

Fingerprint

Dive into the research topics of 'Alias analysis for optimization of dynamic languages'. Together they form a unique fingerprint.

Cite this