| | |
Summary: Experience with a Language for Writing Coherence Protocols
Satish Chandra1, Michael Dahlin2, Bradley Richards3, Randolph Y. Wang4
Thomas E. Anderson4
and James R. Larus1
1
University of Wisconsin, Madison
2
University of Texas, Austin
3
Vassar College
4
University of California, Berkeley
Abstract. In this paper we describe our experience with Teapot [7], a domain-specific language for
addressing the cache coherence problem. The cache coherence problem arises when parallel and
distributed computing systems make local replicas of shared data for reasons of scalability and per-
formance. In both distributed shared memory systems and distributed file systems, a coherence pro-
tocol maintains agreement among the replicated copies when the underlying data are modified by
programs running on the system. Unfortunately, cache coherence protocols are notoriously difficult
to implement, debug, and maintain. Furthermore, the details of the protocols depend on the require-
ments of the system under consideration and are highly varied. This paper presents case studies
|