Sciweavers

ECOOP
2000
Springer

Empirical Study of Object-Layout Strategies and Optimization Techniques

13 years 9 months ago
Empirical Study of Object-Layout Strategies and Optimization Techniques
Althoughthereisalargebodyofresearchonthetimeoverheadofobject oriented programs, there is little work on memory overhead. This paper takes an empirical approach to the study of this overhead, which turns out to be significant in the presence of multiple inheritance. We study the performance, in terms of overheadtoobjectsizeofthreecompilationstrategies:separatecompilation,whole program analysis, and user annotations as done in C++. A variant to each such strategy is the inclusion of pointers to indirect virtual bases in objects. Using a database of several large multiple inheritance hierarchies, spanning 7000 classes, several application domains and different programming languages we find that in all strategies there are certain classes which give rise a large number of compiler generated fields in their object layout. We then study the efficacy of the recently introduced inlining and bidirectional object layout optimization techniques, and show that an average saving of close to 50%...
Natalie Eckel, Joseph Gil
Added 02 Aug 2010
Updated 02 Aug 2010
Type Conference
Year 2000
Where ECOOP
Authors Natalie Eckel, Joseph Gil
Comments (0)