Skip to Main Content
Summary form only given. Scheduling and resource management in complex heterogeneous distributed systems, such grids, became more important due to the increase of users and applications. Computational and data grids are the most common grid types. In this talk we focus on computational grids, which are used for serving demanding and complex tasks. Because of the nature of grids, there are important issues that must be addressed, such as efficient scheduling and load balancing. Grid scheduling manages the selection of resources for a job, the allocation of jobs to resources and the monitoring of jobs execution. In a grid system where two different job types exist, grid jobs and local jobs, scheduling becomes much more challenging. Scheduling algorithms usually have to deal with two issues: queue ordering and resource assignment. Queue ordering refers to the order in which jobs are assigned to resources and resource assignment refers to the selection of resources on which each job is assigned. A grid system following a hierarchical architecture is organized at multiple levels. For example, at the grid level, a grid scheduler selects the appropriate sites for jobs, and at the in-site local level, local schedulers allocate jobs to specific resources. Effective load distribution is of great importance at grids as it results to lower response times of jobs and fairness in utilization among the heterogeneous sites. Load balancing algorithms can be static or dynamic. The performance evaluation of grid systems is often possible only by simulation rather than by analytical techniques, due to the complexity of the systems. Simulation can provide important insights into the efficiency and tradeoffs of scheduling in large-scale heterogeneous distributed systems, such as grids.