| Compiler techniques for high performance sequentially consistent java programs |
| Full text |
Pdf
(260 KB)
|
| Source
|
Principles and Practice of Parallel Programming
archive
Proceedings of the tenth ACM SIGPLAN symposium on Principles and practice of parallel programming
table of contents
Chicago, IL, USA
SESSION: Compiling parallel languages
table of contents
Pages: 2 - 13
Year of Publication: 2005
ISBN:1-59593-080-9
|
|
Authors
|
|
Zehra Sura
|
IBM Watson Research Center, Yorktown Heights, NY
|
|
Xing Fang
|
Purdue University, West Lafayette, IN
|
|
Chi-Leung Wong
|
University of Illinois, Urbana, IL
|
|
Samuel P. Midkiff
|
Purdue University, West Lafayette, IN
|
|
Jaejin Lee
|
Seoul National University, Seoul, Korea
|
|
David Padua
|
University of Illinois, Urbana, IL
|
|
| Sponsors |
|
| Publisher |
|
| Bibliometrics |
Downloads (6 Weeks): 9, Downloads (12 Months): 66, Citation Count: 7
|
|
|
ABSTRACT
The rise of Java, C#, and other explicitly parallel languages has increased the importance of compiling for different software memory models. This paper describes co-operating escape, thread structure, and delay set analyses that enable high performance for sequentially consistent programs.We compare the performance of a set of Java programs compiled for sequential consistency (SC) with the performance of the same programs compiled for weak consistency. For SC, we observe a slowdown of 10% on average for an architecture based on the Intel Xeon processor, and 26% on average for an architecture based on the IBM Power3.
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
|
The Java Grande Forum multi-threaded benchmarks. URL: http://www.epcc.ed.ac.uk/javagrande/threads/contents.html.
|
| |
2
|
|
| |
3
|
B. Alpern , C. R. Attanasio , J. J. Barton , M. G. Burke , P. Cheng , J.-D. Choi , A. Cocchi , S. J. Fink , D. Grove , M. Hind , S. F. Hummel , D. Lieber , V. Litvinov , M. F. Mergen , T. Ngo , J. R. Russell , V. Sarkar , M. J. Serrano , J. C. Shepherd , S. E. Smith , V. C. Sreedhar , H. Srinivasan , J. Whaley, The Jalapeño virtual machine, IBM Systems Journal, v.39 n.1, p.211-238, January 2000
|
 |
4
|
|
| |
5
|
Wei-Yu Chen, Arvind Krishnamurthy, and Katherine Yelick. Polynomial-time algorithms for enforcing sequential consistency in SPMD programs with arrays. In Sixteenth Annual Workshop on Languages and Compilers for Parallel Computing, October 2003.
|
| |
6
|
The Standard Performance Evaluation Corporation. SPEC JVM Client98 suite. 1998. URL: http://www.specbench.org/jvm98/jvm98.
|
| |
7
|
The Standard Performance Evaluation Corporation. SPEC JBB 2000 benchmark. 2000. URL: http://www.specbench.org/jbb2000.
|
 |
8
|
Evelyn Duesterwald , Mary Lou Soffa, Concurrency analysis in the presence of procedures using a data-flow framework, Proceedings of the symposium on Testing, analysis, and verification, p.36-48, October 08-10, 1991, Victoria, British Columbia, Canada
[doi> 10.1145/120807.120811]
|
 |
9
|
|
 |
10
|
Chris Gniady , Babak Falsafi , T. N. Vijaykumar, Is SC + ILP = RC?, Proceedings of the 26th annual international symposium on Computer architecture, p.162-171, May 01-04, 1999, Atlanta, Georgia, United States
|
| |
11
|
|
| |
12
|
|
| |
13
|
|
| |
14
|
JavaMemoryModel. Java memory model mailing list. 2003. www.cs.umd.edu/~pugh/java/memoryModel.
|
| |
15
|
|
| |
16
|
|
| |
17
|
Leslie Lamport. How to make a multiprocessor computer that correctly executes multiprocess programs. IEEE Transactions on Computers, C-28(9):690--691, September 1979.
|
| |
18
|
Doug Lea. Concurrency utilities package, precursor to Java specification request (JSR) 166: Concurrency utilities. gee.cs.oswego.edu/dl/concurrency-interest .
|
| |
19
|
|
| |
20
|
|
| |
21
|
Ben Liblit, Alex Aiken, and Katherine Yelick. Type systems for distributed data sharing. In Proceedings of the Tenth International Static Analysis Symposium, 2003.
|
 |
22
|
|
| |
23
|
|
| |
24
|
S. Midkiff and D. Padua. Issues in the compile-time optimization of parallel programs. In Proceedings of the 1990 International Conference on Parallel Processing, Vol. II, pages 105--113, August 1990.
|
| |
25
|
|
 |
26
|
|
 |
27
|
|
 |
28
|
Parthasarathy Ranganathan , Vijay S. Pai , Sarita V. Adve, Using speculative retirement and larger instruction windows to narrow the performance gap between memory consistency models, Proceedings of the ninth annual ACM symposium on Parallel algorithms and architectures, p.199-210, June 23-25, 1997, Newport, Rhode Island, United States
[doi> 10.1145/258492.258512]
|
 |
29
|
|
| |
30
|
|
| |
31
|
Christoph von Praun. Efficient computation of communicator variables for programs with unstructured parallelism. In Seventeenth Annual Workshop on Languages and Compilers for Parallel Computing, September 2004.
|
| |
32
|
K. Yelick, L. Semenzato, G. Pike, C. Miyamoto, B. Liblit, A. Krishnamurthy, P. Hilfinger, S. Graham, D. Gay, P. Colella, and A. Aiken. Titanium: A high-performance Java dialect. In ACM 1998 Workshop on Java for High-Performance Network Computing. ACM SIGPLAN, 1998.
|
CITED BY 7
|
|
Vijay A. Saraswat , Radha Jagadeesan , Maged Michael , Christoph von Praun, A theory of memory models, Proceedings of the 12th ACM SIGPLAN symposium on Principles and practice of parallel programming, March 14-17, 2007, San Jose, California, USA
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|