Drinking from the Firehose – Run-ahead Transfer Prediction
The special provision in conventional out-of-order processors is the branch predictor, which attempts to predict the taken vs. untaken state of conditional branches based on historical behavior of the same branch in earlier executions. Modern predictors achieve 95% accuracy, and large instruction windows can hide top-level cache latency, which together are sufficient for programs like benchmarks that are regular and small. On real-world problems such CPUs can spend a third or more of cycles stalled for code.
The Mill uses a novel prediction mechanism to avoid these problems; it predicts transfers rather than only branches. It can do so for all code, including cold code that has never been executed, running well ahead of execution so as to mask all cache and most memory latency. It needs no area- and power-hungry instruction window, using instead a very short decode pipeline and direct in-order issue and execution. It can use all present and future prediction algorithms, with the same accuracy as any other processor. On those occasions in which prediction is in error, the mispredict penalty is four cycles, a quarter that of superscalar designs. As a result, code stall is a rarity on a Mill, even on large programs with irregular control flow.
The talk describes the prediction mechanism of the Mill and compares it with the conventional approach. The talk is one of a series on the Mill architecture; others can be found at: http://ootbcomp.com/docs.
Speaker: Ivan Goddard, Out-of-the-Box Computing
Tuesday, 11/12/13
Contact:
Website: Click to VisitCost:
FreeSave this Event:
iCalendarGoogle Calendar
Yahoo! Calendar
Windows Live Calendar
Santa Clara Valley IEEE Computer Society
2655 Seely Ave
San Jose, CA 95134
Website: Click to Visit
