Evaluation of an Adaptive Scheduling Strategy for Master-Worker Applications on Clusters of Workstations Elisa Heymann 1 , Miquel A. Senar 1 , Emilio Luque 1 and Miron Livny 2 1 Unitat d’Arquitectura d’Ordinadors i Sistemes Operatius Universitat Autònoma de Barcelona Barcelona, Spain {e.heymann, m.a.senar, e.luque}@cc.uab.es 2 Department of Computer Sciences University of Wisconsin– Madison Wisconsin, USA miron@cs.wisc.edu Abstract * . We investigate the problem arising in scheduling parallel applications that follow a master-worker paradigm in order to maximize both the resource efficiency and the application performance. We propose a simple scheduling strategy that dynamically measures application execution time and uses these measurements to automatically adjust the number of allocated processors to achieve the desirable efficiency, minimizing the impact in loss of speedup. The effectiveness of the proposed strategy has been assessed by means of simulation experiments in which several scheduling policies were compared. We have observed that our strategy obtains similar results to other strategies that use a priori information about the application, and we have derived a set of empirical rules that can be used to dynamically adjust the numbe r of processors allocated to the application. 1. Introduction The use of loosely coupled, powerful and low -cost commodity components (PCs or workstations, typically) connected by high -speed networks has resulted in the widespread usage of a technology pop ularly called cluster computing [1]. The availability of such clusters made them an appealing vehicle for developing parallel applications. However, not all parallel programs that run efficiently in a traditional parallel supercomputing environment can be moved to a cluster environment without significant loss of performance. In that sense, the Master-Worker paradigm is attractive because it can achieve similar performance in both environments as no high communication performance is usually required from the network infrastructure [2]. In this paradigm, a master process is responsible basically for distributing tasks among a farm of worker processes. Moreover, it is a good example of adaptive parallel computing because it can respond quite well to a scenario where applications are executed by stealing idle CPU cycles (we refer to these environments as non- * This work was supported by the CICYT (contract TIC98-0433) and by the Commission for Cultural, Educational and Scientific Exchange between the USA and Spain (project 99186).