ACM Home Page
Please provide us with feedback. Feedback
A general compiler framework for speculative multithreading
Full text PdfPdf (231 KB)
Source ACM Symposium on Parallel Algorithms and Architectures archive
Proceedings of the fourteenth annual ACM symposium on Parallel algorithms and architectures table of contents
Winnipeg, Manitoba, Canada
SESSION: Session 4 table of contents
Pages: 99 - 108  
Year of Publication: 2002
ISBN:1-58113-529-7
Authors
Anasua Bhowmik  University of Maryland, College Park, MD
Manoj Franklin  University of Maryland, College Park, MD
Sponsors
SIGARCH: ACM Special Interest Group on Computer Architecture
SIGACT: ACM Special Interest Group on Algorithms and Computation Theory
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 9,   Downloads (12 Months): 79,   Citation Count: 14
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/564870.564885
What is a DOI?

ABSTRACT

Speculative multithreading (SpMT) promises to be an effective mechanism for parallelizing non-numeric programs, which tend to use irregular data structures with pointers and have complex flows of control. Proper thread formation is crucial to obtaining good speedup in an SpMT system. This paper presents a compiler framework for partitioning a sequential program into multiple threads for parallel execution in an SpMT system. This framework is very general, and supports a wide variety of threads, such as speculative threads, non-speculative threads, loop-centric threads, and out-of-order thread spawning. The compiler uses profiling, intra-procedural pointer analysis, data dependence information and control dependence information. The compiler is implemented on the SUIF-MachSUIF platform. A simulation-based evaluation of the generated threads shows that an average speedup of 3 can be obtained with 6 processing elements for non-numeric programs. This speedup reduces to 2 if we use only loop-based threads.


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
W. W. Hwu, R. E. Hank,D. M. Gallagher, S. A. Mahlke, D. M. Lavery, G. E. Haab, J. C. Gyllenhaal, and D. I. August, "Compiler Technology for Future Microprocessors", Proc.IEEE, 83(12):1625--1640, December 1995.
 
7
S. Jayashree and S. Vajapeyam, "Exploiting Parallelism across Basic Blocks via Decoupled Control Flow", Technical Report TR No. IISc-CSA-95-01, Dept. of Computer Science and Automation, Indian Institute of Science, March, 1995.
 
8
D. Naishlos, J. Nujman, C.-W. Tseng and U. Vishkin, "Evaluating Multithreading in Prototype XMT Environment", Proc. Workshop on Multi-Threaded Execution, Architecture and Compilation (MTEAC-2000).
 
9
 
10
M. D. Smith and G. Holloway, "An Introduction to Machine SUIF and Its Portable Libraries for
 
11
 
12
 
13
 
14

CITED BY  14

Collaborative Colleagues:
Anasua Bhowmik: colleagues
Manoj Franklin: colleagues