TR-07-7.pdf

``STEP: Sequentiality and Thrashing Detection based Prefetching to 
improve performance of networked storage servers" 
 
Shuang Liang, Song Jiang, and Xiaodong Zhang

Proceedings of the 27th International Conference on Distributed Computing 
Systems (ICDCS'07), Toronto Canada, June 25-29, 2007.  

Abstract

State-of-the-art networked storage servers are equipped
with increasingly powerful computing capability and large
DRAMmemory as storage caches. However, their contribution
to the performance improvement of networked storage
system has become increasingly limited. This is because the
client-side memory sizes are also increasing, which reduces
capacity misses in the client buffer caches as well as access
locality in the storage servers, thus weakening the caching
effectiveness of server storage caches. Proactive caching
in storage servers is highly desirable to reduce cold misses
in clients. We propose an effective way to improve the utilization
of storage server resources through prefetching in
storage servers for clients. In particular, our design well
utilizes two unique strengths of networked storage servers
which are not leveraged in existing storage server prefetching
schemes. First, powerful storage servers have idle CPU
cycles, under-utilized disk bandwidth, and abundant memory
space, providing many opportunities for aggressive disk
data prefetching. Second, the servers have the knowledge
about high-latency operations in storage devices, such as
disk head positioning, which enables efficient disk data
prefetching based on an accurate cost-benefit analysis of
prefetch operations.

We present STEP, a Sequentiality and Thrashing dEtection
based Prefetching scheme, and its implementation with
Linux Kernel 2.6.16. Our performance evaluation by replaying
Storage Performance Council (SPC)'s OLTP traces
shows that server performance improvements are up to 94%
with an average of 25%. Improvements with frequently used
Unix applications are up to 53% with an average of 12%.
Our experiments also show that STEP has little effect on
workloads with random access patterns, such as SPC Web-Search 
traces.