A Distributed Graph Algorithm: Knot Detection
ACM Transactions on Programming Languages and Systems (TOPLAS)
Distributed deadlock detection
ACM Transactions on Computer Systems (TOCS)
Distributed computation on graphs: shortest path algorithms
Communications of the ACM
List processing in real time on a serial computer
Communications of the ACM
On-the-fly garbage collection: an exercise in cooperation
Communications of the ACM
Multiprocessing compactifying garbage collection
Communications of the ACM
Guardians and actions: linguistic support for robust, distributed programs
POPL '82 Proceedings of the 9th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
An Extensional Treatment of Dataflow Deadlock
Proceedings of the International Sympoisum on Semantics of Concurrent Computation
LFP '82 Proceedings of the 1982 ACM symposium on LISP and functional programming
Garbage collection and task deletion in distributed applicative processing systems
LFP '82 Proceedings of the 1982 ACM symposium on LISP and functional programming
OOPSLA/ECOOP '90 Proceedings of the European conference on object-oriented programming on Object-oriented programming systems, languages, and applications
Progress in the garbage collection of active objects
OOPSLA/ECOOP '90 Proceedings of the workshop on Object-based concurrent programming
Concurrent and Distributed Garbage Collection of Active Objects
IEEE Transactions on Parallel and Distributed Systems
Para-functional programming: a paradigm for programming multiprocessor systems
POPL '86 Proceedings of the 13th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Speculative Evaluation for Parallel Graph Reduction
PACT '94 Proceedings of the IFIP WG10.3 Working Conference on Parallel Architectures and Compilation Techniques
Experiments in diffused combinator reduction
LFP '84 Proceedings of the 1984 ACM Symposium on LISP and functional programming
Hi-index | 0.00 |
A model of distributed graph reduction is described that has features common to many distributed computing systems: a program (represented as a graph) is partitioned and dynamically distributed among an arbitrary number of processing elements having only local store, and computation takes place as tasks are propagated between vertices in the graph. Specific problems are addressed that are inherent in a computing model of this sort, including garbage collection, detecting deadlock, deleting tasks, and the dynamic prioritization of tasks. By characterizing these problems in terms of graph connectivity, a decentralized graph-marking algorithm is shown to provide an effective solution. This algorithm is unique in that it allows marking a distributed graph whose connectivity is continually changing.