• 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