24 citations found. Retrieving documents...
G. Muller and U. Schultz, "Harissa: A hybrid approach to Java execution", IEEE Software, pages 44-- 51, March 1999.

 Home/Search   Document Details and Download   Summary   Related Articles   Check  

This paper is cited in the following contexts:
Ionic Types - Dobson, Matthews (2000)   (Correct)

....language toolkit[ with a view to determining the extent to which ions provide a widely applicable orthogonal type construction to be integrated into languages for mobile computing. We are also interested in the interaction of ions with native compilation, especially systems such as Harissa[15] which are able to handle dynamic class loading. ....

Gilles Muller and Ulrik Pagh Schultz. Harissa: a hybrid approach to Java execution. IEEE Software, 16(2):44--51, 1999.


A Tour of Tempo: A Program Specializer for the C Language - Consel, Lawall, Le Meur (2003)   (1 citation)  (Correct)

....inability to produce residual programs in the initial source language, that is, C . 19 This limitation was addressed by a subsequent project aimed to use Tempo as a back end specializer for Java. The translation from Java to C is performed by the Harissa compiler, developed in the Compose group [31,35]. Numerous optimizations are built into the Harrisa compiler and run time system, including method inlining driven by a class hierarchy analysis. Furthermore, this translation exposed specialization opportunities concerning language features such as virtual calls, casts and array references. Yet, ....

G. Muller, U. Schultz, Harissa: A hybrid approach to Java execution, IEEE Software (1999) 44-51.


Dynamic Optimization through the use of Automatic Runtime.. - Whaley (1999)   (3 citations)  (Correct)

....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 to C, using a similar technique to remove the stack abstraction. Because they are designed for static compilation, none of these systems attempt to perform any optimizations during translation. They count on later optimization phases to remove 93 extra registers and ....

Gilles Muller and Ulrik Pagh Schultz. Harissa: A hybrid approach to Java execution. IEEE Software, 16(2):44--51, March/April 1999.


Elimination of Java Array Bounds Checks in the.. - Lujan, Gurd, Freeman, .. (2002)   (1 citation)  (Correct)

....indirection array indices. Two checks are performed at run time. The rst checks the access to indices and it is out of the scope of this paper. Readers interested in techniques implemented for Java in JVMs compilers for eliminating checks of this kind of array accesses can consult [PTH 97, MS99, SOT 00, PVC01, FKR 00, CLS00, AAB 00, BGS00, MMS98] The second checks the access to foo and it is this kind of array bounds check that is the subject of this paper. When an array bounds check is eliminated from a Java program, two things are accomplished from a performance point of ....

Gilles Muller and Ulrik Pagh Schultz. Harissa: A hybrid approach to java execution. IEEE Sofware, 16(2):44-51, 1999.


The Hyperion system: Compiling multithreaded Java.. - Antoniu, Boug.. (2001)   (11 citations)  (Correct)

....still be useful if one wanted to support an open Java server, accepting programs from untrusted users. Code generation in java2c is straightforward (see Figure 1) Each virtual machine instruction is translated directly into a separate C statement, similar to the approaches taken in the Harissa [16] or Toba [17] compilers. As a result of this method, we rely on the C compiler to remove all the extraneous temporary variables created along the way. Currently, java2c supports all non wide format instructions as well as exception handling. The java2c compiler also includes an optimizer for ....

G. Muller, U. Pagh Schultz, Harissa: A hybrid approach to Java execution, IEEE Software 16 (2) (1999) 4451.


Towards Integrating Adaptation into the Development of.. - The Compose Group (2000)   (Correct)

....compiler. Besides targeting C, we have developed the first program specializer for an object oriented language. This specializer, named JSpec, processes Java programs [19] JSpec is constructed from existing tools. Java programs are translated into C using our Java compiler, named Harissa [16]. Then, the resulting C programs are specialized using Tempo. The specialized C program is executed in the Harissa environment. JSpec has been used for various applications and has shown to produce significant speedups. Our research on Java has lead us to investigate bytecode compression for ....

G. Muller and U. Schultz. Harissa: A hybrid approach to Java execution. IEEE Software, pages 44--51, March 1999.


Towards Automatic Specialization of Java Programs - Schultz, Lawall, Consel, Muller (1999)   (18 citations)  Self-citation (Muller Schultz)   (Correct)

....Developing an automatic specializer for a realistic imperative language is a long and complex task. Rather than designing a Java specializer from scratch, we are experimenting with an approach based on the Tempo [8] specializer for C programs, coupled with the Harissa optimizing Java to C compiler [25, 26]. In this paper, we present preliminary experiments in specializing Java programs. Our contributions are as follows: We identify specialization transformations that are particularly useful in object oriented languages. These transformations are implemented within a single, uniform framework. ....

G. Muller and U. Schultz. Harissa: A hybrid approach to Java execution. IEEE Software, pages 44--51, March 1999.


Partial Evaluation for Class-Based Object-Oriented Languages - Schultz (2000)   (4 citations)  Self-citation (Schultz)   (Correct)

....Experiments were performed on two di#erent machines, a SPARC and an IA32. Benchmarks are done using Sun s JDK 1.2.2 JIT compiler [26] Sun s JDK 1.3 beta 2 [27] HotSpot compiler (both in interpretive and compilation mode) IBM s JDK 1. 3 JIT compiler [13] and the Harissa o# line bytecode compiler [18]. The results are shown in Table 1; the resulting speedup ranges from 3.3 times (interpreter on a SPARC) to 11.6 times (Harissa compiler on SPARC) 5 Running time, SPARC Running time, IA32 Execution system Generic Specialized Speedup Generic Specialized Speedup HotSpot, interpret 438.63s ....

G. Muller and U. Schultz. Harissa: A hybrid approach to Java execution. IEEE Software, pages 44--51, March 1999.


Automatic Program Specialization for Java - Schultz, Consel (2000)   (2 citations)  Self-citation (Schultz)   (Correct)

....individually for each instance. This strategy ensures a consistent behavior that does not impose arbitrary limitations on the specialization process. Specialized programs are generated either as Java source code encapsulated in an AspectJ [30] aspect, C source code for execution in the Harissa [21] environment, or binary code generated at run time for direct execution in the Harissa environment. JSpec is applied to a user selected program slice, which allows timeconsuming analyses and aggressive transformations to be directed towards the critical parts of the program. In this paper we ....

....evaluation engine. This approach allows us to take advantage of the advanced features found in a mature partial evaluator. C is used as intermediate language in JSpec; the low level nature of C makes it possible to represent the semantics of Java programs. A Java to C compiler, called Harissa [21], is used to translate Java programs into C. A dedicated backtranslator maps the C representation of a specialized Java program back into Java. Finally, AspectJ is used to weave the specialized Java program with the generic program to produce a complete, specialized program. Java features such as ....

[Article contains additional citation context not shown here]

G. Muller and U. Schultz. Harissa: A hybrid approach to Java execution. IEEE Software, pages 44--51, Mar. 1999.


Efficient Incremental Checkpointing of Java Programs - Lawall, Muller (2000)   (1 citation)  Self-citation (Muller)   (Correct)

....We specialize the checkpointing process using the JSpec program specializer [27] illustrated in Figure 3. JSpec is based on Tempo, a program specializer for C [11] To perform specialization of Java programs, the Java bytecode is first translated into C using the Harissa bytecodeto C compiler [22]. The specialized C code can be compiled using any C compiler, and then executed in the Harissa JVM. At the C level, the specialized code can express optimizations of the virtual machine, such as the elimination of array bounds checks, that cannot be expressed in Java. Alternatively, for ....

G. Muller and U. Schultz. Harissa: A hybrid approach to Java execution. IEEE Software, pages 44--51, March 1999.


Static and Dynamic Program Compilation by Interpreter.. - Thibault, Consel, al. (2000)   (5 citations)  Self-citation (Muller)   (Correct)

....often used to improve performance. For our specialization experiment, we target the Harissa system [28] Harissa is a flexible environment for Java execution that permits mixing both compiled and interpreted code. Harissa s compiler (Hac) generates among the most efficient code for Java programs [29], while the interpreter (Hi) is slightly faster than the Sun JDK 1.0.2 interpreter. Hi is a 1000 line hand optimized C program. 7 Applying Specialization The Java language is designed to support dynamicallyloaded bytecode. In this context, an efficient and effective compiler that can be invoked ....

G. Muller and U. Schultz. Harissa: A hybrid approach to Java execution. IEEE Software, pages 44--51, March 1999.


Specialization Patterns - Schultz, Lawall, Consel (1999)   (7 citations)  Self-citation (Schultz)   (Correct)

....Partial evaluation has been extensively investigated for functional [4, 8] logic [23] and imperative [2, 3, 9] languages. This technique has been recently extended to Java, by Schultz et al. 28] using C as an intermediate language. The implementation combines the Harissa bytecode to C compiler [26] with the Tempo program specializer for the C language [9] For this paper, we have extended this approach with an automatic translation of specialized programs back to Java. 3.1 Optimization by specialization In the context of design patterns, we are primarily interested in using specialization ....

G. Muller and U. Schultz. Harissa: A hybrid approach to Java execution. IEEE Software, pages 4451, March 1999. RR n\Sigma3853 28 Ulrik Pagh Schultz, Julia L. Lawall, and Charles Consel


Faster Run-time Specialized Code using Data Specialization - Lawall, Muller   Self-citation (Muller)   (Correct)

....image manipulation program [22] PLAN P is a domain specic language for implementing active network protocols. The image manipulation program applies a convolution lter to blur an image. This program was originally written in Java, and translated to C using the Java bytecode to C compiler Harissa [17]. The PLAN P interpreter is over 7000 lines of C code, while the image manipulation program is approximately 4000 lines. The PLAN P interpreter was shown to benet significantly from run time specialization. Nevertheless, some ne tuning of the size of the buoeer allocated for each specialized ....

G. Muller and U. Schultz. Harissa: A hybrid approach to Java execution. IEEE Software, pages 4451, March 1999.


Efficient Incremental Checkpointing of Java Programs - Lawall, Muller (1999)   (1 citation)  Self-citation (Muller)   (Correct)

....execution. We specialize the checkpointing process using the program specializer Tempo for C programs, developed by the Compose group at IRISA [11] Tempo has been adapted to perform specialization of Java programs, by rst translating Java bytecode into C using the Harissa bytecode to C compiler [21], and then specializing the resulting C code [25] The specialized C code can be compiled using any C compiler, and then executed in the Harissa run time environment. At the C level, the specialized code can express optimizations of the virtual machine, such as the elimination of array bounds ....

G. Muller and U. Schultz. Harissa: A hybrid approach to Java execution. IEEE Software, pages 4451, March 1999.


Efficient Incremental Checkpointing of Java Programs - Lawall, Muller (1999)   (1 citation)  Self-citation (Muller)   (Correct)

.... We specialize the checkpointing process using the program specializer Tempo for C programs, developed by the Compose group at IRISA [11] Tempo has been adapted to perform specialization of Java programs, by first translating Java bytecode into C using the Harissa bytecode to C compiler [21], and then specializing the resulting C code [25] The specialized C code can be compiled using any C compiler, and then executed in the Harissa run time environment. At the C level, the specialized code can express optimizations of the virtual machine, such as the elimination of array bounds ....

G. Muller and U. Schultz. Harissa: A hybrid approach to Java execution. IEEE Software, pages 44--51, March 1999.


Accurate Program Analyses for Successful Specialization.. - Muller, Marlet.. (2000)   (1 citation)  Self-citation (Muller)   (Correct)

....Therefore, only Tempo is able to treat the Sun RPC case. The combination of the features present in Tempo has proved to be generally sufficient for the kinds of system programs we have studied so far. However, Tempo is now also used as a back end specializer for Java [31] using Harissa [21], a JavaVMto C converter. In an object oriented language like Java, different object instances of the same class (which Harissa translates into a C structure) tend to be used differently, which results in different binding times. This calls for structure polyvariance, both for aliases and binding ....

G. Muller and U. Schultz. Harissa: A hybrid approach to Java execution. IEEE Software, pages 44--51, March 1999.


Adapting Distributed Applications Using Extensible Networks - Scott Thibault (1999)   (9 citations)  Self-citation (Muller)   (Correct)

....Table 1 shows the time required to generate machine code for the PLAN P programs used in the experiments described in section 4. In comparison to Java, which is another mobile code approach, JIT compiled PLAN P programs can be twice as fast as an equivalent Java program compiled with Harissa [21], an optimizing off line byte code compiler. 2.3 Programming in PLAN P A PLAN P protocol defines one or several channels which are functions invoked on the receipt of a packet. Protocols and channels have a state which persists across packets. Channel functions receive three parameters: the first ....

G. Muller and U. Schultz. Harissa: A hybrid approach to Java execution. IEEE Software, pages 44-- 51, March 1999.


A Retargetable Optimizing Java-to-C Compiler for.. - Retargetable..   (Correct)

No context found.

G. Muller and U. Schultz, "Harissa: A hybrid approach to Java execution", IEEE Software, pages 44-- 51, March 1999.


Application-Level Concurrency Management - Ogel, Thomas, Folliot, Piumarta (2003)   (Correct)

No context found.

G. Muller and U.P. Schultz, Harissa: A Hybrid Approach to Java Execution, in IEEE Software, March/April 1999.


Automatic Program Specialization for Java - Schultz, Lawall, Consel (2003)   (2 citations)  (Correct)

No context found.

MULLER,G .AND SCHULTZ, U. 1999. Harissa: A hybrid approach to Java execution. IEEE Soft. 16,2 (Mar.), 44--51.


Application-Level Concurrency Management - Ogel, Thomas, Folliot, Piumarta   (Correct)

No context found.

G. Muller and U.P. Schultz, Harissa: A Hybrid Approach to Java Execution, in IEEE Software, March/April 1999.


A Retargetable Optimizing Java-to-C Compiler for Embedded Systems - Varma (2003)   (Correct)

No context found.

G. Muller and U. Schultz, "Harissa: A hybrid approach to Java execution", IEEE Software, pages 44-- 51, March 1999.


Oolala - From Numerical Linear Algebra To Compiler Technology For .. - Moreno (2002)   (Correct)

No context found.

G. Muller and U. P. Schultz. Harissa: A hybrid approach to java execution. IEEE Sofware, 16(2):44--51, 1999.


Fast Symbolic Evaluation of C/C++ Preprocessing Using.. - Mario Latendresse Ngit   (Correct)

No context found.

G. Muller and U. P. Schultz. Harissa: A hybrid approach to Java execution. IEEE Software, 16(2):44--51, 1999.

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