TY - GEN
T1 - Enforcing appropriate process execution for exploiting idle resources from outside operating systems
AU - Abe, Yoshihisa
AU - Yamada, Hiroshi
AU - Kono, Kenji
PY - 2008
Y1 - 2008
N2 - Idle resources can be exploited not only to run important local tasks such as data replication and virus checking, but also to make contributions to society by participating in open computing projects like SETI@home [2]. When executing background processes to utilize such valuable idle resources, we need to explicitly control them so that the user will not be discouraged from exploiting idle resources by foreground performance degradation. Unfortunately, common prioritybased schedulers lack such explicit execution control. In addition, to encourage active use of idle resources, a mechanism for controlling background processes should not require modifications to the underlying operating system or user applications. If such modifications are required, the user may be reluctant to employ the mechanism. In this paper, we argue that we can reasonably detect resource contention between foreground and background processes and properly control background process execution at the user level. We infer the existence of resource contention from the approximated resource shares of background processes. Our approach takes advantage of dynamically instrumented probes, which are becoming increasingly popular, in estimating the resource shares. Also, it considers different resource types in combination and can handle varied workloads, including multiple background processes. We show that our system effectively avoids the performance degradation of foreground activities by suspending background processes in an appropriate fashion. Our system keeps the increase in foreground execution time due to background processes below 16.9%, or much lower in most of our experiments. Also, we extend our approach to address undesirable resource allocations to CPU-intensive processes that can occur in multiprocessor environments.
AB - Idle resources can be exploited not only to run important local tasks such as data replication and virus checking, but also to make contributions to society by participating in open computing projects like SETI@home [2]. When executing background processes to utilize such valuable idle resources, we need to explicitly control them so that the user will not be discouraged from exploiting idle resources by foreground performance degradation. Unfortunately, common prioritybased schedulers lack such explicit execution control. In addition, to encourage active use of idle resources, a mechanism for controlling background processes should not require modifications to the underlying operating system or user applications. If such modifications are required, the user may be reluctant to employ the mechanism. In this paper, we argue that we can reasonably detect resource contention between foreground and background processes and properly control background process execution at the user level. We infer the existence of resource contention from the approximated resource shares of background processes. Our approach takes advantage of dynamically instrumented probes, which are becoming increasingly popular, in estimating the resource shares. Also, it considers different resource types in combination and can handle varied workloads, including multiple background processes. We show that our system effectively avoids the performance degradation of foreground activities by suspending background processes in an appropriate fashion. Our system keeps the increase in foreground execution time due to background processes below 16.9%, or much lower in most of our experiments. Also, we extend our approach to address undesirable resource allocations to CPU-intensive processes that can occur in multiprocessor environments.
KW - Background execution
KW - Idle resources
UR - http://www.scopus.com/inward/record.url?scp=59249085956&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=59249085956&partnerID=8YFLogxK
U2 - 10.1145/1352592.1352596
DO - 10.1145/1352592.1352596
M3 - Conference contribution
AN - SCOPUS:59249085956
SN - 9781605580135
T3 - EuroSys'08 - Proceedings of the EuroSys 2008 Conference
SP - 27
EP - 40
BT - EuroSys'08 - Proceedings of the EuroSys 2008 Conference
T2 - 3rd ACM European Conference on Computer Systems - EuroSys'08
Y2 - 31 March 2008 through 4 April 2008
ER -