11 citations found. Retrieving documents...
Clausen, L. R. (1997), `A Java bytecode optimizer using side-effect analysis', Concurrency: Practice and Experience 9(11), 1031--1045.

 Home/Search   Document Details and Download   Summary   Related Articles   Check  

This paper is cited in the following contexts:
Dynamic Optimization through the use of Automatic Runtime.. - Whaley (1999)   (3 citations)  (Correct)

....Caffeine is a static Java compiler that includes a stage that generates IR from bytecode [85, 86] It supports both a simple translation scheme that maintains the stack and a more sophisticated one that uses registers exclusively. The Cream system is a static optimizer for Java bytecode [40]. It transforms bytecode in a nine step process, including construction of a control flow graph and inference of the stack depth at all points. It eliminates the stack abstraction by treating different stack depths as different registers. Toba [121] and Harissa [113, 112] convert Java class files ....

Lars R. Clausen. A Java bytecode optimizer using side-effect analysis. In Geoffrey C. Fox and Wei Li, editors, PPoPP'97 Workshop on Java for Science and Engineering Computation, Las Vegas, June 1997. ACM. 102


Enforcing Java Run-Time Properties Using Bytecode Rewriting - Rudys, Wallach (2002)   (1 citation)  (Correct)

....both focus primarily on isolation of codelets. Bytecode rewriting is used to prevent codelets from interfering in each others operations. JRes [10] focuses more on resource accounting; bytecode rewriting is used to instrument memory allocation and object finalization sites. Optimization. Cream [11] and BLOAT (Bytecode Level Optimization and Analysis Tool) 12] are examples of systems which employ Java bytecode rewriting for the purpose of optimization. Cream uses side effect analysis, and performs a number of standard optimizations, including dead code elimination and loop invariant code ....

Clausen, L.R.: A Java bytecode optimizer using side-effect analysis. Concurrency: Practice and Experience 9 (1997) 1031--1045


Termination and Rollback in Language-Based Systems - Rudys (2002)   (Correct)

....both focus primarily on isolation of codelets. Bytecode rewriting is used to prevent codelets from interfering in each others operations. JRes [21] focuses more on resource accounting; bytecode rewriting is used to instrument memory allocation and object finalization sites. Optimization. Cream [15] and BLOAT (Bytecode Level Optimization and Analysis Tool) 61] are examples of systems which employ Java bytecode rewriting for the purpose of optimization. Cream uses side effect analysis, and performs a number of standard optimizations, including dead code elimination and loop invariant code ....

L. R. Clausen. A Java bytecode optimizer using side-effect analysis. Concurrency: Practice and Experience, 9(11):1031--1045, Nov. 1997.


A Memory Accounting Interface for The Java Programming Language - Beg, Dahlin (2001)   (Correct)

....of un trusted code to provide efficient access to Internet services. Moreover this work is also associated with efforts made at bytecode engineering. For example successful attempts have been made at runtime optimizations through bytecode modifications by Joseph Hummel [10] and Lars R. Clausen [12]. They present prime examples of bytecode engineering applied to increase the strength of Java, both as a programming language and an execution environment. An attempt at Resource management for Java was also made through the KaffeOS project [14] KaffeOS dealt with the resource management issues ....

Lars R. Clausen. A java bytecode optimizer using side-effect analysis. Concurrency: Practice and Experience, November 1997.


An Annotation-aware Java Virtual Machine Implementation - Azevedo, Nicolau, Hummel (1999)   (3 citations)  (Correct)

....[16,1,3,10,14, 26, 27] try to improve the quality of the native code generated on the fly by adapting traditional optimization techniques to run time code generation. Optimizations can also be applied during load time, i.e. after bytecode generation yet before run time translation to native code# [6, 23] are examples of Javabytecode optimizers. In the following paragraphs weoverview commercial and academic systems, some of whichmake use of annotation schemes to aid code optimization. Several researchers exploit the idea of code annotations and relate to our approach. In the context of selective ....

L. R. Clausen. A Java Bytecode Optimizer Using Side-effect Analysis. Concurrency: Practice and Experience, 9(11), November 1997. 21


A Study Of Side-Effect Analyses For Java - Razafimahefa (1999)   (6 citations)  (Correct)

....scale well and consequently the analysis of larger programs is possible. Our main goal in this thesis is to assess the effectiveness of a set of side effect analyses in optimizing Java programs and how they compare to each other. We consider two main kinds of analyses: type based analyses [Cla97] DMM98] which exploit type information available from the program to perform the analysis and refers to analyses which are our adaptation for Java of Steensgaard s points to analysis [Ste96b] Ste96a] Each group contains two analyses of varying granularity. The two type based analyses are ....

....with fields. We provide both the rules defining the analyses as well as their implementation. Implementation of type based analyses: In order to compare the effectiveness of cheap side effect analyses we have implemented a different approach than refers to analysis known as type based analyses [Cla97] There are also two variants of this analysis and they use the typing information available for each variable in the program to conservatively approximate the aliasing relationship that holds between variables in the program. Implementation of a client of the analyses: To evaluate the impact of ....

[Article contains additional citation context not shown here]

Lars R. Clausen. A java bytecode optimizer using side-effect analysis. Concurrency: Practice and Experience, November 1997.


Java Annotation-Aware Just-In-Time (AJIT) Compilation System - Azevedo, Nicolau, Hummel   (Correct)

....[1, 2, 16, 18, 24] try to improve the quality of the native code generated on the fly by adapting traditional optimization techniques to run time code generation. Optimizations can also be applied during load time, i.e. after bytecode generation yet before run time translation to native code; [8] is an example of such a bytecode optimizer. Our annotation scheme is a hybrid approach in that most work is done at compile time to retain important high level program and optimization information, while at run time lightweight code improving transformations accomplish the task of generating ....

L. R. Clausen. A Java Bytecode Optimizer Using Side-effect Analysis. Concurrency: Practice and Experience, 9(11), November 1997.


Optimizing Java Bytecode using the Soot Framework.. - Vallee-Rai, Gagnon, .. (2000)   (2 citations)  (Correct)

....7: The effect of inlining with class hierarchy analysis. 13 5 Related Work Related work falls into five different categories: Java bytecode optimizers: There are only two Java tools of which we are aware that perform significant optimizations on bytecode and produce new class files: Cream[3] and Jax[23] Cream performs optimizations such as loop invariant removal and common sub expression elimination using a simple side effect analysis. Only extremely small speed ups (1 to 3 ) are reported, however. The main goal of Jax is application compression where, for example, unused methods ....

Lars R. Clausen. A Java bytecode optimizer using side-effect analysis. Concurrency: Practice & Experience, 9(11):1031--1045, November 1997.


Soot - a Java Bytecode Optimization Framework - Vallee-Rai, Co, Gagnon.. (1999)   (15 citations)  (Correct)

....which must be translated by the JIT without incurring any speed benefits. 7 Related Work Related work falls into five different categories: Bytecode optimizers: There are only 2 Java tools that we are aware of which perform significant optimizations on bytecode and produce new class files: Cream[6] and Jax[28] Cream performs optimizations such as loop invariant removal and common sub expression elimination using a simple side effect analysis. Only extremely small speed ups (1 to 3 ) are reported, however. The main goal of Jax is application compression where, for example, unused methods ....

Lars R. Clausen. A Java bytecode optimizer using side-effect analysis. Concurrency: Practice & Experience, 9(11):1031-- 1045, November 1997.


Java Bytecode Compression For Embedded Systems - Ręder Clausen, Schultz.. (1998)   (5 citations)  (Correct)

....CaffeineMarks: Micro benchmark suite designed specifically for Java [13] Javac: JavaSoft s JDK 1.0. 2 Java compiler (subdirectories asm, java, javac and tree of the sun tools directory) Compactor Cream: The factorization program itself, which is integrated within the Cream bytecode optimizer [2]. Of these, the first three tests use only the JavaCard instruction set, while the last four tests use the full Java instruction set. Table 1 shows the size of the bytecode in bytes, before and after factorization, with and without the macro definition code included. The average method size is ....

Lars R. Clausen. A Java byte-code optimizer using side-effect analysis. Concurrency: Practice and Experience, 1997.


Interprocedural Side-Effect Analysis and Optimisation in.. - Dynamic Class Loading   (Correct)

No context found.

Clausen, L. R. (1997), `A Java bytecode optimizer using side-effect analysis', Concurrency: Practice and Experience 9(11), 1031--1045.

Online articles have much greater impact   More about CiteSeer.IST   Add search form to your site   Submit documents   Feedback  

CiteSeer.IST - Copyright Penn State and NEC