Task Scheduling for Parallel Systems / Edition 1

Hardcover (Print)
Buy New
Buy New from BN.com
Used and New from Other Sellers
Used and New from Other Sellers
from $87.44
Usually ships in 1-2 business days
(Save 25%)
Other sellers (Hardcover)
  • All (4) from $87.44   
  • New (3) from $87.44   
  • Used (1) from $94.65   


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.

Read More Show Less

Editorial Reviews

From the Publisher
"The theoretical framework presented and the realistic parallel computing issues make reading this book worthwhile." (Computing Reviews.com, October 1, 2007)
Read More Show Less

Product Details

Meet the Author

Oliver Sinnen, PhD, is a senior lecturer in the Department of Electrical and Computer Engineering at the University of Auckland, New Zealand.

Read More Show Less

Table of Contents



1. Introduction.

1.1 Overview.

1.2 Organization.

2. Parallel Systems and Programming.

2.1 Parallel Architectures.

2.1.1 Flynn’s Taxonomy.

2.1.2 Memory Architectures.

2.1.3 Programming Paradigms and Models.

2.2 Communication Networks.

2.2.1 Static Networks.

2.2.2 Dynamic Networks.

2.3 Parallelization.

2.4 Subtask Decomposition.

2.4.1 Concurrency and Granularity.

2.4.2 Decomposition Techniques.

2.4.3 Computation Type and Program Formulation.

2.4.4 Parallelization Techniques.

2.4.5 Target Parallel System.

2.5 Dependence Analysis.

2.5.1 Data Dependence.

2.5.2 Data Dependence in Loops.

2.5.3 Control Dependence.

2.6 Concluding Remarks.

2.7 Exercises.

3. Graph Representations.

3.1 Basic Graph Concepts.

3.1.1 Computer Representation of Graphs.

3.1.2 Elementary Graph Algorithms.

3.2 Graph as a Program Model.

3.2.1 Computation and Communication Costs.

3.2.2 Comparison Criteria.

3.3 Dependence Graph (DG).

3.3.1 Iteration Dependence Graph.

3.3.2 Summary.

3.4 Flow Graph (FG).

3.4.1 Data-Driven Execution Model.

3.4.2 Summary.

3.5 Task Graph (DAG).

3.5.1 Graph Transformations and Conversions.

3.5.2 Motivations and Limitations.

3.5.3 Summary.

3.6 Concluding Remarks.

3.7 Exercises.

4. Task Scheduling.

4.1 Fundamentals.

4.2 With Communication Costs.

4.2.1 Schedule Example.

4.2.2 Scheduling Complexity.

4.3 Without Communication Costs.

4.3.1 Schedule Example.

4.3.2 Scheduling Complexity.

4.4 Task Graph Properties.

4.4.1 Critical Path.

4.4.2 Node Levels.

4.4.3 Granularity.

4.5 Concluding Remarks.

4.6 Exercises.

5. Fundamental Heuristics.

5.1 List Scheduling.

5.1.1 Start Time Minimization.

5.1.2 With Dynamic Priorities.

5.1.3 Node Priorities.

5.2 Scheduling with Given Processor Allocation.

5.2.1 Phase Two.

5.3 Clustering.

5.3.1 Clustering Algorithms.

5.3.2 Linear Clustering.

5.3.3 Single Edge Clustering.

5.3.4 List Scheduling as Clustering.

5.3.5 Other Algorithms.

5.4 From Clustering to Scheduling.

5.4.1 Assigning Clusters to Processors.

5.4.2 Scheduling on Processors.

5.5 Concluding Remarks.

5.6 Exercises.

6. Advanced Task Scheduling.

6.1 Insertion Technique.

6.1.1 List Scheduling with Node Insertion.

6.2 Node Duplication.

6.2.1 Node Duplication Heuristics.

6.3 Heterogeneous Processors.

6.3.1 Scheduling.

6.4 Complexity Results.

6.4.1 α|β|γ Classification.

6.4.2 Without Communication Costs.

6.4.3 With Communication Costs.

6.4.4 With Node Duplication.

6.4.5 Heterogeneous Processors.

6.5 Genetic Algorithms.

6.5.1 Basics.

6.5.2 Chromosomes.

6.5.3 Reproduction.

6.5.4 Selection, Complexity, and Flexibility.

6.6 Concluding Remarks.

6.7 Exercises.

7. Communication Contention in Scheduling.

7.1 Contention Awareness.

7.1.1 End-Point Contention.

7.1.2 Network Contention.

7.1.3 Integrating End-Point and Network Contention.

7.2 Network Model.

7.2.1 Topology Graph.

7.2.2 Routing.

7.2.3 Scheduling Network Model.

7.3 Edge Scheduling.

7.3.1 Scheduling Edge on Route.

7.3.2 The Edge Scheduling.

7.4 Contention Aware Scheduling.

7.4.1 Basics.

7.4.2 NP-Completeness.

7.5 Heuristics.

7.5.1 List Scheduling.

7.5.2 Priority Schemes—Task Graph Properties.

7.5.3 Clustering.

7.5.4 Experimental Results.

7.6 Concluding Remarks.

7.7 Exercises.

8. Processor Involvement in Communication.

8.1 Processor Involvement—Types and Characteristics.

8.1.1 Involvement Types.

8.1.2 Involvement Characteristics.

8.1.3 Relation to LogP and Its Variants.

8.2 Involvement Scheduling.

8.2.1 Scheduling Edges on the Processors.

8.2.2 Node and Edge Scheduling.

8.2.3 Task Graph.

8.2.4 NP-Completeness.

8.3 Algorithmic Approaches.

8.3.1 Direct Scheduling.

8.3.2 Scheduling with Given Processor Allocation.

8.4 Heuristics.

8.4.1 List Scheduling.

8.4.2 Two-Phase Heuristics.

8.4.3 Experimental Results.

8.5 Concluding Remarks.

8.6 Exercises.


Author Index.

Subject Index.

Read More Show Less

Customer Reviews

Be the first to write a review
( 0 )
Rating Distribution

5 Star


4 Star


3 Star


2 Star


1 Star


Your Rating:

Your Name: Create a Pen Name or

Barnes & Noble.com Review Rules

Our reader reviews allow you to share your comments on titles you liked, or didn't, with others. By submitting an online review, you are representing to Barnes & Noble.com that all information contained in your review is original and accurate in all respects, and that the submission of such content by you and the posting of such content by Barnes & Noble.com does not and will not violate the rights of any third party. Please follow the rules below to help ensure that your review can be posted.

Reviews by Our Customers Under the Age of 13

We highly value and respect everyone's opinion concerning the titles we offer. However, we cannot allow persons under the age of 13 to have accounts at BN.com or to post customer reviews. Please see our Terms of Use for more details.

What to exclude from your review:

Please do not write about reviews, commentary, or information posted on the product page. If you see any errors in the information on the product page, please send us an email.

Reviews should not contain any of the following:

  • - HTML tags, profanity, obscenities, vulgarities, or comments that defame anyone
  • - Time-sensitive information such as tour dates, signings, lectures, etc.
  • - Single-word reviews. Other people will read your review to discover why you liked or didn't like the title. Be descriptive.
  • - Comments focusing on the author or that may ruin the ending for others
  • - Phone numbers, addresses, URLs
  • - Pricing and availability information or alternative ordering information
  • - Advertisements or commercial solicitation


  • - By submitting a review, you grant to Barnes & Noble.com and its sublicensees the royalty-free, perpetual, irrevocable right and license to use the review in accordance with the Barnes & Noble.com Terms of Use.
  • - Barnes & Noble.com reserves the right not to post any review -- particularly those that do not follow the terms and conditions of these Rules. Barnes & Noble.com also reserves the right to remove any review at any time without notice.
  • - See Terms of Use for other conditions and disclaimers.
Search for Products You'd Like to Recommend

Recommend other products that relate to your review. Just search for them below and share!

Create a Pen Name

Your Pen Name is your unique identity on BN.com. It will appear on the reviews you write and other website activities. Your Pen Name cannot be edited, changed or deleted once submitted.

Your Pen Name can be any combination of alphanumeric characters (plus - and _), and must be at least two characters long.

Continue Anonymously

    If you find inappropriate content, please report it to Barnes & Noble
    Why is this product inappropriate?
    Comments (optional)