|
|
|
|
|
Cache DataShould It Be Conservative or Optimistic? |
|
|
|
|
|
|
|
|
|
A good deal of confusion arises in comparing cache miss data rate reports from various manufacturers or designers in new product announcements. There are at least four types of literature describing processor/cache performance: |
|
|
|
|
|
|
|
|
|
1. Technical descriptions of new processors which frequently cite performance data for the ''all in cache" or 100% hit rate environment. This is an attempt to recognize the variability of miss rate across environments, and to give the reader an idea as to the performance of the processor alone, so that the reader may factor in an appropriate cache miss rate. |
|
|
|
|
|
|
|
|
|
2. Marketing performance data. Product announcements, especially those prepared by marketing and sales organizations, are notorious for overstating performance. Data cited are usually the best possible that could ever be experienced (and oftentimes well beyond that). |
|
|
|
|
|
|
|
|
|
3. Benchmark data. This is commonly cited both by users and designers to typify performance experience; but benchmarks are usually small, and rarely invoke significant systems services. Whatever their value in measuring processor performance, benchmark results applied to cache data are usually suspect. Gee et al. [98] report the miss rate for the well-known SPEC benchmark [74]. While the SPEC floating-point results are generally consistent with the DTMR, the SPEC integer benchmarks had a miss rate significantly lower than the DTMR. (See Appendix C.) |
|
|
|
|
|
|
|
|
|
4. Designers' data. If the designer is to make intelligent tradeoffs, conservative and comprehensive data is needed. Certainly, the scope should be well beyond that of benchmark data. |
|
|
|
|
|
|
|
|
|
The purpose of this chapter is to provide designer data. The reader will find other sources that indicate a more optimistic expectation for cache performance for a given size. Of course, in any design situation, before completing the design, the designer wishes to understand the response of the system to stressful environments. If the actual user environment is more benign, so much the better. Moreover, there are several factors that one must carefully consider in using empirical cache data. Each of these factors argues for a conservative approach. |
|
|
|
|
|
|
|
|
|
1. Historically, as memory prices have decreased, memory capacities have increased. This has promoted the use of applications of increasing size. As program size increases, so does its working set. Figure 5.15 indicates the trend over time of reported cache miss rates. |
|
|
|
|
|
|
|
|
|
2. Systems effects, including the effect of the operating system, multiprogramming, and I/O, are rarely adequately accounted for in cache miss projections. Moreover, just as application programs increase in size over time, so also do operating system size and functionality. As the computing environment becomes more sophisticated, its cache miss rate deteriorates. |
|
|
|
|