loading...
 This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
International Symposium on Code Generation and Optimization (CGO'03)
TEST: A Tracer for Extracting Speculative Threads
San Francisco, California
March 23-March 26
ISBN: 0-7695-1913-X
Michael Chen, Stanford University
Kunle Olukotun, Stanford University
Thread-level speculation (TLS) allows sequential programs to be arbitrarily decomposed into threads that can be safely executed in parallel. A key challenge for TLS processors is choosing thread decompositions that speedup the program. Current techniques for identifying decompositions have practical limitations in real systems. Traditional parallelizing compilers do not work effectively on most integer programs, and software profiling slows down program execution too much for real-time analysis.
Tracer for Extracting Speculative Threads (TEST) is hardware support that analyzes sequential program execution to estimate performance of possible thread decompositions. This hardware is used in a dynamic parallelization system that automatically transforms unmodified, sequential Java programs to run on TLS processors. In this system, the best thread decompositions found by TEST are dynamically recompiled to run speculatively. This paper describes the analysis performed by TEST and presents simulation results demonstrating its effectiveness on real programs. Estimates are also provided that show the tracer requires minimal hardware additions to our speculative chip- multiprocessor (< 1% of the total transistor count) and causes only minor slowdowns to programs during analysis (3-25%).
Citation:
Michael Chen, Kunle Olukotun, "TEST: A Tracer for Extracting Speculative Threads," cgo, pp.301, International Symposium on Code Generation and Optimization (CGO'03), 2003
Usage of this product signifies your acceptance of the Terms of Use.