Research on Algorithm of Parallel Garbage Collection Based on LISP 2 for Multi-core System

  • Congpin Zhang
  • Changmao Wu
  • Lili Zhao
Part of the Communications in Computer and Information Science book series (CCIS, volume 93)

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 Parallelization 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 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. 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. 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. 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. 5.
    Apache Harmony is the Java SE project of the Apache Software Foundation, http://harmony.apache.org
  6. 6.
    Jones, R., Lins, R.: Garbage Collection: Algorithms for Automatic Dynamic Memory Management. John Wiley & Sons Ltd., New York (1996)MATHGoogle Scholar
  7. 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. 8.
  9. 9.
  10. 10.
    Zhou, W.M.: Multicore Computing and Program Design. Huazhong University of Science and Technology Press, Wuhan (2009)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Congpin Zhang
    • 1
  • Changmao Wu
    • 1
  • Lili Zhao
    • 1
  1. 1.College of Computer and Information TechnologyHenan Normal UniversityXinxiang

Personalised recommendations