Characterization of silent stores

The recent discovery that many store instructions are silent creates new opportunities for computer architects. A silent store does not change the state of the system because it writes a value that already exists at the write address, and can safely be eliminated from the dynamic instruction stream. We analyze silent stores in several benchmarks in the context of their high-level source code and explain why they occur. We also introduce the concept of critical silent stores and show that their removal is sufficient for eliminating avoidable writebacks. Finally, we show that frequently occurring stores are highly likely to be silent and that selectively squashing them can drastically reduce the total number of silent stores. This paper explores and illuminates several aspects of store value locality.

[1]  F. Gabbay Speculative Execution based on Value Prediction Research Proposal towards the Degree of Doctor of Sciences , 1996 .

[2]  S. E. Richardson Exploiting trivial and redundant computation , 1993, Proceedings of IEEE 11th Symposium on Computer Arithmetic.

[3]  Samuel P. Harbison An architectural alternative to optimizing compilers , 1982, ASPLOS I.

[4]  Mikko H. Lipasti,et al.  On the value locality of store instructions , 2000, Proceedings of 27th International Symposium on Computer Architecture (IEEE Cat. No.RS00201).

[5]  Mikko H. Lipasti,et al.  Exceeding the dataflow limit via value prediction , 1996, Proceedings of the 29th Annual IEEE/ACM International Symposium on Microarchitecture. MICRO 29.

[6]  BurgerDoug,et al.  The SimpleScalar tool set, version 2.0 , 1997 .

[7]  Antonio González,et al.  Reducing Memory Traffic Via Redundant Store Instructions , 1999, HPCN Europe.

[8]  G.S. Sohi,et al.  Dynamic instruction reuse , 1997, ISCA '97.

[9]  H LipastiMikko,et al.  Value locality and load value prediction , 1996 .

[10]  David A. Patterson,et al.  Computer Architecture: A Quantitative Approach , 1969 .

[11]  Sarita V. Adve,et al.  Shared Memory Consistency Models: A Tutorial , 1996, Computer.

[12]  Andrew W. Appel,et al.  Modern Compiler Implementation in ML , 1997 .

[13]  Brad Calder,et al.  Value profiling , 1997, Proceedings of 30th Annual International Symposium on Microarchitecture.

[14]  Todd M. Austin,et al.  The SimpleScalar tool set, version 2.0 , 1997, CARN.