Partitioning Techniques for Large-Grained Parallelism
IEEE Transactions on Computers
Strategies for decentralized resource management
SIGCOMM '87 Proceedings of the ACM workshop on Frontiers in computer communications technology
An examination of strategies for estimating capacity to share among private workstations
SIGSMALL '91 Proceedings of the 1991 ACM SIGSMALL/PC symposium on Small systems
Estimating Capacity for Sharing in a Privately Owned Workstation Environment
IEEE Transactions on Software Engineering
An examination of strategies for estimating capacity to share among private workstations
ACM SIGSMALL/PC Notes
Parallel computing using idle workstations
ACM SIGOPS Operating Systems Review
Exploiting process lifetime distributions for dynamic load balancing
Proceedings of the 1996 ACM SIGMETRICS international conference on Measurement and modeling of computer systems
Exploiting process lifetime distributions for dynamic load balancing
ACM Transactions on Computer Systems (TOCS)
Anonymous Remote Computing: A Paradigm for Parallel Programming on Interconnected Workstations
IEEE Transactions on Software Engineering
ACM Computing Surveys (CSUR)
International Journal of Internet Protocol Technology
Hi-index | 0.01 |
We consider a computing environment consisting of a network of autonomous, yet cooperating personal computer workstations and shared servers. Computing cycles in such an environment can be shared by creating a pool of compute servers in the network that may be used by the workstations to supplement their computing needs. Some processors may be permanently designated to be the compute servers. In addition, through an advertisement mechanism, any workstation may make itself temporarily available for a specific duration of time to be used as a compute server. In this paper, we present the design and implementation of a scheme for augmenting the UNIX® operating system with the location independent remote execution capability. This capability allows processes to be offloaded to the compute servers and preserves the execution environment of these processes as if they were still executing locally at the originating machine. Our model provides execution location independence of processes by preserving the process view of the file system, parent-child relationships, process groups, and process signaling across machine boundaries in a transparent way. We also present our scheme that allows processors to advertise themselves as available to some or all nodes in the network and withdraw as a compute server in a distributed manner. The scheme is robust in presence of node failures.