Skip to main content

Scalable cache coherence for large shared memory multiprocessors

  • Reconfigurable And Scalable Systems
  • Conference paper
  • First Online:
CONPAR 90 — VAPP IV (VAPP 1990, CONPAR 1990)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 457))

  • 131 Accesses

Abstract

This paper describes a new hardware solution for the cache coherence problem in large scale shared memory multiprocessors. The protocol is based on a linked list of caches — forming a distributed directory and (to ensure a scalable design) does not require a global broadcast mechanism. Fully-mapped directory-based solutions proposed earlier also do not require a global broadcast mechanism. However, our solution has a lower cost and potentially better performance than the fully-mapped directory-based protocol. We provide simulation results to show that the performance of the distributed directory protocol is more robust when there is contention for the data and for variations in memory technology. Further, we do not assume that the network preserves the order of messages. Thus we do not preclude adaptive routing. Our solution also allows an efficient implementation of locks.

This work was supported by equipment provided by the Knowledge Systems Laboratory, Department of Computer Science, Stanford University

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

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Anant Agarwal, Richard Simoni, John Hennessy, and Mark Horowitz. An evaluation of directory schemes for cache coherence. In Proceedings of the 15th International Symposium on Computer Architecture, pages 281–289, 1988.

    Google Scholar 

  2. Thomas Anderson. The performance implications of spin-waiting alternatives for shared memory multiprocessors. In 1989 International Conference on Parallel Processing, pages 170–174, 1989. Vol II.

    Google Scholar 

  3. James Archibald and Jean-Loup Baer. Cache coherence protocols: Evaluation using a multiprocessor simulation model. ACM Transactions on Computer Systems, 4(4):274–298, November 1986.

    Article  Google Scholar 

  4. Sandra Johnson Baylor and Faye A. Briggs. The effects of cache coherence on the performance of parallel PDE algorithms in multiprocessors. In Proceedings of the 1989 International Conference on Parallel Processing, pages 233–236, 1989. Vol-I.

    Google Scholar 

  5. Philip Bitar and Alvin Despain. Multiprocessor cache synchronization. In Proceedings of the 13th International Symposium on Computer Architecture, pages 424–433, 1986.

    Google Scholar 

  6. W.C. Brantley, K.P. McAuliffe, and J. Weiss. RP3 processor-memory element. In Proceedings of the 1985 International Conference on Parallel Processing, pages 782–789, 1985.

    Google Scholar 

  7. Greg Byrd. Personal communication regarding talk given by Tom Knight at a workshop on ultra large scale message passing computers, 1987.

    Google Scholar 

  8. Gregory Byrd, Nakul Saraiya, and Bruce Delagi. Multicast communication in multi-processor systems. In Proceedings of the 1989 International Conference on Parallel Processing, pages 196–200, 1989. Vol-I.

    Google Scholar 

  9. Lucien M. Censier and Paul Feautrier. A new solution to coherence problems in multicache systems. IEEE Transactions on Computers, c-27(12):1112–1118, December 1978.

    Google Scholar 

  10. In IEEE Computer. Special issue on cache architectures for tightly coupled multi-processors. vol. 23, no.6. IEEE Computer Society, June 1990.

    Google Scholar 

  11. Michel Dubois, Christoph Scheurich, and Faye Briggs. Memory access buffering in multiprocessors. In Proceedings of the 13th International Symposium on Computer Architecture, pages 434–442, 1986.

    Google Scholar 

  12. M. Odaka et.al. A 512Kb/5ns BiCMOS RAM with 1KG/150ps logic gate array. In Proceedings of the 1989 IEEE International Solid-State Circuits Conference, pages 28–29, 1989.

    Google Scholar 

  13. T. Takeshima et.al. A 55ns 16Mb DRAM. In Proceedings of the 1989 IEEE International Solid-State Circuits Conference, pages 246–247, 1989.

    Google Scholar 

  14. James Goodman, Mary Vernon, and Philip Woest. Efficient synchronization primitives for large-scale cache-coherent multiprocessors. In Proceedings of the Third International Conference on Architectural Support for Programming Languages and Operating Systems, pages 64–75, April 1989.

    Google Scholar 

  15. Daniel Lenoski, James Laudon, Kourosh Gharachorloo, Anoop Gupta, and John Hennessy. The directory-based cache coherence protocol for the DASH multiprocessor. Technical Report CSL-TR-89-404, Computer Systems Laboratory, Stanford University, 1989.

    Google Scholar 

  16. Christoph Scheurich and Michel Dubois. Correct memory operation of cache-based multiprocessors. In Proceedings of the 14th International Symposium on Computer Architecture, pages 234–243, 1987.

    Google Scholar 

  17. Manu Thapar and Bruce Delagi. Design and implementation of a distributed directory cache coherence protocol. Technical report KSL-89-72, Stanford University, 1989.

    Google Scholar 

  18. Manu Thapar and Bruce Delagi. Stanford distributed-directory protocol. IEEE Computer, 23(6):78–80, June 1990.

    Google Scholar 

  19. Wolf-Dietrich Weber and Anoop Gupta. Analysis of cache invalidation patterns in multiprocessors. In Proceedings of the Third International Conference on Architectural Support for Programming Languages and Operating Systems, pages 243–256, 1989.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Helmar Burkhart

Rights and permissions

Reprints and permissions

Copyright information

© 1990 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Thapar, M., Delagi, B. (1990). Scalable cache coherence for large shared memory multiprocessors. In: Burkhart, H. (eds) CONPAR 90 — VAPP IV. VAPP CONPAR 1990 1990. Lecture Notes in Computer Science, vol 457. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-53065-7_136

Download citation

  • DOI: https://doi.org/10.1007/3-540-53065-7_136

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-53065-7

  • Online ISBN: 978-3-540-46597-3

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics