skip to main content
Efficient Analysis of Caching SystemsJanuary 1987
1987 Technical Report
Publisher:
  • University of California at Berkeley
  • Computer Science Division 571 Evans Hall Berkeley, CA
  • United States
Published:01 January 1987
Bibliometrics
Skip Abstract Section
Abstract

This dissertation describes innovative techniques for efficiently analyzing a wide variety of cache designs, and uses these techniques to study caching in a network file system. The techniques are significant extensions to the stack analysis technique (Mattson et al., 1970) which computes the read miss ratio for all cache sizes in a single trace-driven simulation. Stack analysis is extended to allow the one-pass analysis of: 1) writes in a write-back cache, including periodic write-back and deletions, important factors in file system cache performance. 2) sub-block or sector caches, including load-forward prefetching. 3) multi-processor caches in a shared-memory system, for an entire class of consistency protocols, including all of the well-known protocols. 4) client caches in a network file system, using a new class of consistency protocols. The techniques are completely general and apply to all levels of memory hierarchy, for processor caches to disk and file system caches. The dissertation also discusses the use of hash table and binary trees within the simulator to further improve performance for some types of traces. Using these techniques, the performance of all cache sizes can be computed in little more than twice the time required to simulate a single cache size, and often in just 10% more time. In addition to resenting techniques, this dissertation also demonstrates their use by studying client caching in a network file system. It first reports the extent of file sharing in a UNIX environment, showing that a few shared files account for two-thirds of all accesses, and nearly half of these are to files which are both read and written. It then studies different cache consistency protocols, write policies, and fetch policies, reporting the miss ratio and file server utilization for each. Four cache consistency protocols are considered: a polling protocol that uses the server for all consistency controls; a protocol designed for single-user files; one designed for read-only files; and one using write-broadcast to maintain consistency. It finds that the choice of consistency protocol has substantial effect on performance; both the read-only and write-broadcast protocols showed half the misses and server load of the polling protocol. The choice of write or fetch policy made a much smaller difference.

Cited By

  1. ACM
    Shi X, Su F, Peir J, Xia Y and Yang Z (2007). CMP cache performance projection, ACM SIGARCH Computer Architecture News, 35:1, (13-20), Online publication date: 1-Mar-2007.
  2. Kelly T (2019). Thin-client Web access patterns, Computer Communications, 25:4, (357-366), Online publication date: 1-Mar-2002.
  3. Kelly T and Reeves D (2019). Optimal Web cache sizing, Computer Communications, 24:2, (163-173), Online publication date: 1-Feb-2001.
  4. ACM
    Hsu W, Smith A and Young H (2001). I/O reference behavior of production database workloads and the TPC benchmarks—an analysis at the logical level, ACM Transactions on Database Systems (TODS), 26:1, (96-143), Online publication date: 1-Mar-2001.
  5. Hsu W, Smith A and Young H (2001). Characteristics of production database workloads and the TPC benchmarks, IBM Systems Journal, 40:3, (781-802), Online publication date: 1-Mar-2001.
  6. Triantafillou P and Neilson C (1997). Achieving Strong Consistency in a Distributed File System, IEEE Transactions on Software Engineering, 23:1, (35-55), Online publication date: 1-Jan-1997.
  7. Gee J and Smith A Evaluation of cache consistency algorithm performance Proceedings of the 4th International Workshop on Modeling, Analysis, and Simulation of Computer and Telecommunications Systems
  8. ACM
    Kim Y, Hill M and Wood D Implementing stack simulation for highly-associative memories Proceedings of the 1991 ACM SIGMETRICS conference on Measurement and modeling of computer systems, (212-213)
  9. ACM
    Kim Y, Hill M and Wood D (2019). Implementing stack simulation for highly-associative memories, ACM SIGMETRICS Performance Evaluation Review, 19:1, (212-213), Online publication date: 2-Jun-1991.
  10. ACM
    Gray C and Cheriton D Leases: an efficient fault-tolerant mechanism for distributed file cache consistency Proceedings of the twelfth ACM symposium on Operating systems principles, (202-210)
  11. ACM
    Gray C and Cheriton D (1989). Leases: an efficient fault-tolerant mechanism for distributed file cache consistency, ACM SIGOPS Operating Systems Review, 23:5, (202-210), Online publication date: 1-Nov-1989.
  12. ACM
    Eggers S, Lazowska E and Lin Y Techniques for the trace-driven simulation of cache performance Proceedings of the 21st conference on Winter simulation, (1042-1046)
Contributors
  • International Business Machines

Recommendations