Title :
Design, Implementation, and Evaluation of a NUMA-Aware Cache for iSCSI Storage Servers
Author :
Yufei Ren ; Tan Li ; Dantong Yu ; Shudong Jin ; Robertazzi, Thomas
Author_Institution :
Dept. of Electr. & Comput. Eng., Stony Brook Univ., Stony Brook, NY, USA
Abstract :
In an iSCSI based storage area network, target hosts serve concurrent I/O requests from initiators to achieve both high throughput and low latency. Existing iSCSI leverages the OS page cache to ensure data sharing and reuse. However, the non-uniform memory access (NUMA) architecture introduces another dimension of complexity, i.e., asymmetric memory access in multi-core and many-core platforms. Within a NUMA platform, an iSCSI target often dispatches an access request with a cache hit to an I/O thread remote to cached data, and thus cannot fully utilize multi-core systems. We encounter this problem in the context of ultra high-speed data transfer between two iSCSI storage systems, during which inferior NUMA remote memory access lags behind available high network bandwidth, and thereby becomes a bottleneck of the entire end-to-end data transfer path. We design a NUMA-aware cache mechanism to align cache memory with local NUMA nodes and threads, and then schedule I/O requests to those threads that are local to the data being accessed. This NUMA-aware solution results in lower access latency and higher system throughput. We implement a cache system within the Linux SCSI target framework, and evaluated it on our NUMA-based iSCSI testbed. Experimental results show the NUMA-aware cache can significantly improve the performance of iSCSI as measured by several benchmark tools and confirm its viability in data intensive applications and real-life workloads.
Keywords :
Linux; cache storage; scheduling; storage area networks; storage management; I/O request scheduling; I/O thread remote; Linux SCSI target framework; NUMA architecture; NUMA-aware cache mechanism; OS page cache; asymmetric memory access; concurrent I/O requests; data reuse; data sharing; end-to-end data transfer path; iSCSI based storage area network; iSCSI storage servers; many-core platform; multi-core platform; nonuniform memory access; operating system; Bandwidth; Instruction sets; Linux; Servers; Storage area networks; Throughput; Non-uniform memory access; internet small computer system interface (iSCSI); multi-core architecture; remote direct memory access; storage area networks;
Journal_Title :
Parallel and Distributed Systems, IEEE Transactions on
DOI :
10.1109/TPDS.2014.2311817