Early register deallocation mechanisms using checkpointed register files

BaşlıkEarly register deallocation mechanisms using checkpointed register files
Publication TypeJournal Article
Year of Publication2006
AuthorsErgin O, Balkan D, Ponomarev D, Ghose K
JournalIEEE TRANSACTIONS ON COMPUTERS
Volume55
Issue9
Pagination1153-1166
Date PublishedSEP
ISSN0018-9340
Abstract

Modern superscalar microprocessors need sizable register files to support a large number of in-flight instructions for exploiting instruction level parallelism (ILP). An alternative to building large register files is to use a smaller number of registers, but manage them more effectively. More efficient management of registers can also result in higher performance if the reduction of the register file size is not the goal. Traditional register file management mechanisms deallocate a physical register only when the next instruction writing to the same destination architectural register commits. In this paper, we propose several techniques for deallocating physical registers much earlier. Our designs rely on the use of a checkpointed register file (CRF), where a local shadow copy of each bitcell is used to temporarily save the values of the early deallocated registers should they be needed to recover from branch mispredictions or to reconstruct the precise state after exceptions or interrupts. The proposed techniques try to release registers as soon as possible and are more aggressive than the previously proposed schemes for early deallocation of registers.