Performance comparison and analysis of Linux block I/O schedulers on SSD

A computer system’s one of the slowest operation is disk seek operation. Sending out read and write requests to the block devices such as disks as soon as the request arrives results in poor performance. After performing sorting and merging operations, the operating system kernel issues block I/O requests to a disk for improving the overall system performance. The kernel subsystem to perform scheduling the block I/O requests is named as the I/O scheduler. This paper introduces performance comparison and detailed analyses of Deadline, CFQ, Noop and BFQ block I/O schedulers that are contained in the Linux 4.1x kernel. The tests have been carried out on an SSD block device that is common in hardware combinations of both personal and professional use-case scenarios. The performance of the schedulers has been evaluated in terms of throughput. Each scheduler has advantages in different use-case scenarios and provides better throughput in a suitable environment.

___

R. Love, "The Block I/O Layer," in Linux Kernel Development, Crawfordsville, Indiana, Addison-Wesley, 2010, pp. 290- 304.

F. Chen, R. Lee, and X. Zhang. “Essential roles of exploiting internal parallelism of flash memory based solid state drives in high-speed data processing,” In HPCA’11, San Francisco, CA, 2011.

J. Fusco, "The I/O Scheduler," in The Linux programmer’s toolbox, Upper Saddle River, NJ, Pearson Education, 2007, pp. 282-284.

J. Kim, J. Kim, P. Park, J. Kim and J. Kim, "SSD Performance Modeling Using Bottleneck Analysis," in IEEE Computer Architecture Letters, vol. 17, no. 1, pp. 80- 83, 1 Jan.-June 2018.

S. Mittal and J. S. Vetter, "A Survey of Software Techniques for Using Non- Volatile Memories for Storage and Main Memory Systems," in IEEE Transactions on Parallel and Distributed Systems, vol. 27, no. 5, pp. 1537-1550, 1 May 2016.

K. Shen and S. Park, “FlashFQ: A fair queueing I/O scheduler for flash-based SSDs,” in Proc. USENIX Annu. Tech. Conf. (USENIX ATC), San Jose, CA, USA, Jun. 2013, pp. 67–78.

C. Gao et al., "Exploiting Parallelism for Access Conflict Minimization in Flash- Based Solid State Drives," in IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, vol. 37, no. 1, pp. 168-181, Jan. 2018.

J. Lee, H. Roh and S. Park, "External Mergesort for Flash-Based Solid State Drives," in IEEE Transactions on Computers, vol. 65, no. 5, pp. 1518-1527, 1 May 2016.

W. Wang and T. Xie, “PCFTL: A planecentric flash translation layer utilizing copy-back operations,” IEEE Trans. Parallel Distrib. Syst., vol. 26, no. 12, pp. 3420–3432, Dec. 2015.

B. Mao and S. Wu, “Exploiting request characteristics and internal parallelism to improve SSD performance,” in Proc. 33rd IEEE Int. Conf. Comput. Design (ICCD), NY, USA, Oct. 2015, pp. 447–450.

F. Chen, R. Lee, and X. Zhang, “Essential roles of exploiting internal parallelism of flash memory based solid state drives in high-speed data processing,” in Proc. 17th Int. Conf. High-Perform. Comput. Archit. (HPCA), San Antonio, TX, USA, Feb. 2011, pp. 266–277.

J. Guo, Y. Hu and Bo Mao, "SBIOS: An SSD-based Block I/O Scheduler with improved system performance," 2015 IEEE International Conference on Networking, Architecture and Storage (NAS), Boston, MA, 2015, pp. 357-358.

W. D. Norcott, D. Capps, “Iozone filesystem benchmark,” [Online]. Available: www.iozone.org. [Accessed 4 October 2018].
Sakarya Üniversitesi Fen Bilimleri Enstitüsü Dergisi-Cover
  • ISSN: 1301-4048
  • Yayın Aralığı: Yılda 6 Sayı
  • Başlangıç: 1997
  • Yayıncı: Sakarya Üniversitesi Fen Bilimleri Enstitüsü