Improving the throughput of small disk requests with proximal I/O


February 13, 2011


 Jiri Schindler, Sandip Shete, and Keith Smith.

This paper introduces proximal I/O, a new technique for improving random disk I/O performance in file systems. 

The key enabling technology for proximal I/O is the ability of disk drives to retire multiple I/Os, spread across dozens of tracks, in a single revolution. Compared to traditional update-in-place or write-anywhere file systems, this technique can provide a nearly seven-fold improvement in random I/O performance while maintaining (near) sequential on-disk layout. This paper quantifies proximal I/O performance and proposes a simple data layout engine that uses a flash memory-based write cache to aggregate random updates until they have sufficient density to exploit proximal I/O. The results show that with cache of just 1% of the overall disk-based storage capacity, it is possible to service 5.3 user I/O requests per revolution for random updates workload. On an aged file system, the layout can sustain serial read bandwidth within 3% of the best case. Despite using flash memory, the overall system cost is just one third of that of a system with the requisite number of spindles to achieve the equivalent number of random I/O operations. 

In Proceedings of the USENIX Conference on File and Storage Technologies 2011 (FAST ’11)


A copy of the paper is attached to this posting. ProximalIO.pdf