Transparent Gif

Department of Computer Science

University of California, Santa Barbara

Abstract

The Space Overhead of Customization

by: Sylvia Dieckmann and Urs Hï½lzle

Abstract:

Customization aims to improve the performance of pure object-oriented languagesby compiling multiple copies of a source method, each of them specialized for acertain revceiver type. Like other code duplication techniques, it gainsperformance by trading code space for better speed. Unfortunately,customization can significantly increase code space, especially for largerprograms. We show that customization increases memory usage by almost a factorof three for some applications in the Self-93 system.We analyze and quantify the factors that lead to this space overhead andidentify strategies to eliminate most of it. We focus on dynamically-compiledsystems like Self-93 where it is impractical or undesirable to usewhole-program analysis or programmer-directed profiling to guide customizationdecisions. Our experiments show that a combination of relativelystraightforward strategies can bring the code space consumption ofcustomization to within 34% or less of a completely non-customizing system.Thus, even in dynamically-compiled systems customization and efficient memoryusage need not be mutually exclusive.

Keywords:

customization, space overhead, Self, dynamic compilation, Holzle,Hoelzle

Date:

December 1997

Document: 1997-21

XHTML Validation | CSS Validation
Updated 14-Nov-2005
Questions should be directed to: webmaster@cs.ucsb.edu