Title :
Compact and efficient presentation conversion code
Author :
Hoschka, Philipp
Author_Institution :
World Wide Web Consortium, Inst. Nat. de Recherche en Inf. et Autom., Sophia Antipolis, France
fDate :
8/1/1998 12:00:00 AM
Abstract :
The inefficient presentation conversion code is a major difficulty for using a distributed-applications development environment (such as a CORBA-, Java-RMI-, DCE-, or ASN.1-based environment) to build high-speed network applications. The stub compilers included in these environments generate code that is either very slow or has a large code size. This paper presents a technique for automatically generating compact and efficient presentation conversion code. This is achieved by using a hybrid of two implementation alternatives for presentation conversion routines (interpreted and procedure-driven code). The optimization is modeled as a knapsack problem. A Markov model is used in combination with heuristic branch prediction rules for estimating execution frequencies. An optimization stage based on these ideas was implemented in the ASN.1 compiler Mavros. Experimental evaluation of this implementation shows that investing only 25% of the code size of fully optimized code results in a performance improvement of 55%-68%
Keywords :
Markov processes; abstract data types; automatic programming; distributed processing; object-oriented methods; operations research; optimising compilers; protocols; telecommunication networks; ASN.1 compiler; CORBA; DCE; Java-RMI; Markov model; Mavros; automatic code generation; code size; compact presentation conversion code; distributed-applications development environment; efficient presentation conversion code; execution frequencies; heuristic branch prediction rules; high-speed network applications; interpreted code; knapsack problem; optimization; presentation conversion routines; procedure-driven code; protocols; Data communication; Data conversion; Design optimization; Frequency estimation; High-speed networks; Java; Markov processes; Optimization methods; Optimizing compilers; Predictive models;
Journal_Title :
Networking, IEEE/ACM Transactions on