Systems like Condor exploit this opportunity by allowing guest processes to run on idle participating machines. Existing systems focus on coarse-grained idle periods when users are away from their workstations. Returning users, or the start of any significant host processes, cause guest processes to be migrated off the local machine in order to avoid impacting the local user.
The thesis of this paper is that such policies waste many opportunities to exploit cycles because of overly conservative estimates of resource contention. We show that the potential negative impact of guest processes can be severely limited through the use of a few, simple modifications to existing kernel policies. We have developed a strict priority scheduling system that ensures that local processes receive priority in both processing cycles and memory. This paper describes these mechanisms and presents both a micro-benchmark study to demonstrate their efficacy, and an application-oriented workload study to show the overall impact of our policies on typical interactive workloads.