A high-performance memory allocator for memory intensive applications

J. Morris Chang, Y. Hasan, W.H. Lee · 2000

Dynamic memory management (DMM) has been a high cost component in many software systems. In particular, the use of object orientation often results in an intensive use of dynamic memory, making the dynamic memory performance problem worse. The paper presents a profile based strategy to improve the performance of DMM. The performance improvement comes from a segregated strategy without splitting and coalescing cost. This modification is made feasible by preallocating the free-list based on the profile data of heap memory usage. In this research, the empirical study shows that the maximum number of live objects of each size is independent of the input; this data provides a profile and estimate for the amount of memory the application will need to run and can be preallocated to give great improvement in performance. Compared to the average performance of well known algorithms, the profile based approach is about 3.9 times to 6.5 times faster.

Read the paper · More papers on PaperTik