The family of concurrent logic programming languages
ACM Computing Surveys (CSUR)
An effective speculative evaluation technique for parallel supercombinator graph reduction
An effective speculative evaluation technique for parallel supercombinator graph reduction
Reduction languages for reduction machines
ISCA '75 Proceedings of the 2nd annual symposium on Computer architecture
Scheduling Strategies and Speculative Work
ICLP '91 Pre-Conference Workshop on Parallel Execution of Logic Programs
Pruning and Scheduling Speculative Work in Or-Parallel Prolog
PARLE '89 Proceedings of the Parallel Architectures and Languages Europe, Volume II: Parallel Languages
Experience with the Implementation of a Concurrent Graph Reduction System on an nCube/2 Platform
CONPAR 94 - VAPP VI Proceedings of the Third Joint International Conference on Vector and Parallel Processing: Parallel Processing
Distributed Larch Prover (DLP): An Experiment in Parallelizing a Rewrite-Rule Based Prover
RTA '96 Proceedings of the 7th International Conference on Rewriting Techniques and Applications
Elements of General Net Theory
Proceedings of the Advanced Course on General Net Theory of Processes and Systems: Net Theory and Applications
The Implementation of Functional Programming Languages (Prentice-Hall International Series in Computer Science)
Cooperating Reduction Machines
IEEE Transactions on Computers
Hi-index | 0.00 |
Speculative evaluation relates to computing several (alternative) threads of control of large programs concurrently without knowing in advance which of them contribute to which extent to final results. This approach may be used to advantage to compute, at the expense of deploying considerable processing power, solutions of np-hard search problems on average a lot faster than sequentially. This paper addresses the organizational measures necessary to perform speculative computations concurrently in a distributed memory multiprocessor system. They primarily concern task management and scheduling, a fairness regulation scheme which ensures progress of all speculative tasks at about the same pace, and the conflict between fairness and bounded numbers of speculative tasks. Though these measures are discussed in the context of functional languages and systems, they are in principle applicable in the imperative world as well.