| Index |
The Computational Grid provides a promising platform for the efficient execution of parameter sweep applications over very large parameter spaces. Scheduling such applications is challenging because target resources are heterogeneous, because their load and availability varies dynamically, and because independent tasks may share common data files. In this paper, we propose an adaptive scheduling algorithm for parameter sweep applications on the Grid. We modify standard heuristics for task/host assignment in perfectly predictable environments (Max-min, Min-min, Sufferage), and we propose an extension of Sufferage called XSufferage. Using simulation, we demonstrate that XSufferage can take advantage of file sharing to achieve better performance than the other heuristics. We also study the impact of inaccurate performance prediction on scheduling. Our study shows that: (i)~different heuristics behave differently when predictions are inaccurate; (ii)~increased adaptivity leads to better performance.
This chapter is part of a text covering the basic issues involved in developing applications, middleware, and infrastructure for a metacomputing platform ("compuutational grid"). The metaphore "computational grid" is based on the electrical power grid which provides ubiquitous electrical power. In the same way the metacomputer has the potential of developing into a computational grid which can provide ubiquitous computing power.
The chapter deals with the problem of achieving application performance via scheduling on such a platform. Application scheduling on a metacomputer is compared with application scheduling on MPPs. Current work in the area of metacomputer application scheduling is reviewed. Finally, trends and challenges in the metacomputing application scheduling area as well as system support for such "high-performance" schedulers are discussed.
In this paper we examine the performance sensitivity of a master/slave parallel ray-tracing application when running on non-dedicated clusters of workstations. Our experiments show that two different scheduling strategies, one static and one dynamic, exhibit different performance sensitivities to variabilities in resource capabilities and workload distributions. We demonstrate for our example application that neither scheduling strategy by itself consistently induces the best application performance (minimal execution time) when running on the same resources under normally experienced production operating conditions. These results support the idea that dynamic selection of appropriate scheduling strategies to match run-time conditions could be a promising approach to achieving better application performance for master/slave applications on heterogeneous platforms.
This paper investigates the efficacy of Application-Level Scheduling (AppLeS) for a parallel gene sequence library comparison application in production metacomputing settings. We compare an AppLeS-enhanced version of the application to an original implementation designed and tuned to use the native scheduling mechanisms of Mentat -- a metacomputing software infrastructure. The experimental data shows that the AppLeS versions outperform the best Mentat versions over a range of problem sizes and computational settings.
The structure of the AppLeS we have defined for this application does not depend on the scheduling algorithms that it uses. Instead, the AppLeS scheduler considers the uncertainty associated with the information it uses in its scheduling decisions to choose between the static placement of computation, and the dynamic assignment of computation during execution. We propose that this framework is general enough to represent the class of metacomputing applications that are organized as a master and set of parallel slaves, in which the master distributes uncomputed work.
This paper describes the state-of-the-art of the AppLeS Project as of Summer, 1997. Application-level scheduling, the AppLeS architecture, ongoing work in developing application AppLeS, and AppLeS coordinated subprojects are described. References are given to related work both within and outside the AppLeS group.
We focus om the problems of scheduling applications on metacomputing
systems. We intoduce the concept of application-centric scheduling in which
everything about the system is evaluated in terms of its impact on the
application. Application-centric scheduling is used by virtually all metacomputer
programmers to achieve performance on metacomputing systems. We describe
two successful metacomputing appli and Panoramacations to illustrate this
approach, and describe AppLeS scheduling agents which generalize the application-centric
scheduling approach. Finally, we show preliminary results which compare
AppLeS-dervied schedules with conventional strip and blocked schedules
for a two-dimensional Jacobi code.
Our strategy uses dynamic information exported by a supercomputer's
batch scheduler to simultaneously schedule tasks on workstations and immediately
available supercomputer nodes. This strategy is of great practical interest
because it combines resources available to the typical research lab: time-shared
workstations and CPU time in remote space-shared supercomputers. We show
that this strategy improves the performance of the tomography application
compared to traditional scheduling strategies, which target the application
to either type of resource alone.
Computational Grids have become an important and popular computing platform for both scientific and commercial distributed computing communities. However, users of such systems typically find achievement of application execution performance remains challenging. Although Grid infrastructures such as Legion and Globus provide basic resource selection functionality, work allocation functionality, and scheduling mechanisms, applications must interpret system performance information in terms of their own requirements in order to develop performance-efficient schedules.
We describe a new high-performance scheduler that incorporates dynamic
system information, application requirements, and a detailed performance
model in order to create performance efficient schedules. While the
scheduler is designed to provide improved performance for a magnetohydrodynamics
simulation in the Legion Computational Grid infrastructure, the design
is generalizable to other systems and other data-parallel, iterative codes.
We describe the adaptive performance model, resource selection strategies,
and scheduling policies employed by the scheduler. We demonstrate
the improvement in application performance achieved by the scheduler in
dedicated and shared Legion environments.
Last updated 5/24/00 by hdail@cs.ucsd.edu