FreeLoader: Scavenging Desktop Storage Resources for Scientific Data
SC '05 Proceedings of the 2005 ACM/IEEE conference on Supercomputing
Constructing collaborative desktop storage caches for large scientific datasets
ACM Transactions on Storage (TOS)
Towards Scheduling Virtual Machines Based On Direct User Input
VTDC '06 Proceedings of the 2nd International Workshop on Virtualization Technology in Distributed Computing
A survey of autonomic computing—degrees, models, and applications
ACM Computing Surveys (CSUR)
A progressive multi-layer resource reconfiguration framework for time-shared grid systems
Future Generation Computer Systems
MOON: MapReduce On Opportunistic eNvironments
Proceedings of the 19th ACM International Symposium on High Performance Distributed Computing
Reliable MapReduce computing on opportunistic resources
Cluster Computing
Hi-index | 0.00 |
Scavenging (or resource borrowing) is a common approach used to harness unused resources to perform useful calculations. Since these are volunteer contributions from resource owners, it is vital to reduce the impact of scavenging activities on their native workload to a minimum. To this end, existing impact control systems are either overly conservative in stopping scavenging altogether or inflexible and lack user autonomy to regulate resource usage as in some priority-based techniques. In this paper, we propose a systematic impact control framework for resource scavenging, by quantifying the performance impact a scavenging application incurs on a set of tasks stressing different system resources. For a user-configurable impact threshold, the framework monitors the native workload, determines the dominating native task, and autonomically and adaptively throttles the scavenging application, to bring the impact below target levels. This novel approach has unique benefits of 1) making impact control explicit to resource owners and an easy-to-tune "knob," and 2) adapting to different scavenging applications and native workloads. Our experiments with two scavenging applications, which use resources in very different ways, demonstrate that this framework allows both more aggressive resource scavenging and less impact on native workloads at the same time, compared to a priority-based method. Finally, the framework itself is a lightweight user-level process whose monitoring overhead on native workloads averages as low as 1%.