Automatic pool allocation: improving performance by controlling data structure layout in the heap

C Lattner, V Adve - ACM Sigplan Notices, 2005 - dl.acm.org
This paper describes Automatic Pool Allocation, a transformation framework that segregates
distinct instances of heap-based data structures into seperate memory pools and allows …

Automated data-member layout of heap objects to improve memory-hierarchy performance

T Kistler, M Franz - ACM Transactions on Programming Languages and …, 2000 - dl.acm.org
We present and evaluate a simple, yet efficient optimization technique that improves
memory-hierarchy performance for pointer-centric applications by up to 24% and reduces …

[图书][B] Macroscopic data structure analysis and optimization

CA Lattner - 2005 - search.proquest.com
Providing high performance for pointer-intensive programs on modern architectures is an
increasingly difficult problem for compilers. Pointer-intensive programs are often bound by …

An automatic object inlining optimization and its evaluation

J Dolby, A Chien - Proceedings of the ACM SIGPLAN 2000 conference …, 2000 - dl.acm.org
Automatic object inlining [19, 20] transforms heap data structures by fusing parent and child
objects together. It can improve runtime by reducing object allocation and pointer …

An efficient profile-analysis framework for data-layout optimizations

S Rubin, R Bodik, T Chilimbi - ACM SIGPLAN Notices, 2002 - dl.acm.org
Data-layout optimizations rearrange fields within objects, objects within objects, and objects
within the heap, with the goal of increasing spatial locality. While the importance of data …

A direct approach to control-flow sensitive region-based memory management

F Henglein, H Makholm, H Niss - Proceedings of the 3rd ACM SIGPLAN …, 2001 - dl.acm.org
Region-based memory management can be used to control dynamic memory allocations
and deallocations safely and efficiently. Existing (direct-style) region systems that statically …

Heap profiling for space-efficient Java

R Shaham, EK Kolodner, M Sagiv - ACM SIGPLAN Notices, 2001 - dl.acm.org
We present a heap-profiling tool for exploring the potential for space savings in Java
programs. The output of the tool is used to direct rewriting of application source code in a …

Dynamic memory optimization using pool allocation and prefetching

Q Zhao, R Rabbah, WF Wong - ACM SIGARCH Computer Architecture …, 2005 - dl.acm.org
Heap memory allocation plays an important role in modern applications. Conventional heap
allocators, however, generally ignore the underlying memory hierarchy of the system …

Exploiting prolific types for memory management and optimizations

Y Shuf, M Gupta, R Bordawekar, JP Singh - Proceedings of the 29th …, 2002 - dl.acm.org
In this paper, we introduce the notion of prolific and non-prolific types, based on the number
of instantiated objects of those types. We demonstrate that distinguishing between these …

Hoard: A scalable memory allocator for multithreaded applications

ED Berger, KS McKinley, RD Blumofe… - ACM Sigplan Notices, 2000 - dl.acm.org
Parallel, multithreaded C and C++ programs such as web servers, database managers,
news servers, and scientific applications are becoming increasingly prevalent. For these …