ABSTRACT
This work presents (a) Queenie, an application-level tool that can automatically learn 10 internal properties of block-level SSDs, (b) Kelpie, the learning and analysis results of running Queenie on 21 different SSD models from 7 major SSD vendors, and (c) Newt, a set of storage performance optimization examples that use the learned properties. By bringing numerous observations and unique findings, this work exposes substantial improvement spaces for both SSD users and vendors, enlightening possibilities of unleashing more SSD performance potential and highlighting the necessity of further exploring SSD internals.
- 2018. Open-Channel Solid State Drives Specification. http://lightnvm.io/docs/OCSSD-2_0-20180129.pdf.Google Scholar
- 2019. SOLID STATE DRIVE (SSD) MARKET - GROWTH, TRENDS, AND FORECAST (2019 - 2024). https://www.mordorintelligence.com/industry-reports/solid-state-drive-market.Google Scholar
- 2022. Queenie GitHub Homepage. https://github.com/ucare-uchicago/Queenie.Google Scholar
- Abutalib Aghayev and Peter Desnoyers. 2015. Skylight-A Window on Shingled Disk Operation. In Proceedings of the 13th USENIX Symposium on File and Storage Technologies (FAST).Google ScholarDigital Library
- Nitin Agrawal, Vijayan Prabhakaran, Ted Wobber, John D. Davis, Mark Manasse, and Rina Panigrahy. 2008. Design Tradeoffs for SSD Performance. In Proceedings of the USENIX Annual Technical Conference (ATC).Google Scholar
- Matias Bjørling, Abutalib Aghayev, Hans Holmberg, Aravind Ramesh, Damien Le Moal, Gregory R. Ganger, and George Amvrosiadis. 2021. ZNS: Avoiding the Block Interface Tax for Flash-based SSDs. In Proceedings of the 2021 USENIX Annual Technical Conference (ATC).Google Scholar
- Matias Bjørling, Javier González, and Philippe Bonnet. 2017. LightNVM: The Linux Open-Channel SSD Subsystem. In Proceedings of the 15th Usenix Conference on File and Storage Technologies (Santa clara CA, USA) (FAST'17). USENIX Association, USA, 359--373.Google Scholar
- Simona Boboila and Peter Desnoyers. 2010. Write Endurance in Flash Drives: Measurements and Analysis. In Proceedings of the 8th USENIX Symposium on File and Storage Technologies (FAST).Google ScholarDigital Library
- Simona Boboila and Peter Desnoyers. 2011. Performance Models of Flash-Based Solid-State Drives for Real Workloads. In Proceedings of the 2011 IEEE 27th Symposium on Mass Storage Systems and Technologies (MSST '11). IEEE Computer Society, USA, 1--6.Google ScholarDigital Library
- Zhen Cao, Vasily Tarasov, Hari Prasath Raman, Dean Hildebrand, and Erez Zadok. 2017. On the Performance Variation in Modern Storage Stacks. In Proceedings of the 15th Usenix Conference on File and Storage Technologies (Santa clara, CA, USA) (FAST'17). USENIX Association, USA, 329--343.Google Scholar
- Li-Pin Chang. 2008. Hybrid Solid-State Disks: Combining Heterogeneous NAND Flash in Large SSDs. In Proceedings of the 2008 Asia and South Pacific Design Automation Conference (Seoul, Korea) (ASP-DAC '08). IEEE Computer Society Press, Washington, DC, USA, 428--433.Google ScholarCross Ref
- Feng Chen, Rubao Lee, and Xiaodong Zhang. 2011. Essential Roles of Exploiting Internal Parallelism of Flash Memory Based Solid State Drives in High-speed Data Processing. In Proceedings of the 17th International Symposium on High Performance Computer Architecture (HPCA-17).Google ScholarCross Ref
- John Colgrove, John D. Davis, John Hayes, Ethan L. Miller, Cary Sandvig, Russell Sears, Ari Tamches, Neil Vachharajani, and Feng Wang. 2015. Purity: Building Fast, Highly-Available Enterprise Flash Storage from Commodity Components. In Proceedings of the 2015 ACM SIGMOD International Conference on Management of Data (SIGMOD).Google ScholarDigital Library
- Timothy E. Denehy, John Bent, Florentina I. Popovici, Andrea C. Arpaci-Dusseau, and Remzi H. Arpaci-Dusseau. 2004. Deconstructing Storage Arrays. In Proceedings of the 11th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS XI).Google Scholar
- Peter Desnoyers. 2014. Analytic Models of SSD Write Performance. In ACM Transactions on Storage (TOS).Google Scholar
- Laura M. Grupp, John D. Davis, and Steven Swanson. 2013. The Harey Tortoise: Managing Heterogeneous Write Performance in SSDs. In Proceedings of the 2013 USENIX Annual Technical Conference (ATC).Google Scholar
- Kyuhwa Han, Hyunho Gwak, Dongkun Shin, and Jooyoung Hwang. 2021. ZNS+: Advanced Zoned Namespace Interface for Supporting In-Storage Zone Compaction. In Proceedings of the 15th Symposium on Operating Systems Design and Implementation (OSDI).Google Scholar
- Mingzhe Hao, Huaicheng Li, Michael Hao Tong, Chrisma Pakha, Riza O. Suminto, Cesar A. Stuardo, Andrew A. Chien, and Haryadi S. Gunawi. 2017. MittOS: Supporting Millisecond Tail Tolerance with Fast Rejecting SLO-Aware OS Interface. In Proceedings of the 26th ACM Symposium on Operating Systems Principles (SOSP).Google Scholar
- Mingzhe Hao, Gokul Soundararajan, Deepak Kenchammana-Hosekote, Andrew A. Chien, and Haryadi S. Gunawi. 2016. The Tail at Store: A Revelation from Millions of Hours of Disk and SSD Deployments. In Proceedings of the 14th Usenix Conference on File and Storage Technologies (Santa Clara, CA) (FAST'16). USENIX Association, USA, 263--276.Google Scholar
- Mingzhe Hao, Levent Toksoz, Nanqinqin Li, Edward Edberg Halim, Henry Hoffmann, and Haryadi S. Gunawi. 2020. LinnOS: Predictability on Unpredictable Flash Storage with a Light Neural Network. In Proceedings of the 14th Symposium on Operating Systems Design and Implementation (OSDI).Google Scholar
- Jun He, Sudarsun Kannan, Andrea C. Arpaci-Dusseau, and Remzi H. Arpaci-Dusseau. 2017. The Unwritten Contract of Solid State Drives. In Proceedings of the 2017 EuroSys Conference (EuroSys).Google Scholar
- Seongcheol Hong and Dongkun Shin. 2010. NAND Flash-Based Disk Cache Using SLC/MLC Combined Flash Memory. In 2010 International Workshop on Storage Network Architecture and Parallel I/Os. 21--30.Google Scholar
- Xiao-Yu Hu, Robert Haas, and Eleftheriou Evangelos. 2011. Container Marking: Combining Data Placement, Garbage Collection and Wear Leveling for Flash. In Proceedings of the IEEE International Symposium on Modeling, Analysis, and Simulation of Computer and Telecommunication Systems (MASCOTS).Google ScholarDigital Library
- H. Howie Huang, Shan Li, Alex Szalay, and Andreas Terzis. 2011. Performance Modeling and Analysis of Flash-Based Storage Devices. In Proceedings of the 2011 IEEE 27th Symposium on Mass Storage Systems and Technologies (MSST '11). IEEE Computer Society, USA, 1--11.Google ScholarDigital Library
- Xavier Jimenez, David Novo, and Paolo Ienne. 2014. Wear Unleveling: Improving NAND Flash Lifetime by Balancing Page Endurance. In Proceedings of the 12th USENIX Symposium on File and Storage Technologies (FAST).Google Scholar
- Myoungsoo Jung and Mahmut Kandemir. 2013. Revisiting Widely Held SSD Expectations and Rethinking System-Level Implications. In Proceedings of the ACM SIGMETRICS/International Conference on Measurement and Modeling of Computer Systems (Pittsburgh, PA, USA) (SIGMETRICS '13). Association for Computing Machinery, New York, NY, USA, 203--216.Google ScholarDigital Library
- Jeong-Uk Kang, Jeeseok Hyun, Hyunjoo Maeng,, and Sangyeun Cho. 2014. The Multi-streamed Solid-State Drive. In the 6th Workshop on Hot Topics in Storage and File Systems (HotStorage).Google Scholar
- Jihun Kim, Joonsung Kim, Pyeongsu Park, Jong Kim, and Jangwoo Kim. 2018. SSD Performance Modeling Using Bottleneck Analysis. IEEE Comput. Archit. Lett. 17, 1 (January 2018), 80--83. Google ScholarDigital Library
- Jaeho Kim, Kwanghyun Lim, Youngdon Jung, Sungjin Lee, Changwoo Min, and Sam H. Noh. 2019. Alleviating Garbage Collection Interference Through Spatial Separation in All Flash Arrays. In Proceedings of the 2019 USENIX Annual Technical Conference (ATC).Google Scholar
- Joonsung Kim, Pyeongsu Park, Jaehyung Ahn, Jihun Kim, Jong Kim, and Jangwoo Kim. 2018. SSDcheck: Timely and Accurate Prediction of Irregular Behaviors in Black-Box SSDs. In 51st Annual IEEE/ACM International Symposium on Microarchitecture (MICRO-51).Google Scholar
- Jaehong Kim, Sangwon Seo, Dawoon Jung, Jin-Soo Kim, and Jaehyuk Huh. 2011. Parameter-Aware I/O Management for Solid State Disks (SSDs). In IEEE Transactions on Computers (TC).Google Scholar
- Jae-Hong Kim, Dawoon Jung, Jin-Soo Kim, and Jaehyuk Huh. 2009. A Methodology for Extracting Performance Parameters in Solid State Disks (SSDs). In Proceedings of the IEEE International Symposium on Modeling, Analysis, and Simulation of Computer and Telecommunication Systems (MASCOTS).Google Scholar
- Pradeep Kumar and H. Howie Huang. 2017. Falcon: Scaling IO Performance in Multi-SSD Volumes. In Proceedings of the 2017 USENIX Annual Technical Conference (ATC).Google Scholar
- Sungjin Lee, Ming Liu, Sangwoo Jun, Shuotao Xu, Jihong Kim, and Arvind Arvind. 2016. Application-Managed Flash. In Proceedings of the 14th Usenix Conference on File and Storage Technologies (Santa Clara, CA) (FAST'16). USENIX Association, USA, 339--353.Google Scholar
- Huaicheng Li, Mingzhe Hao, Michael Hao Tong, Swaminathan Sundararaman, Matias Bjørling, and Haryadi S. Gunawi. 2018. The CASE of FEMU: Cheap, Accurate, Scalable and Extensible Flash Emulator. In Proceedings of the 16th USENIX Symposium on File and Storage Technologies (FAST).Google Scholar
- Huaicheng Li, Martin L. Putra, Ronald Shi, Xing Lin, Gregory R. Ganger, and Haryadi S. Gunawi. 2021. IODA: A Host/Device Co-Design for Strong Predictability Contract on Modern Flash Storage. In Proceedings of the 28th ACM Symposium on Operating Systems Principles (SOSP).Google Scholar
- Shan Li and H. Howie Huang. 2010. Black-Box Performance Modeling for Solid-State Drives. In Proceedings of the IEEE International Symposium on Modeling, Analysis, and Simulation of Computer and Telecommunication Systems (MASCOTS).Google Scholar
- Yongkun Li, Patrick P. C. Lee, and John C. S. Lui. 2011. Stochastic Modeling of Large-Scale Solid-State Storage Systems: Analysis, Design Tradeoffs and Optimization. In Proceedings of the 2011 ACM International Conference on Measurement and Modeling of Computer Systems (SIGMETRICS).Google Scholar
- Heiner Litz, Javier Gonzalez, Ana Klimovic, and Christos Kozyrakis. 2022. RAIL: Predictable, Low Tail Latency for NVMe Flash. ACM Trans. Storage 18, 1, Article 5 (jan 2022), 21 pages. Google ScholarDigital Library
- Jian Ouyang, Shiding Lin, Song Jiang, Zhenyu Hou, Yong Wang, and Yuanzheng Wang. 2014. SDF: Software-Defined Flash for Web-Scale Internet Storage System. In Proceedings of the 18th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS).Google ScholarDigital Library
- Torben Kling Petersen and John Bent. 2017. Hybrid Flash Arrays for HPC Storage Systems: An Alternative to Burst Buffers. In IEEE High Performance Extreme Computing Conference (HPEC).Google ScholarCross Ref
- Sergey Platonov. 2018. RAIN: Reinvention of RAID for the World of NVMe. In Flash Memory Summit.Google Scholar
- Jiri Schindler, John Linwood Griffin, Christopher R. Lumb, and Gregory R. Ganger. 2002. Track-Aligned Extents: Matching Access Patterns to Disk Drive Characteristics. In Proceedings of the 1st USENIX Symposium on File and Storage Technologies (FAST).Google Scholar
- Benny Van Houdt. 2013. A Mean Field Model for a Class of Garbage Collection Algorithms in Flash-Based Solid State Drives. In Proceedings of the ACM SIGMETRICS/International Conference on Measurement and Modeling of Computer Systems (Pittsburgh, PA, USA) (SIGMETRICS '13). Association for Computing Machinery, New York, NY, USA, 191--202.Google ScholarDigital Library
- Matthieu Viry. [n.d.]. Compute Natural Breaks in Python (Fisher-Jenks algorithm). https://github.com/mthh/jenkspy.Google Scholar
- Brent Welch and Geoffrey Noer. 2013. Optimizing a Hybrid SSD/HDD HPC Storage System Based on File Size Distributions. In Proceedings of the 29th IEEE Symposium on Massive Storage Systems and Technologies (MSST).Google ScholarCross Ref
- Bruce L. Worthington, Gregory R. Ganger, Yale N. Patt, and John Wilkes. 1995. On Line Extraction of SCSI Disk Drive Parameters. In Proceedings of the 1995 ACM Conference on Measurement and Modeling of Computer Systems (SIGMETRICS).Google ScholarDigital Library
- Kan Wu, Andrea Arpaci-Dusseau, and Remzi Arpaci-Dusseau. 2019. Towards an Unwritten Contract of Intel Optane SSD. In the 11th Workshop on Hot Topics in Storage and File Systems (HotStorage).Google Scholar
- Suzhen Wu, Yanping Lin, Bo Mao, and Hong Jiang. 2016. Garbage Collection Aware Cache Management with Improved Performance for Flash-based SSDs. In Proceedings of the 30th International Conference on Supercomputing (ICS).Google Scholar
- Shiqin Yan, Huaicheng Li, Mingzhe Hao, Michael Hao Tong, Swaminathan Sundararaman, Andrew A. Chien, and Haryadi S. Gunawi. 2017. Tiny-Tail Flash: Near-Perfect Elimination of Garbage Collection Tail Latencies in NAND SSDs. In 15th USENIX Conference on File and Storage Technologies (FAST 17). USENIX Association, Santa Clara, CA, 15--28.Google ScholarDigital Library
- Kamen Yotov, Keshav Pingali, and Paul Stodghill. 2005. Automatic Measurement of Memory Hierarchy Parameters. In Proceedings of the 2005 ACM Conference on Measurement and Modeling of Computer Systems (SIGMETRICS).Google ScholarDigital Library
- Jianquan Zhang, Dan Feng, Jianlin Gao, Wei Tong, Jingning Liu, Yu Hua, Yang Gao, Caihua Fang, Wen Xia, Feiling Fu, and Yaqing Li. 2016. Application-Aware and Software-Defined SSD Scheme for Tencent Large-Scale Storage System. In Proceedings of 22nd IEEE International Conference on Parallel and Distributed Systems (ICPADS).Google ScholarCross Ref
- Aviad Zuck, Philipp Guhring, Tao Zhang, Donald E. Porter, and Dan Tsafrir. 2019. Why and How to Increase SSD Performance Transparency. In The 17th Workshop on Hot Topics in Operating Systems (HotOS XVII).Google ScholarDigital Library
Index Terms
- Fantastic SSD internals and how to learn and use them
Recommendations
CosaFS: A Cooperative Shingle-Aware File System
Special Issue on MSST 2017 and Regular PapersIn this article, we design and implement a cooperative shingle-aware file system, called CosaFS, on heterogeneous storage devices that mix solid-state drives (SSDs) and shingled magnetic recording (SMR) technology to improve the overall performance of ...
Read-Performance Optimization for Deduplication-Based Storage Systems in the Cloud
Data deduplication has been demonstrated to be an effective technique in reducing the total data transferred over the network and the storage space in cloud backup, archiving, and primary storage systems, such as VM (virtual machine) platforms. However, ...
BetrFS: a compleat file system for commodity SSDs
EuroSys '22: Proceedings of the Seventeenth European Conference on Computer SystemsDespite the existence of file systems tailored for flash and over a decade of research into flash file systems, this paper shows that no single Linux file system performs consistently well on a commodity SSD across different workloads. We define a ...
Comments