发明名称 Method of replication-based garbage collection in a multiprocessor system
摘要 Improved method of replication-based garbage collection in a multiprocessing system comprising a plurality of processors, a memory divided into a current area (from-space) used by the processors during current program execution and a reserved area (to-space), and at least a garbage collector for performing, when necessary, a garbage collection consisting in flipping the roles of the current area and reserved area after all the live objects stored in current area have been copied into the reserved area and for reclaiming the current area after the flipping operation. Several program threads (mutators) are currently running in parallel and the garbage collector performs the garbage collection in parallel with the program threads, the flipping operation being performed after the program threads have been stopped and the garbage collection has been completed. The method comprises the steps of storing, during normal program execution, a record in a local buffer allocated to each program thread each time this one updates a memory location, and adding this local buffer when full to a global list of buffers using a first wait-free synchronization operation, and, during garbage collection, removing the local buffers one by one from the global list of buffers using a second wait-free synchronization operation, and looping over records in each removed local buffer and copying the updated memory locations into the reserved area until the global list is empty.
申请公布号 US6430580(B1) 申请公布日期 2002.08.06
申请号 US19990344721 申请日期 1999.06.25
申请人 INTERNATIONAL BUSINESS MACHINES CORPORATION 发明人 AZAGURY ALAIN;KOLODNER ELLIOT KARL;PETRANK EREZ
分类号 G06F12/02;(IPC1-7):G06F17/00 主分类号 G06F12/02
代理机构 代理人
主权项
地址