Abstract
The improvement of access latency to disks has been significantly lagged behind the rapid technical advancement of other computing resources, such as CPUs, memory bandwidths, and networks. The performance bottleneck of "memory wall" has been shifted to "disk wall" that is a serious bottleneck for many data-intensive applications. One barrier to speedup data accesses in disks is the limited ability of operating systems to exploit "sequential locality" that has a high performance potential --- for the same amount of data, sequential accesses are several orders of magnitude faster than random accesses in disks.
We have designed and built a basic system infrastructure called DiskSeen, which puts the disk layout information on the OS map. With DiskSeen, we are able to exploit dual localities (DULO): temporal locality based on workload execution patterns, and sequential locality in disks. Specifically, we present two new buffer management techniques: DULO-Caching and DULO-Prefetching. DULO-Caching can effectively holds frequently used random accessed data in buffer cache to avoid slow disk accesses, but timely replaces sequentially but not very frequently accessed data to take advantage of fast sequential disk accesses. DULO-Prefetching adaptively preloads sequentially stored data blocks in disks that belong to multiple files to buffer caches, and significantly improve the prefetching efficiency. We have implemented DiskSeen with DULO-Caching and DULO-Prefetching in Linux Kernel version 2.6.11, and evaluated their performance by various data-intensive workloads. We show their effectiveness and low overheads in a practical system environment.
================================ Bio of the Speaker
Xiaodong Zhang is the Robert M. Critchfield Professor in Engineering, and Chairman of the Department of Computer Science and Engineering at the Ohio State University.
His research interests cover a wide spectrum in the areas of high performance and distributed systems. Several technical innovations and research results from his team have been adopted or being developed in commercial products and open source systems with direct impact to some core computing operations, including the permutation memory interleaving technique first in the Sun MicroSystems' UltraSPARC IIIi processor and then in the Sun's dual-core Gemini Processor, the token thrashing protection mechanism and the Clock-Pro page replacement algorithm for memory management in the Linux Kernel and NetBSD.
Xiaodong Zhang was the Director of Advanced Computational Research Program at the National Science Foundation, 2001-2004. He is the associate Editor-in-Chief of IEEE Transactions on Parallel and Distributed Systems, and is also serving on the Editorial Boards of IEEE Transactions on Computers, IEEE Micro, and Journal of Parallel and Distributed Computing.
He received his Ph.D. in Computer Science from University of Colorado at Boulder. |