January 19, 2006

How to Fake 1000 Registers

Trevor Mudge, Department of Electrical Engineering and Computer Science, University of Michigan, Ann Arbor, MI, USA

Abstract: Large numbers of logical registers can improve performance by allowing fast access to multiple subroutine contexts (register windows) and multiple thread contexts (multithreading). Support for both of these together requires a multiplicative number of registers that quickly becomes prohibitive. In this talk we show how to overcome this limitation with the virtual context architecture (VCA), a new register-file architecture that virtualizes logical register contexts. VCA works by treating the physical registers as a cache of a much larger memory-mapped logical register space. Complete contexts, whether activation records or threads, are no longer required to reside in their entirety in the physical register file. A VCA implementation of register windows on a single-threaded machine reduces data cache accesses by 20%, providing the same performance as a conventional machine while requiring one fewer cache port. Using VCA to support multithreading enables a four-thread machine to use half as many physical registers without a significant performance loss. VCA naturally extends to support both multithreading and register windows, providing higher performance with significantly fewer registers than a conventional machine.

About the speaker: Trevor Mudge received a Ph.D. in Computer Science from the University of Illinois, Urbana, in 1977. Since 1977, he has been on the faculty of The University of Michigan, Ann Arbor. For ten years he was the director of the Advanced Computer Architecture Laboratory-a lab of a dozen faculty and about eighty graduate students. He was named the first Bredt Family Professor of Electrical Engineering and Computer Science in 2002. Trevor's research interests include computer architecture, computer-aided design, and compilers. He has chaired thirty two theses in these research areas. He also has a group of graduate students researching these subjects. In collaboration with his graduate students and colleagues he has co-authored 250 research papers.

In addition to his position as a faculty member, Trevor runs Idiot Savants, a chip design consultancy.

His related interests include new technology directions, national policy for higher education in science and technology, and the role of universities in the creation and transfer of ideas in science and technology. Trevor Mudge is a Fellow of the IEEE, a member of the ACM, the IEE, and the British Computer Society.