Icfp: tolerating all-level cache misses in in-order processors
| dc.contributor.author | Hilton, A | |
| dc.contributor.author | Nagarakatte, S | |
| dc.contributor.author | Roth, A | |
| dc.date.accessioned | 2016-02-24T19:33:42Z | |
| dc.date.issued | 2009-04-24 | |
| dc.description.abstract | Growing concerns about power have revived interest in in-order pipelines. In-order pipelines sacrifice single-thread performance. Specifically, they do not allow execution to flow freely around data cache misses. As a result, they have difficulties overlapping independent misses with one another. Previously proposed techniques like Runahead execution and Multipass pipelining have attacked this problem. In this paper, we go a step further and introduce iCFP (in-order Continual Flow Pipeline), an adaptation of the CFP concept to an in-order processor. When iCFP encounters a primary data cache or L2 miss, it checkpoints the register file and transitions into an "advance" execution mode. Miss-independent instructions execute as usual and even update register state. Missdependent instructions are diverted into a slice buffer, un-blocking the pipeline latches. When the miss returns, iCFP "rallies" and executes the contents of the slice buffer, merging miss-dependent state with missindependent state along the way. An enhanced register dependence tracking scheme and a novel store buffer design facilitate the merging process. Cycle-level simulations show that iCFP out-performs Runahead, Multipass, and SLTP, another non-blocking in-order pipeline design. © 2008 IEEE. | |
| dc.identifier.isbn | 9781424429325 | |
| dc.identifier.issn | 1530-0897 | |
| dc.identifier.uri | https://hdl.handle.net/10161/11636 | |
| dc.publisher | IEEE | |
| dc.relation.ispartof | Proceedings - International Symposium on High-Performance Computer Architecture | |
| dc.relation.isversionof | 10.1109/HPCA.2009.4798281 | |
| dc.title | Icfp: tolerating all-level cache misses in in-order processors | |
| dc.type | Conference | |
| duke.contributor.id | Hilton, A|0572100 | |
| pubs.begin-page | 431 | |
| pubs.end-page | 442 | |
| pubs.organisational-group | Computer Science | |
| pubs.organisational-group | Duke | |
| pubs.organisational-group | Electrical and Computer Engineering | |
| pubs.organisational-group | Pratt School of Engineering | |
| pubs.organisational-group | Trinity College of Arts & Sciences | |
| pubs.publication-status | Published |