Title :
Improving cache behavior of dynamically allocated data structures
Author :
Truong, D.N. ; Bodin, François ; Seznec, André
Author_Institution :
Campus de Beaulieu, IRISA-INRIA, Rennes, France
Abstract :
Poor data layout in memory may generate weak data locality and poor performance. Code transformations such as loop blocking or interchanging and array padding have addressed this issue for scientific applications. However many generalist applications do not use data arrays, but dynamically allocated heterogeneous data structures. In this paper, we explore two data layout techniques for dynamically allocated data structures: field reorganization, and instance interleaving. The application of these techniques may be guided by program profiling. This allows significant cache behavior improvements on some applications. To support instance interleaving, we developed a specific memory allocation library called ialloc. An ialloc-like library may be of great help in a toolbox for performance tuning of general-purpose applications
Keywords :
cache storage; data structures; performance evaluation; cache behavior; data structures; dynamically allocated; field reorganization; ialloc; instance interleaving; performance tuning; Bandwidth; Data structures; Interleaved codes; Libraries; Performance gain; Tree data structures;
Conference_Titel :
Parallel Architectures and Compilation Techniques, 1998. Proceedings. 1998 International Conference on
Conference_Location :
Paris
Print_ISBN :
0-8186-8591-3
DOI :
10.1109/PACT.1998.727268