Home research People General Info Seminars Resources Intranet

Silvius Rus, Lawrence Rauchwerger, J Hoeflinger, "Run-time Assisted Interprocedural Analysis of Memory Access Patterns," Technical Report, TR01-001, Department of Computer Science and Engineering, Texas A&M University, College Station, TX, 2001.
Technical Report(ps, pdf, abstract)

In this paper we present a unified framework based on the existing IPA and speculative run-time parallelization technology analysis in the Polaris compiler. The framework is able to analyze efficiently all statically un-analyzable cases in a uniform manner. We use the same technique to extract run-time assertions from any loop and depending on the case at hand, generate run-time tests that range from a low cost scalar comparison to a full, reference by reference LRPD test. We accomplish this by both extending compile time IP analysis techniques and by incorporating speculative run-time techniques when necessary. In essence our solution is to bring 'free' compile time techniques with exhaustive run-time techniques through a continuum of simple to complex solutions. We have implemented our framework in the Polaris compiler by introducing an innovative intermediate representation (RT_LMAD) and associated run-time operations. It includes intersection, union, last-value assignment, aggregated inspectors and LRPD tests for both dense and sparse reference patterns.