Cluster Queue Structure for Shared-Memory

Three basic structures have been proposed to organize the task queues for shared-memory multiprocessor systems: centralized, distributed, and hierarchical. Centralized structures are not suitable for massively parallel systems since the shared queue becomes a bottleneck for frequent enqueuing and dequeuing operations. Distributed structures have load imbalancing problem because of no support for workload sharing between queues. Hierarchical structures intend to combine the advantage of the previous two structures and eliminate their disadvantages. Unfortunately, we find load imbalancing still exists in the hierarchical structure, and has significant impact on system performance, particularly when the workload is heavy and irregular. After identifying the cause of this problem, we propose the use of a clustered structure in place of the hierarchical one. Analyzes and simulations show the proposed structure can provide better load balancing and less contention than the hierarchical one.

[1]  Anoop Gupta,et al.  The Stanford FLASH Multiprocessor , 1994, ISCA.

[2]  Masayuki Murata,et al.  Analysis and Modeling of World Wide Web Traffic for Capacity Dimensioning of Internet Access Lines , 1998, Perform. Evaluation.

[3]  Anoop Gupta,et al.  The Stanford Dash multiprocessor , 1992, Computer.

[4]  Sivarama P. Dandamudi Reducing Run Queue Contention in Shared Memory Multiprocessors , 1997, Computer.

[5]  O. Yu,et al.  Queueing tables and graphs , 1981 .

[6]  Uwe Schwiegelshohn,et al.  Theory and Practice in Parallel Job Scheduling , 1997, JSSPP.

[7]  Sivarama P. Dandamudi,et al.  A Hierarchical Task Queue Organization for Shared-Memory Multiprocessor Systems , 1995, IEEE Trans. Parallel Distributed Syst..

[8]  David D. Yao,et al.  A note on some relations in the queue Glx/M/c , 1984 .

[9]  P. M. Ghare Letter to the Editor - Multichannel Queuing System with Bulk Service , 1968, Oper. Res..

[10]  Lionel M. Ni,et al.  Design Tradeoffs for Process Scheduling in Shared Memory Multiprocessor Systems , 1989, IEEE Trans. Software Eng..

[11]  J. Rothnie,et al.  The KSR 1: bridging the gap between shared memory and MPPs , 1993, Digest of Papers. Compcon Spring.

[12]  Sanjay Sharma,et al.  Experimental evaluation of performance and scalability of a multiprogrammed shared-memory multiprocessor , 1993, Proceedings of 1993 5th IEEE Symposium on Parallel and Distributed Processing.

[13]  Daniel E. Lenoski,et al.  Scalable Shared-Memory Multiprocessing , 1995 .

[14]  Erik Hagersten,et al.  Trends in Shared Memory Multiprocessing , 1997, Computer.

[15]  Martin F. Arlitt,et al.  Web server workload characterization: the search for invariants , 1996, SIGMETRICS '96.