Compact and efficient presentation conversion code

Philipp Hoschka · IEEE/ACM Transactions on Networking · 1998

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%.

Read the paper · More papers on PaperTik