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
Preview
Unable to display preview. Download preview PDF.
References
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.
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.
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.
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.
Philip Bitar and Alvin Despain. Multiprocessor cache synchronization. In Proceedings of the 13th International Symposium on Computer Architecture, pages 424–433, 1986.
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.
Greg Byrd. Personal communication regarding talk given by Tom Knight at a workshop on ultra large scale message passing computers, 1987.
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.
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.
In IEEE Computer. Special issue on cache architectures for tightly coupled multi-processors. vol. 23, no.6. IEEE Computer Society, June 1990.
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.
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.
T. Takeshima et.al. A 55ns 16Mb DRAM. In Proceedings of the 1989 IEEE International Solid-State Circuits Conference, pages 246–247, 1989.
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.
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.
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.
Manu Thapar and Bruce Delagi. Design and implementation of a distributed directory cache coherence protocol. Technical report KSL-89-72, Stanford University, 1989.
Manu Thapar and Bruce Delagi. Stanford distributed-directory protocol. IEEE Computer, 23(6):78–80, June 1990.
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.
Author information
Authors and Affiliations
Editor information
Rights 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