Font Size: a A A

Automating selective dynamic compilation

Posted on:2003-08-12Degree:Ph.DType:Dissertation
University:University of WashingtonCandidate:Mock, Markus UlrichFull Text:PDF
GTID:1468390011482359Subject:Computer Science
Abstract/Summary:PDF Full Text Request
Run-time specialization of programs can potentially improve execution time by exploiting the (semi-) invariance of values. Several research prototypes have been developed that enable the user to apply run-time specialization using annotations in the source code. While they were a great improvement over previous manual systems, in reality their use has been limited because writing annotations that achieve good program speedups is a challenging task for humans, requiring a deep understanding of the program's characteristics and of the applicable run-time optimizations and their effects on the underlying computer architecture.; In this dissertation I show that the major obstacle to the general application of such systems can be eliminated by automating the generation of annotations that drive a dynamic compiler. I demonstrate that a judicious combination of a novel static program analysis with run-time information about the program obtained by value profiling can achieve the same speedups as annotations written by human programmers and in a fraction of the time. I evaluate the concepts developed in this dissertation with a prototype system named Calpa . The prototype comprises algorithms and tools to gather run-time information about programs and static analysis algorithms to generate annotations to drive the DyC compiler, previously developed at the UW.; Moreover, I also show how combining run-time information with static analysis can be useful in other contexts, by demonstrating the benefits of using dynamic pointer information in software engineering and improving the effectiveness of a program slicing tool.
Keywords/Search Tags:Dynamic, Program, Run-time, Information
PDF Full Text Request
Related items