Exploiting Dead Value Information
Exploiting Dead Value Information,
Milo M. Martin, Amir Roth, and Charles Fischer,
In Proceedings of the 30th Annual International Symposium on Microarchitecture, December 1-3, 1997.
Abstract
We describe Dead Value Information (DVI) and introduce three new
optimizations which exploit it. DVI provides assertions that certain
register values are dead, meaning they will not be read before being
overwritten. The processor can use DVI to track dead registers and
dynamically eliminate unnecessary save and restore instructions from
the execution stream at procedure calls and context switches. Our
results indicate that dynamic saves and restore instances can be
reduced by 46% for procedure calls and by 51% for context switches.
In addition, save/restore elimination for procedure calls can improve
overall performance by up to 5%. DVI also allows the processor manage
physical registers to efficiently, reducing the size requirements of
the physical register file. When the system clock rate is
proportional to the register file cycle time, this optimization can
improve performance. All of these optimizations can be supported with
only a few new instructions and minimal additional hardware
structures.
Last Modified: "Thu, Sep 07, 2000, 15:45:34 CDT" by Milo Martin.