The Software-Cache Connection

This paper describes an adaptation of standard Fourier analysis techniques to the study of software-cache interactions. The cache is viewed as a "black box" boolean signal generator, where "ones" correspond to cache misses and "zeros" correspond to cache hits. The spectrum of this time sequence is used to study the dynamic characteristics of complex systems and workloads with minimal a priori knowledge of their internal organization. Line spectra identify tight loops accessing regular data structures, while the overall spectral density reveals the general structure of instruction localities.

[1]  E. Parzen Time Series Analysis Papers , 1967 .

[2]  D. G. Watts,et al.  Spectral analysis and its applications , 1968 .

[3]  John S. Liptay,et al.  Structural Aspects of the System/360 Model 85 II: The Cache , 1968, IBM Syst. J..

[4]  Gerald S. Shedler,et al.  Empirically derived micromodels for sequences of page exceptions , 1973 .

[5]  S. D. Stearns,et al.  Digital Signal Analysis , 1976, IEEE Transactions on Systems, Man, and Cybernetics.

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

[7]  C. Chatfield,et al.  Fourier Analysis of Time Series: An Introduction , 1977, IEEE Transactions on Systems, Man, and Cybernetics.

[8]  R.N. Bracewell,et al.  Signal analysis , 1978, Proceedings of the IEEE.

[9]  Chris Chatfield,et al.  The Analysis of Time Series: An Introduction , 1981 .