Results 1 -
6 of
6
A Tour of Tempo: A Program Specializer for the C Language
, 2003
"... Tempo is a specializer for the C language that automatically customizes a program with respect to the values of con guration parameters. It oers specialization at both compile time and run time, and both program and data specialization. To control the specialization process, Tempo provides the prog ..."
Abstract
-
Cited by 20 (3 self)
- Add to MetaCart
Tempo is a specializer for the C language that automatically customizes a program with respect to the values of con guration parameters. It oers specialization at both compile time and run time, and both program and data specialization. To control the specialization process, Tempo provides the program developer with a declarative language to describe specialization opportunities for a given program.
Java rmi, rmi tunneling and web services comparison and performance analysis
- ACM SIGPLAN Notices
, 2004
"... This article compares different approaches for developing Java distributed applications which have to communicate ..."
Abstract
-
Cited by 13 (1 self)
- Add to MetaCart
This article compares different approaches for developing Java distributed applications which have to communicate
Towards Bridging the Gap Between Programming Languages and Partial Evaluation
- in "ACM SIGPLAN Workshop on Partial Evaluation and Semantics-Based Program Manipulation
, 2002
"... Partial evaluation is a program-transformation technique that automatically specializes a program with respect to user-supplied invariants. Despite successful applications in areas such as graphics, operating systems, and software engineering, partial evaluators have yet to achieve widespread use. O ..."
Abstract
-
Cited by 9 (1 self)
- Add to MetaCart
Partial evaluation is a program-transformation technique that automatically specializes a program with respect to user-supplied invariants. Despite successful applications in areas such as graphics, operating systems, and software engineering, partial evaluators have yet to achieve widespread use. One reason is the difficulty of adequately describing specialization opportunities. Indeed, under-specialization or over-specialization often occurs, without any direct feedback to the user as to the source of the problem. We have developed a high-level, module-based language allowing the programmer to guide the choice of both the code to specialize and the invariants to exploit during the specialization process. To ease the use of partial evaluation, the syntax of this language is similar to the declaration syntax of the target language of the partial evaluator. To provide feedback to the programmer, declarations are checked throughout the analyses performed by partial evaluation. The language has been successfully used by a signal-processing expert in the design of a specializable Forward Error Correction component. 1.
Compiler Optimized Remote Method Invocation
, 2003
"... We further increase the efficiency of Java RMI programs. Where other optimizing re-implementations of RMI use pre-processors to create stubs and skeletons and to create class specific serializers and deserializers, this paper demonstrates that with transformations based on compile time analysis an a ..."
Abstract
-
Cited by 4 (0 self)
- Add to MetaCart
We further increase the efficiency of Java RMI programs. Where other optimizing re-implementations of RMI use pre-processors to create stubs and skeletons and to create class specific serializers and deserializers, this paper demonstrates that with transformations based on compile time analysis an additional 18% performance gain can be achieved over class specific serializers alone for a simple scientific application.
Comparison of performance of Web services, WS-Security, RMI, and RMI–SSL
, 2005
"... This article analyses two most commonly used distributed models in Java: Web services and RMI (Remote Method Invocation). The paper focuses on regular (unsecured) as well as on secured variants, WS-Security and RMI–SSL. The most important functional differences are identified and the performance on ..."
Abstract
-
Cited by 4 (0 self)
- Add to MetaCart
This article analyses two most commonly used distributed models in Java: Web services and RMI (Remote Method Invocation). The paper focuses on regular (unsecured) as well as on secured variants, WS-Security and RMI–SSL. The most important functional differences are identified and the performance on two operating systems (Windows and Linux) is compared. Sources of performance differences related to the architecture and implementation are identified. The overheads related to the usage of security and the influences of JCE (Java Cryptography Extension) security providers on the performance of secured remote invocations are identified. Finally, the impact of distributed models on design and implementation of distributed applications is identified and guidelines for improving distributed application performance in design and implementation stage are provided. The paper contributes to the understanding of functional and performance related differences between Web services and RMI and their secure variants, WS-Security and RMI–SSL.
Enhancing Remote Method Invocation through Type-Based Static Analysis
- in: Proceedings of the International Conference on Fundamental Approaches to Software Engineering (FASE 2004
, 2003
"... Distributed applications rely on middleware to enable components to interact with each other remotely. Thus, the overall performance of the distributed application increasingly depends on the interaction between the implementation of the various components and the features provided by the middleware ..."
Abstract
-
Cited by 3 (0 self)
- Add to MetaCart
Distributed applications rely on middleware to enable components to interact with each other remotely. Thus, the overall performance of the distributed application increasingly depends on the interaction between the implementation of the various components and the features provided by the middleware. In this paper we analyze Java components and the RMI middleware provided by the language, and we discuss the opportunities for optimizing remote method invocations. Specifically, we discuss how parameter passing among distributed objects can be optimized through fairly standard static program analysis techniques. Parameter passing can be costly: large object parameters need to be serialized and transmitted over the network. Our optimization allows only object portions to be transmitted, corresponding to what is actually used at the server side. The paper presents the program analysis technique we employ and outlines an implementation of the run-time optimization it enables.

