ACM Home Page
Please provide us with feedback. Feedback
Effective synchronization removal for Java
Full text PdfPdf (820 KB)
Source Conference on Programming Language Design and Implementation archive
Proceedings of the ACM SIGPLAN 2000 conference on Programming language design and implementation table of contents
Vancouver, British Columbia, Canada
Pages: 208 - 218  
Year of Publication: 2000
ISBN:1-58113-199-2
Also published in ...
Author
Erik Ruf  Microsoft Research, Redmond, WA
Sponsors
SIGPLAN: ACM Special Interest Group on Programming Languages
SIGSOFT: ACM Special Interest Group on Software Engineering
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 8,   Downloads (12 Months): 76,   Citation Count: 58
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/349299.349327
What is a DOI?

ABSTRACT

We present a new technique for removing unnecessary synchronization operations from statically compiled Java programs. Our approach improves upon current efforts based on escape analysis, as it can eliminate synchronization operations even on objects that escape their allocating threads. It makes use of a compact, equivalence-class-based representation that eliminates the need for fixed point operations during the analysis. We describe and evaluate the performance of an implementation in the Marmot native Java compiler. For the benchmark programs examined, the optimization removes 100% of the dynamic synchronization operations in single-threaded programs, and 0-99% in multi-threaded programs, at a low cost in additional compilation time and code growth.


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.

 
ACSE99
 
ASU86
BH99
BKMS98
Bla99
BS96
CFRW91
CGS+99
CmH00
CRL99
 
DR96
DR97
 
FKR+00
FRD00
 
GJS96
HH98
 
Rin99
M. Rinard. Personal communication. 1999.
SH97
 
SP81
M. Shark and A. Pnueli. Two approaches to interprocedural data flow analysis. In Program Flow Analysis: Theory and Applications, chapter 7, pages 189-284. Prentice-Hall, 1981.
 
Ste96a
Ste96b
Tse95
WR99

CITED BY  59