Work-stealing queues for parallel garbage collection

   
   

A multiprocessor, multi-program, stop-the-world garbage collection program is described. The system initially over partitions the root sources, and then iteratively employs static and dynamic work balancing. Garbage collection threads compete dynamically for the initial partitions. Work stealing double-ended queues, where contention is reduced, are described to provide dynamic load balancing among the threads. Contention is resolved by using atomic instructions. The heap is broken into a young and an old generation where parallel semi-space copying is used to collect the young generation and parallel mark-compacting the old generation. Speed and efficiency of collection is enhanced by use of card tables and linking objects, and overflow conditions are efficiently handled by linking using class pointers. A garbage collection termination employs a global status word.

Se describe un multiprocesador, multiprograma, programa de la colección de la basura del parar-$$$-MUNDO. El excedente del sistema reparte inicialmente las fuentes de la raíz, y después emplea iterativo el equilibrio estático y dinámico del trabajo. Los hilos de rosca de la colección de la basura compiten dinámicamente para las particiones iniciales. Trabaje robando las coletas de dos extremos, donde se reduce la contención, se describen para proporcionar la carga dinámica que balancea entre los hilos de rosca. La contención es resuelta usando instrucciones atómicas. El montón está quebrado en una generación joven y vieja donde el copiado paralelo del semi-espacio se utiliza para recoger la generación y el paralelo jóvenes marca-que condensan la vieja generación. La velocidad y la eficacia de la colección se realza por medio de las tablas de tarjeta y los objetos el ligarse, y las condiciones del desbordamiento son manejadas eficientemente ligando indicadores de la clase que usan. Una terminación de la colección de la basura emplea una palabra global del estado.

 
Web www.patentalert.com

< System and method of using partially resolved predicates for elimination of comparison instruction

< Determining and compensating for temporal overhead in trace record generation and processing

> System and method for coupling remote data stores and mobile devices via an internet based server

> Representing IMS messages as XML documents

~ 00144