ICIC 2010: Advanced Intelligent Computing Theories and Applications pp 469-476 | Cite as
Research on Algorithm of Parallel Garbage Collection Based on LISP 2 for Multi-core System
Abstract
As the multi-core architecture prevails, garbage collection is becoming an essential feature to support high performance systems. In this paper, we have described a parallel copying garbage collector and presented experimental results that demonstrate good scalability. The collector is designed for shared-memory multi-core systems or multiprocessor systems in the base of classical LISP2 algorithm. The earlier parallel copying collector can not compact the live data into a single contiguous region at one end of the heap, but leaves multiple object groups, one for every two neighboring partitions. Our novel algorithm overcomes this drawback. The average collector speedup is 1.65 at two-core system and 2.4 at four-core system.
Keywords
Multi-core Garbage collection LISP2 algorithm ParallelizationPreview
Unable to display preview. Download preview PDF.
References
- 1.Flood, C.H., Detlefs, D., Shavit, N., Zhang, X.L.: Parallel Garbage Collection for Shared Memory Multiprocessors. In: 2001 Symposium on JavaTM Virtual Machine Research and Technology Symposium, vol. 1, p. 21 (2001)Google Scholar
- 2.Li, X.F., Wang, L.G., Yang, C.: A Fully Parallel LISP2 Compactor with Preservation of the Sliding Properties. In: Amaral, J.N. (ed.) LCPC 2008. LNCS, vol. 5335, pp. 264–278. Springer, Heidelberg (2008)CrossRefGoogle Scholar
- 3.Abuaiadh, D., Ossia, Y., Petrank, E.: An Efficient Parallel Heap Compaction Algorithm. In: ACM Conference on Object-Oriented Systems, Languages and Applications, pp. 224–236 (2004)Google Scholar
- 4.Siebert, F.: Limits of Parallel Marking Garbage Collection. In: International Symposium on Memory Management, Tucson, Arizona, USA, pp. 21–29 (2008)Google Scholar
- 5.Apache Harmony is the Java SE project of the Apache Software Foundation, http://harmony.apache.org
- 6.Jones, R., Lins, R.: Garbage Collection: Algorithms for Automatic Dynamic Memory Management. John Wiley & Sons Ltd., New York (1996)MATHGoogle Scholar
- 7.Wu, M., Li, X.F.: Task-Pushing: A Scalable Parallel GC Marking Algorithm without Synchronization Operations. In: 2007 Parallel and Distribution Processing Symposium (IPDPS), Long Beach, CA, pp. 1–10 (2007)Google Scholar
- 8.
- 9.OpenMP 3.0 specification, http://www.openmp.org/mp-documents/OpenMP3.0-SummarySpec.pdf
- 10.Zhou, W.M.: Multicore Computing and Program Design. Huazhong University of Science and Technology Press, Wuhan (2009)Google Scholar