Skip to main content
Log in

WorkCrews: An abstraction for controlling parallelism

  • Published:
International Journal of Parallel Programming Aims and scope Submit manuscript

Abstract

In implementing parallel programs, it is important to find strategies for controlling parallelism that make the most effective use of available resources. In this paper, we introduce a dynamic strategy called WorkCrews for controlling the use of parallelism on small-scale, tightly-coupled multiprocessors. In the WorkCrew model, tasks are assigned to a finite set ofworkers. As in other mechanisms for specifying parallelism, each worker can enqueue subtasks for concurrent evaluation by other workers as they become idle. The WorkCrew paradigm has two advantages. First, much of the work associated with task division can be deferred until a new worker actually undertakes the subtask and avoided altogether if the original worker ends up executing the subtask serially. Second, the ordering of queue requests under WorkCrews favors coarse-grained subtasks, which reduces further the overhead of task decomposition.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Mark Vandevoorde, Parallel Compilation on a Tightly-Coupled Multiprocessor, Research Report #26, Palo Alto, California: Digital Equipment Corporation, Systems Research Center, March 1, 1988.

  2. Peter N. Oleinick and Samuel H. Fuller, The Implementation and Evaluation of a Parallel Algorithm on C.mmp, Computer Science Department Report CMU-CS-78-125, Carnegie-Mellon University (June 1978).

  3. Edward F. Gehringer, Daniel P. Siewiorek, and Zary Segall,Parallel Processing: The Cm * Experience, Bedford, MA: Digital Press, (1987).

    Google Scholar 

  4. Peter Hibbard Andy Hisgen, and Tom Rodeheffer, A Language Implementation Design for a Multiprocessor Computer System,Proc. of the Fifth Annual Symposium on Computer Architechture, (April 1978).

  5. Peter Møller-Nielsen and Jørgen Staunstrup, Problem-heap: A Paradigm for Multiprocessor Algorithms, DAIMI PB-200, Aarhus University, (October 1985).

  6. Severo Ornstein, William R. Crowther, Michael F. Kraley, Robert D. Bressler, Anthony Michel, and Frank Heart, Pluribus: A Reliable Multiprocessor,AFIPS Conference Proceedings, Vol. 44, (May 1975).

  7. Robert Halstead, Multilisp: A Language for Concurrent Symbolic Computation,ACM Transcations on Programming Languages and Systems, Vol. 7, no. 4, (October 1985).

  8. Jon Bentley, Programming Pearls: How to Sort,Communications of the ACM, Vol. 27, no. 4, (April 1984).

  9. C. A. R. Hoare, Quicksort,Computer Journal, Vol. 5, (1962).

  10. Robert Sedgewick, Implementing Quicksort Programs,Communications of the ACM, Vol. 21, No. 10, (October 1978).

  11. Paul Rovner, Roy Levin, and John Wick, On Extending Modula-2 for Building Large, Integrated Systems, Research Report #3, Palo Alto, California: Digital Equipment Corporation Systems, Research Center, (January 1985).

  12. Niklaus Wirth,Programming in Modula-2, New York: Springer-Verlag, (1985).

    Google Scholar 

  13. Andrew D. Birrell, John V. Guttag, James J. Horning, and Roy Levin, Synchronization Primitives for a Multiprocessor,Proc. of the Symposium on Operating Systems Principles, Austin, Texas, (November 1987).

  14. Andrew Birrell, An Introduction to Programming with Threads, Research Report # 35, Palo Alto, California: Digital Equipment Corporation, Systems Research Center, January 6, 1989.

  15. Charles Thacker and Larry Stewart, Firefly: A Multiprocessor Workstation,Proc. of the Second International Conference on Architechtural Support for Programming Languages and Operating Systems (ASPLOS II), Palo Alto, California (October 1987).

Download references

Authors

Additional information

Mark Vandevoorde's work in this project was supported in part by the Advanced Research Projects Agency of the Department of Defense, monitored by the Office of Naval Research under contract N00014-83-K-0125; Digital Equipment Corporation's Systems Research Center; the National Science Foundation under Grant 8706652-CCR; and the NYNEX Corporation. Current address: Laboratory for Computer Science, Massachusetts Institute of Technology.

Digital Equipment Corporation, Systems Research Center.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Vandevoorde, M.T., Roberts, E.S. WorkCrews: An abstraction for controlling parallelism. Int J Parallel Prog 17, 347–366 (1988). https://doi.org/10.1007/BF01407910

Download citation

  • Received:

  • Revised:

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF01407910

Key Words

Navigation