The Sprite network file system caches files in main memory on both servers and clients. A simple cache consistency mechanism flushes portions of caches and disables caching for files that are being write-shared to guarantee file system consistency. A unique feature of the caches is that they vary dynamically in size with virtual memory demand. The paper discusses these design decisions and then reports on a series of benchmarks that illustrate the performance effects on server utilization, network load, and client response. A client can access data in its own cache 6-8 times faster than in a server's cache.
Clients can access a server's cache at about the same speed as a local disk.
Thus, a large server cache may well provide better performance than a local disk, especially as servers' processing speeds increase faster than disk performance. When main memory caching is used, diskless clients have almost the same performance as clients with disks. This result should become more significant as increasing memory sizes make large memory caches on workstations practical and cheap. This implies that Ethernet performance will be adequate for current workstations as well as for those built with the next generation of processors before higher-performance networks become critical. The major limitation in Sprite is its poor crash recovery.