The Stack Growth Function: Cache Line Reference Models

To model cache behavior in a multiprogramming environment, it is necessary to know the number of distinct lines referenced in an execution interval. The stack growth function (SGF) relates the mean number of references (or instructions) to the number of distinct lines referenced; it can be viewed as the inverse function of the mean working set size. A fast, one-pass algorithm to compute the SGF for a given referenced string is presented. SGFs measured for some 40 real programs show that a simple exponential model fits the SGFs reasonably well over a range of execution intervals. Parameters of the inverse exponential model are presented for several program mixes and cache line sizes of 32 and 64 bytes. Separate instruction and data SGFs also are examined, and execution interval distribution effects are considered. >

[1]  Jacques Lenfant,et al.  Evaluation sur des modèles de comportement de programme de la taille d'un ensemble de travail , 1974, Symposium on Operating Systems.

[2]  Peter J. Denning,et al.  The working set model for program behavior , 1968, CACM.

[3]  Alan Jay Smith,et al.  Bibliography and reading on CPU cache memories and related topics , 1986, CARN.

[4]  Jeffrey R. Spirn,et al.  Program Behavior: Models and Measurements , 1977 .

[5]  Peter J. Denning,et al.  The Computation and Use of Optimal Paging Curves , 1975 .

[6]  Makoto Kobayashi An Empirical Study of Task Switching Locality in MVS , 1986, IEEE Transactions on Computers.

[7]  Jeffrey Robert Spirn,et al.  Program locality and dynamic memory management. , 1973 .

[8]  Makoto Kobayashi Instruction reference behavior and locality of reference in paging , 1980 .

[9]  William D. Strecker,et al.  Use of the LRU stack depth distribution for simulation of paging behavior , 1977, Commun. ACM.

[10]  Micha Hofri,et al.  On the Working Set Size for the Markov Chain Model of Program Behaviour , 1979, Performance.

[11]  Peter J. Denning,et al.  Properties of the working-set model , 1972, CACM.

[12]  Myron H. MacDougall Instruction-Level Program and Processor Modeling , 1984, Computer.

[13]  Harry Katzan,et al.  Invitation to MVS: Logic and Debugging , 1984 .

[14]  Peter J. Denning,et al.  Working Sets Past and Present , 1980, IEEE Transactions on Software Engineering.

[15]  Jacques Lenfant,et al.  Comparison of the Working Sets and Bounded Locality Intervals of a Program , 1976, Performance.

[16]  Ilkka J. Haikala Cache hit ratios with geometric task switch intervals , 1984, ISCA 1984.

[17]  Ronald Fagin,et al.  Cold-start vs. warm-start miss ratios , 1978, CACM.

[18]  Alan Jay Smith,et al.  Cache Memories , 1982, CSUR.

[19]  Harold S. Stone,et al.  Footprints in the cache , 1986, SIGMETRICS '86/PERFORMANCE '86.