ACM Home Page
Please provide us with feedback. Feedback
Sapphire: copying GC without stopping the world
Full text PdfPdf (899 KB)
Source Java Grande Conference archive
Proceedings of the 2001 joint ACM-ISCOPE conference on Java Grande table of contents
Palo Alto, California, United States
Pages: 48 - 57  
Year of Publication: 2001
ISBN:1-58113-359-6
Authors
Richard L. Hudson  Intel Corporation, 2200 Mision College Blvd., Santa Clara, CA
J. Eliot B. Moss  Dept. of Computer Science, Univ. of Massachusetts, Amherst, MA
Sponsor
SIGPLAN: ACM Special Interest Group on Programming Languages
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 2,   Downloads (12 Months): 38,   Citation Count: 16
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

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

ABSTRACT

Many concurrent garbage collection (GC) algorithms have been devised, but few have been implemented and evaluated, particularly for the Java programming language. Sapphire is an algorithm we have devised for concurrent copying GC. Sapphire stresses minimizing the amount of time any given application thread may need to block to support the collector. In particular, Sapphire is intended to work well in the presence of a large number of application threads, on small- to medium-scale shared memory multiprocessors. A specific problem that Sapphire addresses is not stopping all threads while thread stacks are adjusted to account for copied objects (in GC parlance, the “flip” to the new copies).

Sapphire extends previous algorithms, and is most closely related to replicating copying collection, a GC technique in which application threads observe and update primarily the old copies of objects [13]. The key innovations of Sapphire are: (1) the ability to “flip” one thread at a time (changing the thread's view from the old copies of objects to the new copies), as opposed to needing to stop all threads and flip them at the same time; and (2) avoiding a read barrier.


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
3
 
4
5
6
7
8
 
9
10
 
11
 
12
 
13
S. M. Nettles, J. W. O'Toole, D. Pierce, and N. Haines. Replication-based incremental copying collection. In Bekkers and Cohen {4}.
14
 
15
W. Pugh. Semantics of multithreaded java. Available as www.cs.umd.edu/'pugh/java/memoryModel/semantics.pdf Oct. 24 2000.

CITED BY  16

Collaborative Colleagues:
Richard L. Hudson: colleagues
J. Eliot B. Moss: colleagues