next up previous
Next: Introduction Up: Compact and Efficient Presentation

Compact and Efficient Presentation Conversion Code

Philipp Hoschka

October 26, 1997

INRIA Centre de Sophia Antipolis,
2004 Route des Lucioles, BP-93,
06902 Sophia Antipolis Cedex, FRANCE.
e-mail: hoschka@sophia.inria.fr

Compact and Efficient Presentation Conversion Code

Philipp Hoschka

October 26, 1997

Abstract:

Presentation conversion is a key operation in any development environment for distributed applications, such as Corba, Java-RMI, DCE or ASN.1-based environments. It is also well-known performance bottleneck in high-speed network communication. Presentation conversion code is usually generated by an automatic code generation tool referred to as stub compiler. The quality of the code generated by a stub compiler is often very low. The code is either very slow, or has a large code size, or both. This paper describes the design and experimental evaluation of an optimization stage for a stub compiler. The optimization stage automates the trade-off between code size and execution speed of the code generated by the compiler. This is achieved by using a hybrid of two implementation alternatives for presentation conversion routines (interpreted and procedure-driven code). The optimization problem is modeled as a Knapsack problem. A Markov model in combination with a heuristic branch predictor is used for estimating execution frequencies. The optimization stage is added to the ASN.1 compiler Mavros. Experimental evaluation of this implementation shows that by investing only 25% of the code size of fully optimized code, a performance improvement of 55% to 68% can be achieved.





Philipp Hoschka
Sun Oct 26 21:35:40 MET 1997