Medusa: an experiment in distributed operating system structure
Communications of the ACM
Computers and Intractability: A Guide to the Theory of NP-Completeness
Computers and Intractability: A Guide to the Theory of NP-Completeness
The Roscoe distributed operating system
SOSP '79 Proceedings of the seventh ACM symposium on Operating systems principles
StarOS, a multiprocessor operating system for the support of task forces
SOSP '79 Proceedings of the seventh ACM symposium on Operating systems principles
A Large Scale, Homogenous, Fully Distributed Parallel Machine, II
ISCA '77 Proceedings of the 4th annual symposium on Computer architecture
The Contract Net Protocol: High-Level Communication and Control in a Distributed Problem Solver
IEEE Transactions on Computers
Micros, A Distributed Operating System for Micronet, A Reconfigurable Network Computer
IEEE Transactions on Computers
Cm*: a modular, multi-microprocessor
AFIPS '77 Proceedings of the June 13-16, 1977, national computer conference
Distributed task force scheduling in multi-microcomputer networks
AFIPS '81 Proceedings of the May 4-7, 1981, national computer conference
An overview of the Texas reconfigurable array computer
AFIPS '80 Proceedings of the May 19-22, 1980, national computer conference
Hi-index | 14.98 |
Decentralized operating systems that control large multicomputers need techniques to schedule competing parallel programs called task forces. Wave scheduling is a probabilistic technique that uses a hierarchical distributed virtual machine to schedule task forces by recursively subdividing and issuing wavefront-like commands to processing elements capable of executing individual tasks. Wave scheduling is highly resistant to processing element failures because it uses many distributed schedulers that dynamically assign scheduling responsibilities among themselves. The scheduling technique is trivially extensible as more processing elements join the host multicomputer. A simple model of scheduling cost is used by every scheduler node to distribute scheduling activity and minimize wasted processing capacity by using perceived workload to vary decentralized scheduling rules. At low to moderate levels of network activity, wave scheduling is only slightly less efficient than a central scheduler in its ability to direct processing elements to accomplish useful work.