ACM Home Page
Please provide us with feedback. Feedback
Skipper: a microarchitecture for exploiting control-flow independence
Full text Publisher SitePublisher Site PdfPdf (1.51 MB)
Source International Symposium on Microarchitecture archive
Proceedings of the 34th annual ACM/IEEE international symposium on Microarchitecture table of contents
Austin, Texas
SESSION: Novel ideas table of contents
Pages: 4 - 15  
Year of Publication: 2001
ISBN ~ ISSN:1072-4451 , 0-7695-1369-7
Authors
Chen-Yong Cher  Purdue University
T. N. Vijaykumar  Purdue University
Sponsors
: IEEE TC-MARCH
SIGMICRO: ACM Special Interest Group on Microarchitectural Research and Processing
Publisher
IEEE Computer Society  Washington, DC, USA
Bibliometrics
Downloads (6 Weeks): 2,   Downloads (12 Months): 11,   Citation Count: 15
Additional Information:

abstract   references   cited by   collaborative colleagues  

Tools and Actions: Review this Article  

ABSTRACT

Although modern superscalar processors achieve high branch prediction accuracy, certain branches either are inherently difficult to predict or incur destructive interference in prediction tables, causing significant performance loss due to mispredictions. We propose a novel microarchitecture, called Skipper, to handle such difficult branches by exploiting control-flow independence. Previous approaches to handling difficult branches, one way or another, amount to executing incorrect instructions, squandering cycles and resources such as the i-cache bandwidth. Skipper altogether avoids incorrect instructions by skipping over, without even fetching, the control-flow dependent computation conditioned by a difficult branch. Instead, Skipper fetches and executes the control-flow independent instructions, which are past the point where the branch's taken and not-taken paths reconverge, and which need to be executed irrespective of the branch outcome. Because Skipper executes the correct control-flow dependent instructions after the difficult branch is resolved, it conserves the valuable resources.Skipper is the first proposal to exploit control-flow independence by skipping over control-flow dependent computation in a superscalar pipeline. Skipper fetches the skipped control-flow dependent instructions after the post-reconvergent instructions, out of program order. We describe key mechanisms to implement Skipper without unduly complicating the pipeline despite out-of-order fetch. SPECint95 simulations show that Skipper performs 10% and 8% better than superscalar and the previously-proposed Polypath, respectively, when all three microarchitectures have equal i-cache bandwidth and hardware resources.


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
D. Burger, T. M. Austin, and S. Bennett. Evaluating future microprocessors: the simplescalar tool set. Technical Report CS TR-1308, University of Wisconsin, Madison, July 1996.
5
6
8
 
9
 
10
 
11
12
13
14
 
15
S. McFarling. Combining branch predictors. Technical Report TR-36, DEC-WRL, June 1993.
16
 
17
 
18
19
20
 
21
 
23
24
25

CITED BY  15
Collaborative Colleagues:
Chen-Yong Cher: colleagues
T. N. Vijaykumar: colleagues