Home

About

Advanced Search

Browse by Discipline

Scientific Societies

E-print Alerts

Add E-prints

E-print Network
FAQHELPSITE MAPCONTACT US


  Advanced Search  

 
Experience with a Language for Writing Coherence Protocols Satish Chandra 1 , Michael Dahlin 2 , Bradley Richards 3 , Randolph Y. Wang 4
 

Summary: Experience with a Language for Writing Coherence Protocols
Satish Chandra 1 , Michael Dahlin 2 , Bradley Richards 3 , Randolph Y. Wang 4
Thomas E. Anderson 4 and James R. Larus 1
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
detailing the successes and shortcomings of using Teapot for writing coherence protocols in two
distinct systems. The first system, loosely coherent memory (LCM) [15], implements a particular
flavor of distributed shared memory suitable for data­parallel programming. The second system, the
xFS distributed file system [9], implements a high­performance, serverless file system.
Our overall experience with using Teapot has been positive. In particular, Teapot's language fea­

  

Source: Anderson, Tom - Department of Computer Science and Engineering, University of Washington at Seattle

 

Collections: Computer Technologies and Information Sciences