Scheduling for Parallel Processing

Scheduling for Parallel Processing
Author: Maciej Drozdowski
Publisher: Springer Science & Business Media
Total Pages: 395
Release: 2010-03-14
Genre: Computers
ISBN: 184882310X

Overview and Goals This book is dedicated to scheduling for parallel processing. Presenting a research ?eld as broad as this one poses considerable dif?culties. Scheduling for parallel computing is an interdisciplinary subject joining many ?elds of science and te- nology. Thus, to understand the scheduling problems and the methods of solving them it is necessary to know the limitations in related areas. Another dif?culty is that the subject of scheduling parallel computations is immense. Even simple search in bibliographical databases reveals thousands of publications on this topic. The - versity in understanding scheduling problems is so great that it seems impossible to juxtapose them in one scheduling taxonomy. Therefore, most of the papers on scheduling for parallel processing refer to one scheduling problem resulting from one way of perceiving the reality. Only a few publications attempt to arrange this ?eld of knowledge systematically. In this book we will follow two guidelines. One guideline is a distinction - tween scheduling models which comprise a set of scheduling problems solved by dedicated algorithms. Thus, the aim of this book is to present scheduling models for parallel processing, problems de?ned on the grounds of certain scheduling models, and algorithms solving the scheduling problems. Most of the scheduling problems are combinatorial in nature. Therefore, the second guideline is the methodology of computational complexity theory. Inthisbookwepresentfourexamplesofschedulingmodels. Wewillgodeepinto the models, problems, and algorithms so that after acquiring some understanding of them we will attempt to draw conclusions on their mutual relationships.

Task Scheduling for Parallel Systems

Task Scheduling for Parallel Systems
Author: Oliver Sinnen
Publisher: John Wiley & Sons
Total Pages: 326
Release: 2007-05-04
Genre: Computers
ISBN: 0471735760

A new model for task scheduling that dramatically improves the efficiency of parallel systems Task scheduling for parallel systems can become a quagmire of heuristics, models, and methods that have been developed over the past decades. The author of this innovative text cuts through the confusion and complexity by presenting a consistent and comprehensive theoretical framework along with realistic parallel system models. These new models, based on an investigation of the concepts and principles underlying task scheduling, take into account heterogeneity, contention for communication resources, and the involvement of the processor in communications. For readers who may be new to task scheduling, the first chapters are essential. They serve as an excellent introduction to programming parallel systems, and they place task scheduling within the context of the program parallelization process. The author then reviews the basics of graph theory, discussing the major graph models used to represent parallel programs. Next, the author introduces his task scheduling framework. He carefully explains the theoretical background of this framework and provides several examples to enable readers to fully understand how it greatly simplifies and, at the same time, enhances the ability to schedule. The second half of the text examines both basic and advanced scheduling techniques, offering readers a thorough understanding of the principles underlying scheduling algorithms. The final two chapters address communication contention in scheduling and processor involvement in communications. Each chapter features exercises that help readers put their new skills into practice. An extensive bibliography leads to additional information for further research. Finally, the use of figures and examples helps readers better visualize and understand complex concepts and processes. Researchers and students in distributed and parallel computer systems will find that this text dramatically improves their ability to schedule tasks accurately and efficiently.

Scheduling and Automatic Parallelization

Scheduling and Automatic Parallelization
Author: Alain Darte
Publisher: Springer Science & Business Media
Total Pages: 284
Release: 2000-03-30
Genre: Computers
ISBN: 9780817641498

Readership This book is devoted to the study of compiler transformations that are needed to expose the parallelism hiddenin a program. This book is notan introductory book to parallel processing, nor is it an introductory book to parallelizing compilers. Weassume thatreaders are familiar withthebooks High Performance Compilers for Parallel Computingby Wolfe [121] and Super­ compilers for Parallel and Vector Computers by Zima and Chapman [125], and that they want to know more about scheduling transformations. In this book we describe both task graph scheduling and loop nest scheduling. Taskgraphschedulingaims atexecuting tasks linked by prece­ dence constraints; it is a run-time activity. Loop nest scheduling aims at ex­ ecutingstatementinstances linked bydata dependences;it is a compile-time activity. We are mostly interested in loop nestscheduling,butwe also deal with task graph scheduling for two main reasons: (i) Beautiful algorithms and heuristics have been reported in the literature recently; and (ii) Several graphscheduling, like list scheduling, are the basis techniques used in task ofthe loop transformations implemented in loop nest scheduling. As for loop nest scheduling our goal is to capture in a single place the fantastic developments of the last decade or so. Dozens of loop trans­ formations have been introduced (loop interchange, skewing, fusion, dis­ tribution, etc.) before a unifying theory emerged. The theory builds upon the pioneering papers of Karp, Miller, and Winograd [65] and of Lam­ port [75], and it relies on sophisticated mathematical tools (unimodular transformations, parametric integer linear programming, Hermite decom­ position, Smithdecomposition, etc.).

Topics in Parallel and Distributed Computing

Topics in Parallel and Distributed Computing
Author: Sushil K Prasad
Publisher: Morgan Kaufmann
Total Pages: 359
Release: 2015-09-16
Genre: Computers
ISBN: 0128039388

Topics in Parallel and Distributed Computing provides resources and guidance for those learning PDC as well as those teaching students new to the discipline. The pervasiveness of computing devices containing multicore CPUs and GPUs, including home and office PCs, laptops, and mobile devices, is making even common users dependent on parallel processing. Certainly, it is no longer sufficient for even basic programmers to acquire only the traditional sequential programming skills. The preceding trends point to the need for imparting a broad-based skill set in PDC technology. However, the rapid changes in computing hardware platforms and devices, languages, supporting programming environments, and research advances, poses a challenge both for newcomers and seasoned computer scientists. This edited collection has been developed over the past several years in conjunction with the IEEE technical committee on parallel processing (TCPP), which held several workshops and discussions on learning parallel computing and integrating parallel concepts into courses throughout computer science curricula. - Contributed and developed by the leading minds in parallel computing research and instruction - Provides resources and guidance for those learning PDC as well as those teaching students new to the discipline - Succinctly addresses a range of parallel and distributed computing topics - Pedagogically designed to ensure understanding by experienced engineers and newcomers - Developed over the past several years in conjunction with the IEEE technical committee on parallel processing (TCPP), which held several workshops and discussions on learning parallel computing and integrating parallel concepts

Scheduling Divisible Loads in Parallel and Distributed Systems

Scheduling Divisible Loads in Parallel and Distributed Systems
Author: Veeravalli Bharadwaj
Publisher: John Wiley & Sons
Total Pages: 320
Release: 1996-10-14
Genre: Computers
ISBN: 9780818675218

This book provides an in-depth study concerning a claqss of problems in the general area of load sharing and balancing in parallel and distributed systems. The authors present the design and analysis of load distribution strategies for arbitrarily divisible loads in multiprocessor/multicomputer systems subjects to the system constraints in the form of communication delays. In particular, two system architecture-single-level tree or star network, and linear network-are thoroughly analyzed. The text studies two different cases, one of processors with front-ends and the other without. It concentrates on load distribution strategies and performance analysis, and does not cover issues related to implementation of these strategies on a specific system. The book collates research results developed mainly by two groups at the Indian Institute of Science and the State University of New York at Stony Brook. It also covers results by other researchers that have either appeared or are due to appear in computer science literature. The book also provides relevant but easily understandable numerical examples and figures to illustrate important concepts. It is the first book in this area and is intended to spur further research enabling these ideas to be applied to a more general class of loads. The new methodology introduced here allows a close examination of issues involving the integration of communication and computation. In fact, what is presented is a new "calculus" for load sharing problems.

Partitioning and Scheduling Parallel Programs for Multiprocessors

Partitioning and Scheduling Parallel Programs for Multiprocessors
Author: Vivek Sarkar
Publisher: Pitman Publishing
Total Pages: 232
Release: 1989
Genre: Computers
ISBN:

This book is one of the first to address the problem of forming useful parallelism from potential parallelism and to provide a general solution. The book presents two approaches to automatic partitioning and scheduling so that the same parallel program can be made to execute efficiently on widely different multiprocessors. The first approach is based on a macro dataflow model in which the program is partitioned into tasks at compile time and the tasks are scheduled on processors at run time. The second approach is based on a compile time scheduling model, where both the partitioning and scheduling are performed at compile time. Both approaches have been implemented in partition programs written in the single assignment language SISAL. The inputs to the partitioning and scheduling algorithms are a graphical representation of the parallel program and a list of parameters describing the target multiprocessor. Execution profile information is used to derive compile-time estimates of execution times and data sizes in the program. Both the macro dataflow and compile-time scheduling problems are expressed as optimization problems and are shown to be NP complete in the strong sense. Efficient approximation algorithms for these problems are presented. Finally, the effectiveness of the partitioning and scheduling algorithms is studied by multiprocessor simulations of various SISAL benchmark programs for different target multiprocessor parameters. Vivek Sarkar is a Member of Research Staff at the IBM T. J. Watson Research Center. Partitioning and Scheduling Parallel Programs for Multiprocessing is included in the series Research Monographs in Parallel and Distributed Computing. Copublished with Pitman Publishing.

Programming Massively Parallel Processors

Programming Massively Parallel Processors
Author: David B. Kirk
Publisher: Newnes
Total Pages: 519
Release: 2012-12-31
Genre: Computers
ISBN: 0123914183

Programming Massively Parallel Processors: A Hands-on Approach, Second Edition, teaches students how to program massively parallel processors. It offers a detailed discussion of various techniques for constructing parallel programs. Case studies are used to demonstrate the development process, which begins with computational thinking and ends with effective and efficient parallel programs. This guide shows both student and professional alike the basic concepts of parallel programming and GPU architecture. Topics of performance, floating-point format, parallel patterns, and dynamic parallelism are covered in depth. This revised edition contains more parallel programming examples, commonly-used libraries such as Thrust, and explanations of the latest tools. It also provides new coverage of CUDA 5.0, improved performance, enhanced development tools, increased hardware support, and more; increased coverage of related technology, OpenCL and new material on algorithm patterns, GPU clusters, host programming, and data parallelism; and two new case studies (on MRI reconstruction and molecular visualization) that explore the latest applications of CUDA and GPUs for scientific research and high-performance computing. This book should be a valuable resource for advanced students, software engineers, programmers, and hardware engineers. - New coverage of CUDA 5.0, improved performance, enhanced development tools, increased hardware support, and more - Increased coverage of related technology, OpenCL and new material on algorithm patterns, GPU clusters, host programming, and data parallelism - Two new case studies (on MRI reconstruction and molecular visualization) explore the latest applications of CUDA and GPUs for scientific research and high-performance computing

Job Scheduling Strategies for Parallel Processing

Job Scheduling Strategies for Parallel Processing
Author: Dror G. Feitelson
Publisher: Springer Science & Business Media
Total Pages: 316
Release: 1997-08-27
Genre: Business & Economics
ISBN: 9783540635741

This book constitutes the strictly refereed post-workshop proceedings of the 1997 IPPS Workshop on Job Scheduling Strategies for Parallel Processing held in Geneva, Switzerland, in April 1997, as a satelite meeting of the IEEE/CS International Parallel Processing Symposium. The 12 revised full papers presented were carefully reviewed and revised for inclusion in the book. Also included is a detailed introduction surveying the state of the art in the area. Among the topics covered are processor allocation, parallel scheduling, massively parallel processing, shared-memory architectures, gang scheduling, etc.

Job Scheduling Strategies for Parallel Processing

Job Scheduling Strategies for Parallel Processing
Author: Dror G. Feitelson
Publisher: Springer Science & Business Media
Total Pages: 243
Release: 1999-10-13
Genre: Business & Economics
ISBN: 3540666761

This book constitutes the thoroughly refereed post-workshop proceedings of the 5th International Workshop on Job Scheduling Strategies for Parallel Processing, JSSPP'99, held in San Juan, Puerto Rico, in April 1999, as a satelite meeting of IPPS/SPDP'99. The 12 revised full papers have been through an iterated reviewing process and present the state of the art in the area.