Framework-intensive applications (e.g., Web applications) heavily use temporary data structures, often resulting in performance bot-tlenecks. This paper presents an optimized blended escape analysis to approximate object lifetimes and thus, to identify these tempo-raries and their uses. Empirical results show that this optimized analysis on average prunes 37 % of the basic blocks in our bench-marks, and achieves a speedup of up to 29 times compared to the original analysis. Newly defined metrics quantify key properties of temporary data structures and their uses. A detailed empirical eval-uation offers the first characterization of temporaries in framework-intensive applications. The results show that temporary data struc-tures can include ...
Many opportunities for easy, big-win, program optimizations are missed by compilers. This is especia...
In order to perform meaningful experiments in optimizing compilation and runtime system design, res...
We describe an escape analysis [32, 14], used to determine whether the lifetime of data exceeds its ...
Many modern applications (e.g. web applications) are composed of a relatively small amount of applic...
Escape analysis is a static analysis that determines whether the lifetime of data may exceed its sta...
In production environments, runtime performance monitoring is often limited to logging of high level...
This paper outlines a new technique for collecting dynamic trace information from Java GUI programs...
242 p.Thesis (Ph.D.)--University of Illinois at Urbana-Champaign, 2003.In this thesis we address the...
Escape analysis is highly beneficial for optimizing object-oriented programming languages such as Ja...
Escape analysis is a static analysis that determines whether the lifetime of data may exceed its sta...
Thread escape analysis (hereafter referred to as escape analysis) determines what objects may be acc...
The development of real-time systems has traditionally been based on low-level programming languages...
Most Java programmers would agree that Java is a language that promotes a philosophy of “create and ...
The memory hierarchy in modern architectures continues to be a major performance bottleneck. Many ex...
In this paper we present an investigation into the run-time behaviour of objects in Java programs, ...
Many opportunities for easy, big-win, program optimizations are missed by compilers. This is especia...
In order to perform meaningful experiments in optimizing compilation and runtime system design, res...
We describe an escape analysis [32, 14], used to determine whether the lifetime of data exceeds its ...
Many modern applications (e.g. web applications) are composed of a relatively small amount of applic...
Escape analysis is a static analysis that determines whether the lifetime of data may exceed its sta...
In production environments, runtime performance monitoring is often limited to logging of high level...
This paper outlines a new technique for collecting dynamic trace information from Java GUI programs...
242 p.Thesis (Ph.D.)--University of Illinois at Urbana-Champaign, 2003.In this thesis we address the...
Escape analysis is highly beneficial for optimizing object-oriented programming languages such as Ja...
Escape analysis is a static analysis that determines whether the lifetime of data may exceed its sta...
Thread escape analysis (hereafter referred to as escape analysis) determines what objects may be acc...
The development of real-time systems has traditionally been based on low-level programming languages...
Most Java programmers would agree that Java is a language that promotes a philosophy of “create and ...
The memory hierarchy in modern architectures continues to be a major performance bottleneck. Many ex...
In this paper we present an investigation into the run-time behaviour of objects in Java programs, ...
Many opportunities for easy, big-win, program optimizations are missed by compilers. This is especia...
In order to perform meaningful experiments in optimizing compilation and runtime system design, res...
We describe an escape analysis [32, 14], used to determine whether the lifetime of data exceeds its ...