@ARTICLE{maheswaran:HCW:1999, AUTHOR = {Muthucumaru Maheswaran, Shoukat Ali, Howard Jay Siegel, Debra Hensgen, and Richard F. Freund}, TITLE = {{Dynamic Matching and Scheduling of a Class of Independent Tasks onto Heterogeneous Computing Systems}}, CONFERENCE = {Heterogeneous Computing Workshop}, MONTH = {April}, YEAR = {1999}, PAGES = {30--44} } % % Dynamic mapping (matching and scheduling) heuristics for a class of % independent tasks using heterogeneous distributed computing systems are % studied. Two types of mapping heuristics are considered: on-line and % batch mode heuristics. Three new heuristics, one for batch and two for % on-line, are introduced as part of this research. Simulation studies are % performed to compare these heuristics with some existing ones. In total, % five on-line heuristics consider, to varying degrees and in different, % task affinity for different machines and machine ready times. The batch % heuristics consider these factors, as well as aging of tasks waiting to % execute. The simulation results reveal that the choice of mapping % heuristic depends on parameters such as: (a) the structure of the % heterogeneity among tasks and machines (b) the optimization requirements % and (c) the arrival rate of tasks % @inproceedings{hummel.loadbalance_hetero, author = "Susan Flynn Hummel and Jeanette Schmidt and R. N. Uma and Joel Wein", title = "Load-Sharing in Heterogeneous Systems via Weighted Factoring", booktitle = "Proceedings of the 8th Annual ACM Symposium on Parallel Algorithms and Architectures", month = Jun, year = 1996, pages = {318--328} } % Paper Summary % % This paper describes an extension of Flynn Hummel, et. al.'s {\em factoring} % method of work allocation that was presented in previous papers. The extension % considers the impact of having heterogeneous workstations instead of the % strictly homogeneous cases studied earlier. Experimental results are given % showing that weighting work assignments generated by the original factoring % algorithm by a value proportional to the expected speeds of the processors % produced better finishing times than a number of other algorithms on an % application running over a network of Sun workstations. Comparisons % were run against static allocation, guided self scheduling (GSS), various work % stealing, weighted work stealing, and factoring. The second part of the paper % presents analytical results derived by assuming processor iteration execution % times can be modeled by random variables. The results prove some bounds on % how well weighted factoring in a heterogeneous system performs relative to a % homogeneous system, and how well different weights perform relative to the set % chosen by weighted factoring in a heterogeneous system. @ARTICLE{hagerup:JPDC:1997, AUTHOR = {Torben Hagerup}, TITLE = {{Allocating Independent Tasks to Parallel Processors: An Experimental Study}}, JOURNAL = {Journal of Parallel and Distributed Computing}, VOLUME = {47}, YEAR = {1997}, PAGES = {185--197} } % % Paper summary % % This paper discusses the scheduling of batches of independent % tasks on a homogeneous set of processors. There is a fixed over % head to pay for each batch. The trade-off is there for between % small batches (high overhead, good load balance at the end of the run) % and large batches (low overhead, possible imbalance at the end % of the run). The assumption is that there is no possible work % stealing or task duplication. Task execution times are assumed % i.i.d. with known expected values and variances. The paper presents % an interesting survey of different scheduling techniques ranging % from ``timid ones'' (self-scheduling: batches of size 1) to % ``bold'' ones. A common idea to move away from self-scheduling is % to start with large batches and decreases the batch size as % the computation makes progress. The hope is that the earlier large % batches cause low overhead and that the late small ones still achieve % good load balance. The different strategies surveyed in the paper are % {\it static chunking}, {\it self-scheduling}, {\it fixed-size chunking}, % {\it guided self-scheduling}, {\it trapezoid self-scheduling}, % {\it factoring}, % {\it TAPER}. The author introduces a new strategy, % the {\it Bold} strategy,whose justification and insight are rather % cryptic (the strategy's algorithm is partially defined by what the % future behavior of that strategy will be !). The simulation results % at the end of the paper tend to prove that the Bold strategy does % indeed perform well. However, the performance metric % chosen is {\it average wasted time} and one may wonder about the relevance % of such a metrix (what about the makespan for instance ?). Overall, the % mostly interesting part of the paper is the survey of the different % techniques and the corresponding bibliography. @inproceedings{coljanni, author = {Michele Colajanni and Philip S. Yu and Daniel M. Dias}, title = {Scheduling Algorithms for Distributed Web Servers}, booktitle = {Proceedings of the 17th International Conference on Distributed Computing Systems}, month = {May}, year = {1997}, } % % summary of this paper coming to a .bib file near you soon... % @INPROCEEDINGS{webb, AUTHOR = {Darren Webb and Andrew Wendelborn and Kevin Maciunas}, TITLE = {Process Networks as a High-Level Notation for Metacomputing}, BOOKTITLE = {Proc. of the Int. Parallel Programming Symposium (IPPS'99), Workshop on Java for Distributed Computing}, MONTH = {April}, YEAR = {1999}, } % Paper Summary % % Process networks are described as an abstraction for metacomputing and % their use is demonstrated in a Geographical Information System. The first % section describes a process network as a hybrid between the Kahn model of % process networks (each node is a sequential lightweight process) and % Stevens' Java implementation for dataflow networks (each edge is a FIFO % bounded queue that can read and write tokens). Scheduling is done in a work % queue manner such that processes are started when there is data available in % their queue (so that scheduling is dynamic). Additionally, processes within % a process network can execute concurrently and mapped to distributed % computers. Also, since process networks are DAGs, there is never deadlock. % The authors also point out that process networks can be hierarchical. % Section 3 describes metacomputing and how distributed process networks can % simplify the interface for users. Section 4 describes their application of % process networks in PAGIS (Process network Architecture for GIS) which is % implemented in Java. PAGIS provides an interface to a repository of % geographic images and a set of utilities that can be applied to it. % The PAGIS architecture consists of a client (UI and communication system), % server, and worker. One of the future goals of the authors is to integrate % this architecture to DISCWorld, "a high level, service approach to % metacomputing".