• DocumentCode
    2788172
  • Title

    Task-pushing: a Scalable Parallel GC Marking Algorithm without Synchronization Operations

  • Author

    Wu, Ming ; Li, Xiao-Feng

  • Author_Institution
    lnst. of Comput. Technol., Chinese Acad. of Sci., Beijing
  • fYear
    2007
  • fDate
    26-30 March 2007
  • Firstpage
    1
  • Lastpage
    10
  • Abstract
    This paper describes a scalable parallel marking technique for garbage collection that does not employ any synchronization operation. To achieve good scalability, two major design issues have to be resolved in parallel marking algorithm, i.e., the overhead of synchronization operations and load balance. This paper presents task-pushing, a novel parallel marking algorithm where each thread proactively gives up its spare tasks to other threads. Enlightened by the idea of communicating sequential process (CSP), task-pushing arranges the computation into a process network, eliminating synchronization operations in the whole marking process. Load balance is achieved by dripping tasks from thread local mark-stack for other threads to execute. To the best of our knowledge, this is the first parallel marking algorithm that completely avoids the synchronization primitives. We evaluated task-pushing in aspects of queuing efficiency, load balancing strategy, synchronization overhead, and overall scalability. The results on a 16-way Intel Xeon machine showed that task-pushing has better scalability than work-stealing technique with pseudojbb and GCOld server-kind Java benchmarks.
  • Keywords
    Java; communicating sequential processes; parallel algorithms; resource allocation; storage management; Intel Xeon machine; Java; communicating sequential process; load balance; parallel garbage collection marking algorithm; parallel marking technique; synchronization operation; task-pushing step; Algorithm design and analysis; Compaction; Computer networks; Concurrent computing; Load management; Middleware; Partitioning algorithms; Scalability; Software algorithms; Yarn;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Parallel and Distributed Processing Symposium, 2007. IPDPS 2007. IEEE International
  • Conference_Location
    Long Beach, CA
  • Print_ISBN
    1-4244-0910-1
  • Electronic_ISBN
    1-4244-0910-1
  • Type

    conf

  • DOI
    10.1109/IPDPS.2007.370317
  • Filename
    4228045