Performance Improvement of I/O Subsystems Exploiting the Characteristics of Solid State Drives

  • Byeungkeun Ko
  • Youngjoo Kim
  • Taeseok Kim
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6784)


NAND flash based Solid State Drives (SSDs) have several unique physical characteristics. Since the SSD consists of many NAND flash packages and each package is able to perform its own I/O operation, almost SSDs provide some parallel I/O operations to improve the I/O performance. Unlike hard disks, SSDs do not have data access overhead such as seek time and rotational delay as well as two operations of read and write have asymmetric performances. In this paper, we propose some techniques that could improve the I/O performance by exploiting the characteristics of SSDs. To this end, we first extract the performance parameters in SSDs such as read/write unit and erase unit. And then, the extracted performance parameters are used to configure the file system block size and I/O request size. We also present an efficient I/O scheduling scheme that fully exploits the characteristics of solid state drives: no data access overhead and asymmetric read and write performance. Through implementation on Linux operating systems, we show that the proposed schemes significantly improve the performance of I/O subsystems for solid state drives.


SSD (Solid State Drives) I/O scheduler operating systems 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Agrawal, N., Prabhakaran, V., Wobber, T., Davis, J.D., Manasse, M., Panigrahy, R.: Design Tradeoffs for SSD Performance. In: Annual Technical Conference on USENIX 2008, pp. 57–70 (2008)Google Scholar
  2. 2.
    Kim, J., Oh, Y., Kim, E., Choi, J., Lee, D., Noh, S.H.: Disk Schedulers for Solid State Drivers. In: The Seventh ACM International Conference on Embedded Software, pp. 295–304 (2009)Google Scholar
  3. 3.
    Marcus, D., Narasimha Reddy, A.L.: A New I/O Scheduler for Solid State Devices. Technical Report, TAMU-ECE-2009-02 (2009)Google Scholar
  4. 4.
    Silberschatz, A., Galvin, P.B., Gagne, G.: Operating System Concepts, 8th edn. John Wiley & Sons, Chichester (2008)zbMATHGoogle Scholar
  5. 5.
  6. 6.
  7. 7.
    Kim, J.-H., Jung, D., Kim, J.-S., Huh, J.: A Methodology for Extracting Performance Parameters in Solid State Disks (SSDs). In: Proceedings of MASCOTS 2009, London, United Kingdom (2009)Google Scholar
  8. 8.
    Katcher, J.: Postmark: A New Filesystem Benchmark. Technical Report, TR3022, Network Appliance (1997)Google Scholar
  9. 9.
    Caulfield, A.M., Grupp, L.M., Swanson, S.: Gordon: Using Flash Memory to Build Fast, Power-efficient Clusters for Data-intensive Applications. In: Proceeding of ASPLOS 2009, pp. 217–228 (2009)Google Scholar
  10. 10.
    Kim, J., Seo, S., Jung, D., Kim, J.-S., Huh, J.: Parameter-Aware I/O Management for Solid State Disks (SSDs). IEEE Transactions on Computers (2010)Google Scholar
  11. 11.
    Love, R.: Linux Kernel Development, 3rd edn. Addison-Wesley, London (2010)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Byeungkeun Ko
    • 1
  • Youngjoo Kim
    • 1
  • Taeseok Kim
    • 2
  1. 1.Department of Embedded Software EngineeringKwangwoon UniversitySeoulKorea
  2. 2.Department of Computer EngineeringKwangwoon UniversitySeoulKorea

Personalised recommendations