DocumentCode
2130274
Title
Dynamic scheduling strategies for shared-memory multiprocessors
Author
Hamidzadeh, Babak ; Lilja, David J.
Author_Institution
Dept. of Comput. Sci., Univ. of Sci. & Technol., Kowloon, Hong Kong
fYear
1996
fDate
27-30 May 1996
Firstpage
208
Lastpage
215
Abstract
Efficiently scheduling parallel tasks on to the processors of a shared-memory multiprocessor is critical to achieving high performance. Given perfect information at compile-time, a static scheduling strategy can produce an assignment of tasks to processors that ideally balances the load among the processors while minimizing the run-time scheduling overhead and the average memory referencing delay. Since perfect information is seldom available, however, dynamic scheduling strategies distribute the task assignment function to the processors by having idle processors allocate work to themselves from a shared queue. While this approach can improve the load balancing compared to static scheduling, the time required to access the shared work queue adds directly to the overall execution time. To overlap the time required to dynamically schedule tasks with the execution of the tasks, we examine a class of self-adjusting dynamic scheduling (SADS) algorithms that centralizes the assignment of tasks to processors. These algorithms dedicate a single processor of the multiprocessor to perform a novel on-line branch-and-bound technique that dynamically computes partial schedules based on the loads of the other processors and the memory locality (affinity) of the tasks and the processors. Our simulation results show that this centralized scheduling outperforms self-scheduling algorithms even when using only a small number of processors
Keywords
processor scheduling; resource allocation; shared memory systems; average memory referencing delay; branch-and-bound technique; dynamic scheduling strategies; load balancing; memory locality; parallel tasks scheduling; partial schedules; run-time scheduling; self-adjusting dynamic scheduling algorithms; shared-memory multiprocessors; static scheduling strategy; task assignment function; Computer science; Delay effects; Dynamic scheduling; Heuristic algorithms; Load management; Multiprocessing systems; Optimal scheduling; Processor scheduling; Runtime; Scheduling algorithm;
fLanguage
English
Publisher
ieee
Conference_Titel
Distributed Computing Systems, 1996., Proceedings of the 16th International Conference on
Print_ISBN
0-8186-7399-0
Type
conf
DOI
10.1109/ICDCS.1996.507918
Filename
507918
Link To Document