دسترسی نامحدود
برای کاربرانی که ثبت نام کرده اند
برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید
در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید
برای کاربرانی که ثبت نام کرده اند
درصورت عدم همخوانی توضیحات با کتاب
از ساعت 7 صبح تا 10 شب
ویرایش:
نویسندگان: Oliver Sinnen
سری: Wiley Series on Parallel and Distributed Computing
ISBN (شابک) : 0471735760, 9780470121160
ناشر: Wiley-Interscience
سال نشر: 2007
تعداد صفحات: 315
زبان: English
فرمت فایل : PDF (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود)
حجم فایل: 3 مگابایت
در صورت تبدیل فایل کتاب Task Scheduling for Parallel Systems به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.
توجه داشته باشید کتاب برنامه ریزی وظیفه برای سیستم های موازی نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.
یک مدل جدید برای زمانبندی وظایف که به طور چشمگیری کارایی سیستمهای موازی را بهبود میبخشد زمانبندی وظایف برای سیستمهای موازی میتواند به باتلاقی از اکتشافات، مدلها و روشهایی تبدیل شود که در دهههای گذشته توسعه یافتهاند. نویسنده این متن ابتکاری با ارائه یک چارچوب نظری منسجم و جامع همراه با مدلهای واقعی سیستم موازی، سردرگمی و پیچیدگی را کاهش میدهد. این مدلهای جدید، بر اساس بررسی مفاهیم و اصول زیربنای زمانبندی کار، ناهمگونی، رقابت برای منابع ارتباطی، و دخالت پردازشگر در ارتباطات را در نظر میگیرند. ضروری است. آنها به عنوان مقدمه ای عالی برای برنامه نویسی سیستم های موازی عمل می کنند و زمان بندی وظایف را در چارچوب فرآیند موازی سازی برنامه قرار می دهند. نویسنده سپس مبانی تئوری گراف را مرور میکند و در مورد مدلهای اصلی گراف که برای نمایش برنامههای موازی استفاده میشوند، بحث میکند. در ادامه، نویسنده چارچوب زمانبندی وظایف خود را معرفی می کند. او پیشینه نظری این چارچوب را به دقت توضیح میدهد و چندین مثال ارائه میدهد تا خوانندگان بتوانند به طور کامل درک کنند که چگونه آن را تا حد زیادی سادهسازی میکند و در عین حال توانایی زمانبندی را افزایش میدهد. به خوانندگان درک کاملی از اصول اساسی الگوریتم های زمان بندی ارائه می دهد. دو فصل آخر به اختلافات ارتباطی در زمانبندی و درگیری پردازشگر در ارتباطات میپردازد. هر فصل دارای تمرینهایی است که به خوانندگان کمک میکند مهارتهای جدید خود را در تمرین انجام دهند. یک کتابشناسی گسترده منجر به اطلاعات اضافی برای تحقیقات بیشتر می شود. در نهایت، استفاده از شکلها و مثالها به خوانندگان کمک میکند مفاهیم و فرآیندهای پیچیده را بهتر تجسم و درک کنند. محققان و دانشآموزان در سیستمهای کامپیوتری توزیعشده و موازی متوجه خواهند شد که این متن توانایی آنها را برای برنامهریزی دقیق و کارآمد وظایف بهطور چشمگیری بهبود میبخشد.
A new model for task scheduling that dramatically improves the efficiency of parallel systemsTask 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 skillsinto 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.
TASK SCHEDULING FOR PARALLEL SYSTEMS......Page 4
CONTENTS......Page 10
Preface......Page 14
Acknowledgments......Page 16
1.1 Overview......Page 18
1.2 Organization......Page 22
2.1.1 Flynn’s Taxonomy......Page 24
2.1.2 Memory Architectures......Page 26
2.1.3 Programming Paradigms and Models......Page 28
2.2.1 Static Networks......Page 30
2.2.2 Dynamic Networks......Page 35
2.3 Parallelization......Page 39
2.4.1 Concurrency and Granularity......Page 41
2.4.2 Decomposition Techniques......Page 42
2.4.3 Computation Type and Program Formulation......Page 44
2.4.5 Target Parallel System......Page 45
2.5.1 Data Dependence......Page 46
2.5.2 Data Dependence in Loops......Page 49
2.5.3 Control Dependence......Page 52
2.6 Concluding Remarks......Page 53
2.7 Exercises......Page 54
3.1 Basic Graph Concepts......Page 57
3.1.1 Computer Representation of Graphs......Page 60
3.1.2 Elementary Graph Algorithms......Page 63
3.2 Graph as a Program Model......Page 66
3.2.2 Comparison Criteria......Page 67
3.3 Dependence Graph (DG)......Page 68
3.3.1 Iteration Dependence Graph......Page 70
3.3.2 Summary......Page 72
3.4 Flow Graph (FG)......Page 73
3.4.1 Data-Driven Execution Model......Page 77
3.4.2 Summary......Page 78
3.5 Task Graph (DAG)......Page 79
3.5.1 Graph Transformations and Conversions......Page 81
3.5.2 Motivations and Limitations......Page 85
3.6 Concluding Remarks......Page 86
3.7 Exercises......Page 87
4.1 Fundamentals......Page 91
4.2 With Communication Costs......Page 93
4.2.1 Schedule Example......Page 98
4.2.2 Scheduling Complexity......Page 99
4.3 Without Communication Costs......Page 103
4.3.1 Schedule Example......Page 104
4.3.2 Scheduling Complexity......Page 105
4.4 Task Graph Properties......Page 109
4.4.1 Critical Path......Page 110
4.4.2 Node Levels......Page 112
4.4.3 Granularity......Page 118
4.6 Exercises......Page 122
5.1 List Scheduling......Page 125
5.1.1 Start Time Minimization......Page 128
5.1.2 With Dynamic Priorities......Page 131
5.1.3 Node Priorities......Page 132
5.2 Scheduling with Given Processor Allocation......Page 135
5.3 Clustering......Page 136
5.3.1 Clustering Algorithms......Page 138
5.3.2 Linear Clustering......Page 141
5.3.3 Single Edge Clustering......Page 145
5.3.4 List Scheduling as Clustering......Page 152
5.3.5 Other Algorithms......Page 155
5.4.1 Assigning Clusters to Processors......Page 156
5.5 Concluding Remarks......Page 158
5.6 Exercises......Page 159
6.1 Insertion Technique......Page 162
6.1.1 List Scheduling with Node Insertion......Page 165
6.2 Node Duplication......Page 167
6.2.1 Node Duplication Heuristics......Page 170
6.3 Heterogeneous Processors......Page 171
6.3.1 Scheduling......Page 174
6.4.1 α|β|γ Classification......Page 175
6.4.3 With Communication Costs......Page 182
6.4.4 With Node Duplication......Page 185
6.5 Genetic Algorithms......Page 187
6.5.1 Basics......Page 188
6.5.2 Chromosomes......Page 189
6.5.3 Reproduction......Page 194
6.5.4 Selection, Complexity, and Flexibility......Page 197
6.6 Concluding Remarks......Page 199
6.7 Exercises......Page 200
7. Communication Contention in Scheduling......Page 204
7.1 Contention Awareness......Page 205
7.1.2 Network Contention......Page 206
7.2.1 Topology Graph......Page 209
7.2.2 Routing......Page 215
7.2.3 Scheduling Network Model......Page 219
7.3 Edge Scheduling......Page 220
7.3.1 Scheduling Edge on Route......Page 221
7.3.2 The Edge Scheduling......Page 225
7.4.1 Basics......Page 226
7.4.2 NP-Completeness......Page 228
7.5.1 List Scheduling......Page 233
7.5.2 Priority Schemes—Task Graph Properties......Page 236
7.5.3 Clustering......Page 237
7.5.4 Experimental Results......Page 238
7.6 Concluding Remarks......Page 240
7.7 Exercises......Page 241
8. Processor Involvement in Communication......Page 245
8.1.1 Involvement Types......Page 246
8.1.2 Involvement Characteristics......Page 249
8.1.3 Relation to LogP and Its Variants......Page 253
8.2 Involvement Scheduling......Page 255
8.2.1 Scheduling Edges on the Processors......Page 257
8.2.2 Node and Edge Scheduling......Page 263
8.2.3 Task Graph......Page 264
8.2.4 NP-Completeness......Page 265
8.3 Algorithmic Approaches......Page 267
8.3.1 Direct Scheduling......Page 268
8.3.2 Scheduling with Given Processor Allocation......Page 271
8.4.1 List Scheduling......Page 274
8.4.2 Two-Phase Heuristics......Page 278
8.4.3 Experimental Results......Page 280
8.5 Concluding Remarks......Page 281
8.6 Exercises......Page 282
Bibliography......Page 286
Author Index......Page 298
Subject Index......Page 302