A Hierarchical Task Queue Organization for Shared-Memory Multiprocessor Systems

  • Authors:
  • Sivarama P. Dandamudi;Philip S. P. Cheng

  • Affiliations:
  • Carleton Univ., Ottawa, Ont., Canada;Bell-Northern Research, Ottawa, Ont., Canada

  • Venue:
  • IEEE Transactions on Parallel and Distributed Systems
  • Year:
  • 1995

Quantified Score

Hi-index 0.01

Visualization

Abstract

There are two basic ways in which waiting ready tasks can be organized: centralized organization or distributed organization. In the centralized organization, a single central task queue is maintained. In the latter case, private ready queue of tasks. Ideally, a central ready queue global to all processors is desired over the distributed organization because the centralized organization provides perfect load sharing. However, the centralized organization is not suitable for large parallel systems because the central task queue could become a system bottleneck. The distributed organization, on the other hand, creates the load imbalance problem, which results in performance deterioration, while techniques have been proposed to reduce the ill-effects of task queue contention in the centralized organization and load imbalance in the distributed organization these techniques introduce problems of their own. We propose the use of a hierarchical task queue organization to incorporate the best features of these two organizations. Our study into the performance of this hierarchical organization shows that a properly designed hierarchical organization provides performance very close to that of the centralized organization while eliminating the ready queue contention problem, we also provide an analysis that identifies and provides guidance for designing the hierarchical task queue organization that avoids ready queue access contention. A brief discussion of task scheduling policies is also included