ACM Home Page
Please provide us with feedback. Feedback
POSH: a TLS compiler that exploits program structure
Full text PdfPdf (157 KB)
Source Principles and Practice of Parallel Programming archive
Proceedings of the eleventh ACM SIGPLAN symposium on Principles and practice of parallel programming table of contents
New York, New York, USA
SESSION: Multicore software table of contents
Pages: 158 - 167  
Year of Publication: 2006
ISBN:1-59593-189-9
Authors
Wei Liu  University of Illinois at Urbana-Champaign
James Tuck  University of Illinois at Urbana-Champaign
Luis Ceze  University of Illinois at Urbana-Champaign
Wonsun Ahn  University of Illinois at Urbana-Champaign
Karin Strauss  University of Illinois at Urbana-Champaign
Jose Renau  University of California, Santa Cruz
Josep Torrellas  University of Illinois at Urbana-Champaign
Sponsors
ACM: Association for Computing Machinery
SIGPLAN: ACM Special Interest Group on Programming Languages
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 7,   Downloads (12 Months): 85,   Citation Count: 16
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/1122971.1122997
What is a DOI?

ABSTRACT

As multi-core architectures with Thread-Level Speculation (TLS) are becoming better understood, it is important to focus on TLS compilation. TLS compilers are interesting in that, while they do not need to fully prove the independence of concurrent tasks, they make choices of where and when to generate speculative tasks that are crucial to overall TLS performance.This paper presents POSH, a new, fully automated TLS compiler built on top of gcc. POSH is based on two design decisions. First, to partition the code into tasks, it leverages the code structures created by the programmer, namely subroutines and loops. Second, it uses a simple profiling pass to discard ineffective tasks. With the code generated by POSH, a simulated TLS chip multiprocessor with 4 superscalar cores delivers an average speedup of 1.30 for the SPECint 2000 applications. Moreover, an estimated 26% of this speedup is a result of the implicit data prefetching provided by squashed tasks.


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
P. Dubey, K. O'Brien, K. M. O'Brien, and C. Barton. Single-Program Speculative Multithreading (SPSM) Architecture. In Intl. Conf. on Parallel Architectures and Compilation Techniques (PACT), 1995.
6
7
 
8
 
9
X.-F. Li, Z.-H. Du, Q. Zhao, and T.-F. Ngai. Software Value Prediction for Speculative Parallel Threaded Computations. In First Value Prediction Workshop, pages 18--25, June 2003.
 
10
 
11
D. Novillo. Design and Implementation of the TreeSSA. In Proceedings of the GCC Developer's Summit, June 2004.
 
12
13
 
14
J. Renau, B. Fraguela, J. Tuck, W. Liu, M. Prvulovic, L. Ceze, S. Sarangi, P. Sack, K. Strauss, and P. Montesinos. SESC Simulator, January 2005. http://sesc.sourceforge.net.
15
16
17
 
18
M. Tremblay. MAJC: Microprocessor Architecture for Java Computing. Hot Chips, August 1999.
 
19
 
20
 
21
 
22
 
23
24

CITED BY  16

Collaborative Colleagues:
Wei Liu: colleagues
James Tuck: colleagues
Luis Ceze: colleagues
Wonsun Ahn: colleagues
Karin Strauss: colleagues
Jose Renau: colleagues
Josep Torrellas: colleagues