High-Level Scheduling of Parallel Jobs in the IBM 3090 Production Environment
Authors: Thomas Seitz
Venue:  (1991)

Advances in VLSI (Very Large Scale Integration) in microchips have caused the cost of computing using these chips to drop and average of 20 to 30 percent annually for the past three decades [1]. Such improvements to conventional microchips can only be expected to last for another 10 or 15 years. However, it seems at the moment that improvements in computer architectures can carry on the success of the microchips. A very encouraging approach is the strategy of running different tasks of one program concurrently on multiple processors of a single system. The idea is not new, but in recent years, key problems have been solved, promising new dimensions of computing power [13, 14, 38]. Parallel processing will be one of the major developing fields in computer science during the next decades [1, 12, 13, 38]. A major requirement for the success of parallel processing will be the effective execution of parallel algorithms with maximal possible speed up on parallel processors. This resource allocation problem is called scheduling of parallel jobs here and will be discussed, based upon a special system environment, in this work. Among massively parallel computers that usually run in single user mode, most of today''s multiple user mainframes are already offered with (optional) multiple CPUs. These processing units not only perform better service for users but, in addition, allow them to execute several tasks of a program concurrently. Although a number of programming tools for parallel processing (including languages) already exist, it still remains a complex problem to run parallel algorithms on multiple processors effectively. This work focuses on the problem of scheduling parallel jobs in a general purpose mainframe (IBM 3090) production (batch) environment that runs under the operating system VM/XA SP. Parallel FORTRAN [3] enables users to define multiple virtual CPUs that are mapped onto real CPUs, depending on the workload of the system. These multiple virtual CPUs are disadvantaged, compared to users running serially, when they are scheduled by the resource allocation routines of the VM/XA SP operating system in a heterogeneous production environment. This is explained in chapters 5 and 7. Different solutions to this problem are presented here. The most effective and flexible method is a high-level scheduling daemon that has as its objective function the system throughput under the constraint to give parallel users the maximal possible throughput. The presentation, modification, parameter variation, and discussion of this mechanism is the main subject of this work. A more basic approach to this resource allocation problem is the modification of the VM/XA SP scheduler. The resource allocation routines should provide multiple processor users with fair service on the machine. The scheduler and possible improvements for the scheduling routines are discussed here. Comparing these approaches, it must be mentioned that high-level The ACM Portal is published by the Association for Computing Machinery. Copyright © 2010 ACM, Inc. Terms of Usage Privacy Policy Code of Ethics Contact Us Useful downloads: Adobe Acrobat QuickTime Windows Media Player Real Player