ACM Home Page
Please provide us with feedback. Feedback
Combinable memory-block transactions
Full text PdfPdf (467 KB)
Source
ACM Symposium on Parallel Algorithms and Architectures archive
Proceedings of the twentieth annual symposium on Parallelism in algorithms and architectures table of contents
Munich, Germany
SESSION: Special track: multicores table of contents
Pages 23-34  
Year of Publication: 2008
ISBN:978-1-59593-973-9
Authors
Guy E. Blelloch  Carnegie Mellon University, Pittsburgh, PA, USA
Phillip B. Gibbons  Intel Research Pittsburgh, Pittsburgh, PA, USA
S. Harsha Vardhan  Carnegie Mellon University, Pittsburgh, PA, USA
Sponsors
ACM: Association for Computing Machinery
SIGACT: ACM Special Interest Group on Algorithms and Computation Theory
SIGARCH: ACM Special Interest Group on Computer Architecture
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 4,   Downloads (12 Months): 104,   Citation Count: 1
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1378533.1378537
What is a DOI?

ABSTRACT

This paper formalizes and studies combinable memory-block transactions (MBTs). The idea is to encode short programs that operate on a single cache/memory block and then to specify such a program with a memory request. The code is then executed at the cache or memory controller, atomically with respect to other accesses to that block by this or other processors. The combinable form allows combining within the memory system or network. In addition to allowing for the standard set of read-modify-write operations (e.g., test-and-set, compare-and-swap, fetch-and-add), MBTs can be used to define other useful operations--such as a fetch-and-add that does not decrement below zero.

We show how MBTs can be used to design simple and efficient implementations of a variety of protocols and algorithms, including a priority write, a semaphore with a non-blocking P operation, a bounded queue, and a timestamp-based transactional memory system. In all cases the protocols gain some advantage by using MBTs that are different from the standard set of operations. To gain an understanding of the efficiency that can be gained by using combining, we define a notion of bounded contention and show that all our protocols have bounded contention under arbitrary loads.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

1
 
2
G. E. Blelloch, P. Cheng, and P. B. Gibbons. Scalable room synchronizations. Theory Comput. Syst., 36(5):397--430, 2003.
3
4
 
5
 
6
 
7
8
9
10
 
11
IBM T.J. Watson Res. Ctr. System/370 principles of operations. Technical report, IBM, 1983.
 
12
 
13
14
 
15
P. M. Kogge and H. S. Stone. A parallel algorithm for the efficient solution of a general class of recurrence equations. IEEE Trans. on Computers, C--22(8):786--793, 1973.
16
 
17
D. J. Kuck, E. S. Davidson, D. H. Lawrie, and A. H. Sameh. Parallel supercomputing today and the Cedar approach. Science, 231:967--974, 1986.
 
18
J. R. Larus and R. Rajwar. Transactional Memory. Morgan & Claypool Publishers, 2007.
19
 
20
21
22
 
23
G. F. Pfister, W. C. Brantley, D. A. George, S. L. Harvey, W. J. Kleinfelder, K. P. McAuliffe, E. A. Melton, V. A. Norton, and J. Weiss. The IBM Research parallel processor prototype(RP3): Introduction and architecture. In Proc. IEEE Int'l Conf. on Parallel Processing}, pages 764--771, 1985.
 
24
 
25
R. M. Shapiro and R. E. Millstein. Rehability and fault recovery in distributed processing. In Oceans'77 Conf Record, vol II, 1977.
 
26
N. Shavit and D. Touitou. Software transactional memory. Distrib. Comput., 10(2):99--116, 1997.
 
27
Thinking Machines Corporation. Model CM-2 technical summary. Technical Report HA87-4, Thinking Machines Corporation, Cambridge, Massachusetts, 1987.
 
28
R. H. Thomas. A solution to the concurrency control problem for multiple copy databases. In Proc. IEEE COMP-CON Conf., 1978.
 
29
R. K. Treiber. Systems programming: Coping with parallelism. Technical Report RJ 5118, IBM Almaden Research Center, 1986.


Collaborative Colleagues:
Guy E. Blelloch: colleagues
Phillip B. Gibbons: colleagues
S. Harsha Vardhan: colleagues