Abstract
We describe an algorithm that achieves garbage collection when performing concurrent rewriting. We show how this algorithm follows the implementation model of concurrent graph rewriting. This model has been studied and directly implemented on MIMD machines where nodes of the graph are distributed over a set of processors. A distinguishing feature of our algorithm is that it collects garbage concurrently with the rewriting process. Furthermore, our garbage collection algorithm never blocks the process of rewriting; in particular it does not involve synchronisation primitives. In contrast to a classical garbage collection algorithm reclaiming unused blocks of memory, the presented algorithm collects active nodes of the graph (i.e. nodes are viewed as processes). Finally, we present different results of experimentations based on our implementation (RECO) of concurrent rewriting using the concurrent garbage collection algorithm and show that significant speed-ups can be obtained when computing normal forms of terms. Keywords: Concurrent rewriting, Graph rewriting, MIMD architectures, Concurrent garbage collection algorithms.KeywordsNormal FormGarbage CollectionGarbage CollectorParallel Virtual MachineDistribute Memory MachineThese keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have