This Article 
 Bibliographic References 
 Add to: 
September 1994 (vol. 43 no. 9)
pp. 994-1003

Modern memory systems are composed of several levels of caching. The design of these levels is largely an empirical practice. One highly-effective empirical method is the single-pass method wherein all caches in a broad design space are evaluated in one pass over the trace. Multiprogramming degrades memory system performance since context switching reduces the effectiveness of cache memories. Few single-pass methods exist which account for multiprogramming effects. This paper uses a general model of single-pass algorithms, the recurrence/conflict model, and extends the model for recording the effects due to both voluntary context switches and involuntary context switches. Involuntary context switches are modeled using the distribution of lengths between a reference to an address and the re-reference to the same address. The paper makes the assumptions that involuntary context switches are equally likely to occur between each reference, and that one can independently estimate f/sub CS/, the fraction of a cache's contents flushed between context switches. The case where f/sub CS/=1 is used to measure the effect of worst-case context switch penalty (the susceptibility) of several members of the SPEC89 benchmark set to context switching. Some empirical results of F/sub CS/ are presented to illustrate the case where f/sub CS/>1. The model is validated against its assumptions by comparing its results with more restrictive methods.

[1] R. L. Mattson, J. Gercsei, D. R. Slutz, and I. L. Traiger, "Evalutation techniques for storage hierarchies,"IBM Syst. J., vol. 9, no. 2, pp. 78-117, 1970.
[2] I. L. Traiger and D. R. Slutz, "One-pass techniques for the evaluation of memory hierarchies," IBM Res. Rep. RJ 892, IBM, San Jose, CA, July 1971.
[3] M. D. Hill and A. J. Smith, "Evaluating associativity in CPU caches,"IEEE Trans. Comput., vol. 38, pp. 1612-1630, Dec. 1989.
[4] T. M. Conte and W. W. Hwu, "Single-pass memory system evaluation for multiprogramming workloads," Tech. Rep. CSG-122, Ctr. for Reliable and High-Performance Computing, Univ. of Illinois, Urbana, IL, May 1990.
[5] W.-H. Wang and J.-L. Baer, "Efficient trace-driven simulation methods for cache performance analysis,"ACM Trans. Comput. Sys., vol. 9, pp. 222-241, Aug. 1991.
[6] K. R. Kaplan and R. O. Winder, "Cache-based computer systems,"Computer, vol. 6, pp. 30-36, Mar. 1973.
[7] W. D. Strecker, "Cache memories for PDP-11 family computers," inProc. Third Annu. Conf. Comput. Architecture, 1976, pp. 155- 158.
[8] G. S. Shedler and D. R. Slutz, "Derivation of miss ratios for merged access streams,"IBM J. Res. Develop., vol. 20, pp. 505-517, Sept. 1976.
[9] M. C. Easton, "Computation of cold-start miss ratios,"IEEE Trans. Comput., vol. C-27, pp. 404-408, May 1978.
[10] A. Smith, "Cache Memories,"Computing Surveys, Vol. 14, No. 3, Sept. 1982, pp. 473- 530.
[11] D.W. Clark, "Cache Performance in the VAX 11/780,"ACM Trans. Computer Systems, Vol. 1, No. 1, Feb. 1983, pp. 24-37.
[12] I. J. Haikala, "Cache hit ratios with geometric task switch intervals," inProc. 11th Annu. Int. Symp. Comput. Architecture, vol. 12, no. 3, June 1984, pp. 364-371.
[13] A. Agarwal, J. Hennessy, and M. Horowitz, "Cache performance of operating systems and multiprogramming workloads,"ACM Trans. Comput. Syst., vol. 6, pp. 393-431, Nov. 1988.
[14] D. F. Thiebaut and H. S. Stone, "Footprints in the cache,"ACM Trans. Comput. Syst., vol. 5, no. 4, pp. 305-329, Nov. 1987.
[15] J.C. Mogul and A. Borg, "The Effects of Context Switches on Cache Performance,"Proc. ASPLOS-IV, Apr. 1991, pp. 75-84.
[16] T. M. Conte, "Systematic computer architecture prototyping," Ph.D. dissertation, Dep. Elec. Comput. Eng., Univ. Illinois, Urbana, 1992.
[17] T. M. Conte and W. W. Hwu, "Benchmark characterization,"IEEE Computer, pp. 48-56, Jan. 1991.
[18] "Spec newsletter," SPEC, Fremont, CA, Feb. 1989.
[19] J.S. Emer and D.W. Clark, "A Characterization of Processor Performance in the VAX- 11/780,"Proc. 11th Symp. Computer Architecture, 1984, IEEE Computer Soc. Press, Los Alamitos, Calif., pp. 301-310.
[20] D.W. Clark, P.J. Bannon, and J.B. Keller, "Measuring VAX 8800 Performance with a Histogram Hardware Monitor,"Proc. 15th Int'l Symp. Comp. Arch., IEEE Computer Society Press, Los Alamitos, Calif., May, 1988, pp. 176-185.

Index Terms:
multiprogramming; buffer storage; performance evaluation; memory architecture; program susceptibility; context switching; memory system performance degradation; cache memories; single-pass method; design space; multiprogramming; recurrence/conflict model; voluntary context switches; involuntary context switches; length distribution; address referencing; cache flushing; SPEC89 benchmarks; simulation; memory hierarchy; performance analysis.
W.-m. W. Hwu, T.M. Conte, "Editorial," IEEE Transactions on Computers, vol. 43, no. 9, pp. 994-1003, Sept. 1994, doi:10.1109/12.312110
Usage of this product signifies your acceptance of the Terms of Use.