Opportunity Cost Algorithms for Reduction of I/O and Interprocess Communication Overhead in a Computing Cluster
Issue No.01 - January (2003 vol.14)
<p><b>Abstract</b>—Computing Clusters (CC) consisting of several connected machines, could provide a high-performance, multiuser, time-sharing environment for executing parallel and sequential jobs. In order to achieve good performance in such an environment, it is necessary to assign processes to machines in a manner that ensures efficient allocation of resources among the jobs. This paper presents opportunity cost algorithms for online assignment of jobs to machines in a CC. These algorithms are designed to improve the overall CPU utilization of the cluster and to reduces the I/O and the Interprocess Communication (IPC) overhead. Our approach is based on known theoretical results on competitive algorithms. The main contribution of the paper is how to adapt this theory into working algorithms that can assign jobs to machines in a manner that guarantees near-optimal utilization of the CPU resource for jobs that perform I/O and IPC operations. The developed algorithms are easy to implement. We tested the algorithms by means of simulations and executions in a real system and show that they outperform existing methods for process allocation that are based on ad hoc heuristics.</p>
Load balancing, competitive algorithms, cluster computing, I/O overhead, IPC overhead.
Arie Keren, Amnon Barak, "Opportunity Cost Algorithms for Reduction of I/O and Interprocess Communication Overhead in a Computing Cluster", IEEE Transactions on Parallel & Distributed Systems, vol.14, no. 1, pp. 39-50, January 2003, doi:10.1109/TPDS.2003.1167369