This Article 
 Bibliographic References 
 Add to: 
Synthetic Traces for Trace-Driven Simulation of Cache Memories
April 1992 (vol. 41 no. 4)
pp. 388-410

Two techniques for producing synthetic address traces that produce good emulations of the locality of reference of real programs are presented. The first algorithm generates synthetic addresses by simulating a random walk in an infinite address-space with references governed by a hyperbolic probability law. The second algorithm is a refinement of the first in which the address space has a given finite size. The basic model for the random walk has two parameters that correspond to the working set size and the locality of reference. By comparing synthetic traces with real traces of identical locality parameters, it is demonstrated that synthetic traces exhibit miss ratios and lifetime functions that compare well with those of the real traces they mimic, both in fully associative and in set-associative memories.

[1] A. Batson, "Program behavior at the symbolic level,"IEEE Comput. Mag., vol. 9, pp. 21-26, Nov. 1976.
[2] L. A. Belady and C. J. Kuehner, "Dynamic space sharing in computer system,"Commun. ACM, vol. 12, pp. 282-288, May 1969.
[3] A. Borg, R.E. Kessler, and D.W. Wall, "Generation and Analysis of Very Long Address Traces,"Proc. 17th Int'l Symp. Computer Architecture, May 1990, IEEE CS Press, Los Alamitos, Calif. Order No. 2047, pp. 270-279.
[4] R. B. Bunt, J. M. Murphy, and S. Majumdar, "A measure of program locality and its application,"Perform. Eval. Rev., vol. 12, no. 3, pp. 28-40, Aug. 1984.
[5] P. J. Denning, "The working set model for program behavior,"Commun. ACM, vol. 11, no. 5, pp. 323-333, May 1968.
[6] P. J. Denning and S. C. Schwartz, "Properties of the working-set model,"Commun. ACM, vol. 15, no. 3, pp. 191-198, Mar. 1972.
[7] P. J. Denning and K. C. Kahn, "A study of programs locality and lifetime functions," inProc. 5th ACM SIGOPS Symp., Austin, TX, Nov. 1975, pp. 207-216.
[8] P. J. Denning, "Optimal multiprogrammed memory management," inCurrent Trends in Programming Methodology, III, K. Chandy and Raymond Yeh, Eds. Englewood Cliffs, NJ: Prentice-Hall, 1978, pp. 282-322.
[9] D. Ferrari, "On the foundation of artificial workload design,"Perf. Eval. Rev., pp. 8-14, Aug. 1984.
[10] D. Ferrari, "A generative model of working set dynamics,"Commun. ACM, 1987.
[11] J. E. Gillis and G. H. Weiss, "Expected number of distinct sites visited by a random walk with an infinite variance,"J. Math. Phys., vol. 11, no. 4, pp. 1307-1312, Apr. 1970.
[12] S. C. Hora, "Estimation of the inverse function for random variate generation,"Commun. ACM, vol. 26, no. 8, pp. 590-594, Aug. 1983.
[13] P. Heidelberger and S. S. Lavenberg, "Computer performance evaluation,"IEEE Trans. Comput., vol. C-33, pp. 1195-1220, Dec. 1984.
[14] M. D. Hill, and A. J. Smith, "Evaluating associativity in CPU caches,"IEEE Trans. Comput., vol. C-38, pp. 1612-1630, Dec. 1989.
[15] IBM MVS/Extended Architecture Overview, IBM Manual GC28-1348, 1984.
[16] M. G. Kendall, "The bibliography of operational research,"Operational Res. Quart., vol. 11, no. 1/2, pp. 31-36, Mar. 1960.
[17] D. E. Knuth,The Art of Computer Programming, Vol. 2, Seminumerical Algorithms. Reading, MA: Addison-Wesley, 1981.
[18] M. Kobayashi and M. MacDougall, "The stack growth function: Cache line reference models,"IEEE Trans. Comput., vol. 38, pp. 789-805, June 1989.
[19] Madison and A. Batson, "Characteristics of program localities," inProc. 5th ACM Symp. Oper. Syst. Principles, Nov. 1975.
[20] R. L. Mattson, J. Gecsei, D. R. Slutz, and I. L. Traiger, "Evaluation techniques for storage hierarchies,"IBM Syst. J., vol. 9, pp. 78-117, 1970.
[21] V. Pareto,Cours d'Economie Politique. Reprinted as a volume ofOeuvres Completes, Geneva: Droz. 1965.
[22] J. Rodriguez-Resell, "Empirical data reference behavior in data base systems,"IEEE Comput. Mag., vol. 9, pp. 9-13, Nov. 1976.
[23] G. S. Shedler and C. Tung, "Locality in page reference strings,"SIAM J. Comput., vol. 1, no. 3, pp. 218-241, Sept. 1972.
[24] J. P. Singh, H. S. Stone, and D. Thiébaut, "An analytical model for fully associative cache memories," IBM Res. Rep. RC 14232, Nov. 1988.
[25] A. Smith, "Cache Memories,"Computing Surveys, Vol. 14, No. 3, Sept. 1982, pp. 473- 530.
[26] J. R. Spirn,Program Behavior: Models and Measurements, Operating and programming systems series. New York, Elsevier, 1976.
[27] J. R. Spirn, "Distance string model for program behavior,"IEEE Comput. Mag., vol. 9, pp. 14-20, Nov. 1976.
[28] D. Thiébaut, "Influence of program transients in computer cache memories, Ph.D. dissertation, Univ. of Massachusetts, Amherst, MA, Feb. 1988.
[29] D. Thiébaut, "On the fractal dimension of computer programs and its application to the computation of the cache miss-ratio,"IEEE Trans. Comput., vol. 38, pp. 1012-1026, July 1989.
[30] W. S. Wong and R. J. T. Morris, "Benchmark synthesis using the LRU cache hit function,"IEEE Trans. Comput., vol. 37, pp. 637-645, June 1988.

Index Terms:
trace-driven simulation; cache memories; synthetic address traces; random walk; infinite address-space; synthetic traces; buffer storage; content-addressable storage; digital simulation; memory architecture.
D. Thiebaut, J.L. Wolf, H.S. Stone, "Synthetic Traces for Trace-Driven Simulation of Cache Memories," IEEE Transactions on Computers, vol. 41, no. 4, pp. 388-410, April 1992, doi:10.1109/12.135552
Usage of this product signifies your acceptance of the Terms of Use.