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'05)
Reactive Techniques for Controlling Software Speculation
San Jose, California
March 20-March 23
ISBN: 0-7695-2298-X
Craig Zilles, University of Illinois at Urbana-Champaign
Naveen Neelakantam, University of Illinois at Urbana-Champaign
Aggressive software speculation holds significant potential, because it enables program transformations to reduce the program's critical path. Like any form of speculation, however, the key to software speculation is employing it only where it is likely to succeed. While mechanisms for controlling hardware speculation (e.g., saturating counters updated after each instance) are well understood, these techniques do not translate directly to software techniques because changing a speculation requires changing the code. As it stands, the dominant software speculation control technique, non-reactive profile-guided optimization, lacks the robustness to support aggressive speculation.
The primary thesis of this paper is that software speculation can be made to be robust by adding a reactive controller that can dynamically adjust the speculation. We make two primary observations about such systems: 1) reactive control systems can select behaviors on which to speculate with performance that equals or exceeds self-training, and 2) such control systems are remarkably latency tolerant. Although reactivity is required, it can be done at a low frequency; latencies of hundreds of thousands, or even millions of cycles, can be tolerated for most actions. Together these two characteristics imply that robust aggressive software speculation is a realistic goal.
Citation:
Craig Zilles, Naveen Neelakantam, "Reactive Techniques for Controlling Software Speculation," cgo, pp.305-316, International Symposium on Code Generation and Optimization (CGO'05), 2005
Usage of this product signifies your acceptance of the Terms of Use.