The Community for Technology Leaders
RSS Icon
Subscribe
Issue No.05 - May (2012 vol.61)
pp: 636-649
Jaehyuk Huh , Dept. of Comput. Sci., Korea Adv. Inst. of Sci. & Technol., Daejeon, South Korea
Jin-Soo Kim , Sch. of Inf. & Commun. Eng., Sung Kyun Kwan Univ., Suwon, South Korea
Dawoon Jung , Samsung Semicond. R&D Center, Samsung Electron., Hwasung, South Korea
Sangwon Seo , Dept. of Comput. Sci., Korea Adv. Inst. of Sci. & Technol., Daejeon, South Korea
Jaehong Kim , Dept. of Comput. Sci., Korea Adv. Inst. of Sci. & Technol., Daejeon, South Korea
ABSTRACT
Solid state disks (SSDs) have many advantages over hard disk drives, including better reliability, performance, durability, and power efficiency. However, the characteristics of SSDs are completely different from those of hard disk drives with rotating disks. To achieve the full potential performance improvement with SSDs, operating systems or applications must understand the critical performance parameters of SSDs to fine-tune their accesses. However, the internal hardware and software organizations vary significantly among SSDs and, thus, each SSD exhibits different parameters which influence the overall performance. In this paper, we propose a methodology which can extract several essential parameters affecting the performance of SSDs, and apply the extracted parameters to SSD systems for performance improvement. The target parameters of SSDs considered in this paper are 1) the size of read/write unit, 2) the size of erase unit, 3) the size of read buffer, and 4) the size of write buffer. We modify two operating system components to optimize their operations with the SSD parameters. The experimental results show that such parameter-aware management leads to significant performance improvements for large file accesses by performing SSD-specific optimizations.
INDEX TERMS
storage management, semiconductor storage, parameter-aware management, parameter-aware I/O management, solid state disks, hard disk drives, rotating disks, operating systems, internal hardware, software organizations, Ash, Random access memory, Computer architecture, Operating systems, Buffer storage, Hard disks, Hardware, and operating systems., Solid state disk(SSD), measurement, storage management
CITATION
Jaehyuk Huh, Jin-Soo Kim, Dawoon Jung, Sangwon Seo, Jaehong Kim, "Parameter-Aware I/O Management for Solid State Disks (SSDs)", IEEE Transactions on Computers, vol.61, no. 5, pp. 636-649, May 2012, doi:10.1109/TC.2011.76
REFERENCES
[1] Samsung Elec., “Samsung SSD,” http://www.samsung.com/ global/business/ semiconductor/products/flash/ssd/2008/ homehome.html, 2009.
[2] R.V. Meter, “Observing the Effects of Multi-Zone Disks,” Proc. USENIX Ann. Technical Conf. (ATC '97), p. 2, 1997.
[3] J. Schindler, J.L. Griffin, C.R. Lumb, and G.R. Ganger, “Track-Aligned Extents: Matching Access Patterns to Disk Drive Characteristics,” Proc. USENIX Conf. File and Storage Technologies (FAST '02), pp. 259-274, 2002.
[4] R.Y. Wang, T.E. Anderson, and D.A. Patterson, “Virtual Log Based File Systems for a Programmable Disk,” Proc. Third Symp. Operating Systems Design and Implementation (OSD '99), pp. 29-43, 1999.
[5] E.K. Lee and R.H. Katz, “An Analytic Performance Model of Disk Arrays,” Proc. ACM SIGMETRICS Conf., pp. 98-109, 1993.
[6] J.-H. Kim, D. Jung, J.-S. Kim, and J. Huh, “A Methodology for Extracting Performance Parameters in Solid State Disks (ssds),” Proc. IEEE/ACM Int'l Symp. Modeling, Analysis, and Simulation of Computer and Telecomm. Systems (MASCOTS '09), pp. 133-143, 2009.
[7] N. Agrawal, V. Prabhakaran, T. Wobber, J.D. Davis, M. Manasse, and R. Panigrahy, “Design Tradeoffs for SSD Performance,” Proc. USENIX Ann. Technical Conf. (ATC '08), pp. 57-70, 2008.
[8] J. Seol, H. Shim, J. Kim, and S. Maeng, “A Buffer Replacement Algorithm Exploiting Multi-Chip Parallelism in Solid State Disks,” Proc. Int'l Conf. Compilers, Architecture, and Synthesis for Embedded Systems (CASE '09 ), pp. 137-146, 2009.
[9] C. Hyun, J. Choi, Y. Oh, D. Lee, E. Kim, and S.H. Noh, “A Performance Model and File System Space Allocation Scheme for SSDs,” Proc. Int'l Symp. Massive Storage Systems and Technologies (MSST '10), pp. 1-6, 2010.
[10] Samsung Elec., “NAND Flash Memory,” http://www.samsung. com/global/business/ semiconductor/products/flashProducts_ NANDFlash.html , 2009.
[11] A. Kawaguchi, S. Nishioka, and H. Motoda, “A Flash-Memory Based File System,” Proc. USENIX Technical Conf., pp. 13-13, 1995.
[12] J. Kim, J.M. Kim, S. Noh, S.L. Min, and Y. Cho, “A Space-Efficient Flash Translation Layer for CompactFlash Systems,” IEEE Trans. Consumer Electronics, pp. 366-375, 2002.
[13] C. Park, P. Talawar, D. Won, M. Jung, J. Im, S. Kim, and Y. Choi, “A High Performance Controller for NAND Flash-Based Solid State Disk (NSSD),” Proc. Non-Volatile Semiconductor Memory Workshop (NVSMW '06), pp. 17-20, 2006.
[14] J.H. Kim, S.H. Jung, and Y.H. Song, “Cost and Performance Analysis of NAND Mapping Algorithms in a Shared-bus Multi-chip Configuration,” Proc. Int'l Workshop Software Support for Portable Storage (IWSSPS '08), pp. 33-39, 2008.
[15] A. Gupta, Y. Kim, and B. Urgaonkar, “DFTL: A Flash Translation Layer Employing Demand-Based Selective Caching of Page-Level Address Mappings,” Proc. ACM Int'l Conf. Architectural Support for Programming Languages and Operating Systems (ASPLOS '09), pp. 229-240, 2009.
[16] J.-U. Kang, H. Jo, J.-S. Kim, and J. Lee, “A Superblock-Based Flash Translation Layer for NAND Flash Memory,” Proc. Int'l Conf. Embedded Software (EMSOFT '06), pp. 161-170, 2006.
[17] Y.-G. Lee, D. Jung, D. Kang, and J.-S. Kim, “$\mu$ -FTL:: A Memory-Efficient Flash Translation Layer Supporting Multiple Mapping Granularities,” Proc. Int'l Conf. Embedded Software (EMSOFT '08), pp. 21-30, 2008.
[18] B.L. Worthington, G.R. Ganger, Y.N. Patt, and J. Wilkes, “On-Line Extraction of SCSI Disk Drive Parameters,” Proc. ACM SIGMETRICS Conf., pp. 146-156, 1995.
[19] P.J. Shenoy and H.M. Vin, “Cello: A Disk Scheduling Framework for Next Generation Operating Systems,” Proc. ACM SIGMETRICS Conf., pp. 44-55, 1998.
[20] B.L. Worthington, G.R. Ganger, and Y.N. Patt, “Scheduling Algorithms for Modern Disk Drives,” Proc. ACM SIGMETRICS Conf., pp. 241-251, 1994.
[21] G.R. Ganger, B.L. Worthington, and Y.N. Patt, “The DiskSim Simulation Environment,” technical report, 1998.
[22] D. Kotz, S.B. Toh, and S. Radhakishnan, “A Detailed Simulation Model of the HP 97560 Disk Drive,” technical report, Dartmouth College, 1994.
[23] C. Ruemmler and J. Wilkes, “An Introduction to Disk Drive Modeling,” Computer, vol. 27, no. 3, 17-28, Mar. 2000.
[24] J. Schindler and G.R. Ganger, “Automated Disk Drive Characterization, CMU,” Technical Report, CMU-CS-99-176, Carnegie Mellon University, Pittsburgh, PA, Dec. 1999.
[25] A.M. Caulfield, L.M. Grupp, and S. Swanson, “Gordon: Using Flash Memory to Build Fast, Power-Efficient Clusters for Data-Intensive Applications,” Proc. ACM Int'l Conf. Architectural Support for Programming Languages and Operating Systems (ASPLOS '09), pp. 217-228, 2009.
[26] A.C. Arpaci-Dusseau and R.H. Arpaci-Dusseau, “Information and Control in Gray-Box Systems,” Proc. ACM Symp. Operating Systems Principles (SOSP '01), pp. 43-56, 2001.
[27] N. Joukov, A. Traeger, R. Iyer, C.P. Wright, and E. Zadok, “Operating System Profiling Via Latency Analysis,” Proc. Symp. Operating Systems Design and Implementation (OSDI '06), pp. 89-102, 2006.
[28] K. Yotov, K. Pingali, and P. Stodghill, “Automatic Measurement of Memory Hierarchy Parameters,” Proc. ACM SIGMETRICS Conf., pp. 181-192, 2005.
[29] T.E. Denehy, J. Bent, F.I. Popovici, A.C. Arpaci-Dusseau, and R.H. Arpaci-Dusseau, “Deconstructing Storage Arrays,” Proc. ACM Int'l Conf. Architectural Support for Programming Languages and Operating Systems (ASPLOS '04), pp. 59-71, 2004.
[30] N. Talagala, R. Arpaci-Dusseau, and D. Patterson, “Micro-Benchmark Based Extraction of Local and Global Disk,” Technical Report, CSD-99-1063, Univ. of California at Berkeley, CA, 2000.
[31] H.S. Gunawi, N. Agrawal, A.C. Arpaci-Dusseau, R.H. Arpaci-Dusseau, and J. Schindler, “Deconstructing Commodity Storage Clusters,” Proc. Int'l Symp. Computer Architecture (ISCA '05), pp. 60-71, 2005.
[32] N.C. Burnett, J. Bent, A.C. Arpaci-Dusseau, and R.H. Arpaci-Dusseau, “Exploiting Gray-Box Knowledge of Buffer-Cache Management,” Proc. USENIX Ann. Technical Conf. (ATC '02), pp. 29-44, 2002.
[33] M. Sivathanu, V. Prabhakaran, F.I. Popovici, T.E. Denehy, A.C. Arpaci-Dusseau, and R.H. Arpaci-Dusseau, “Semantically-Smart Disk Systems,” Proc. USENIX Conf. File and Storage Technologies (FAST '03), pp. 73-88, 2003.
[34] J. Kim, Y. Oh, E. Kim, J. Choi, D. Lee, and S.H. Noh, “Disk Schedulers for Solid State Drivers,” Proc. Int'l Conf. Embedded Software (EMSOFT '09), pp. 295-304, 2009.
[35] D.P. Bovet and M. Cesati, “Understanding the Linux Kernel,” O'Reilly Media Inc., 2005.
[36] S. Iyer and P. Druschel, “Anticipatory Scheduling: A Disk Scheduling Framework to Overcome Deceptive Idleness in Synchronous I/O,” Proc. ACM Symp. Operating Systems Principles (SOSP '01), pp. 117-130, 2001.
[37] J. Katcher, “PostMark: A New File System Benchmark,” http://www.netapp.com/technology/level33022.html , TR3022, 1997.
[38] “FileBench,” http://www.solarisinternals.com/wiki/index.php FileBench, 2011.
18 ms
(Ver 2.0)

Marketing Automation Platform Marketing Automation Tool