Veldema R, Philippsen M (2012)
Publication Language: English
Publication Type: Conference contribution, Original article
Publication year: 2012
Edited Volumes: Proceedings of the 2012 ACM SIGPLAN Workshop on Memory Systems Performance and Correctness, MSPC'12
Pages Range: 38-47
Conference Proceedings Title: Proceedings of the 2012 ACM SIGPLAN Workshop on Memory Systems Performance and Correctness (MSPC'12)
Event location: Beijing, China
ISBN: 978-1-4503-1219-6
URI: http://www2.informatik.uni-erlangen.de/publication/download/VP12.pdf
High-throughput memory management techniques such as malloc/free or mark-and-sweep collectors often exhibit memory fragmentation leaving allocated objects interspersed with free memory holes. Memory defragmentation removes such holes by moving objects around in memory so that they become adjacent (compaction) and holes can be merged (coalesced) to form larger holes. However, known defragmentation techniques are slow. This paper presents a parallel solution to best-effort partial defragmentation that makes use of all available cores. The solution not only speeds up defragmentation times significantly, but it also scales for many simple cores. It can therefore even be implemented on a GPU. One problem with compaction is that it requires all references to moved objects to be retargeted to point to their new locations. This paper further improves existing work by a better identification of the parts of the heap that contain references to objects moved by the compactor and only processes these parts to find the references that are then retargeted in parallel. To demonstrate the performance of the new memory defragmentation algorithm on many-core processors, we show its performance on a modern GPU. Parallelization speeds up compaction 40 times and coalescing up to 32 times. After compaction, our algorithm only needs to process 2%-4% of the total heap to retarget references. Copyright 2012 ACM.
APA:
Veldema, R., & Philippsen, M. (2012). Parallel Memory Defragmentation on a GPU. In Proceedings of the 2012 ACM SIGPLAN Workshop on Memory Systems Performance and Correctness (MSPC'12) (pp. 38-47). Beijing, China, CN.
MLA:
Veldema, Ronald, and Michael Philippsen. "Parallel Memory Defragmentation on a GPU." Proceedings of the ACM SIGPLAN Workshop on Memory Systems Performance and Correctness (MSPC 12), Beijing, China 2012. 38-47.
BibTeX: Download