Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

Exploiting Chip Idleness for Minimizing Garbage Collection—Induced Chip Access Conflict on SSDs

Published: 05 October 2017 Publication History
  • Get Citation Alerts
  • Abstract

    Solid state drives (SSDs) are normally constructed with a number of parallel-accessible flash chips, where host I/O requests are processed in parallel. In addition, there are many internal activities in SSDs, such as garbage collection and wear leveling induced read, write, and erase operations, to solve the issues of inability of in-place updates and limited lifetime. When internal activities are triggered on a chip, the chip will be blocked. Our preliminary studies on several workloads show that when internal activities are frequently triggered, the host I/O performance will be significantly impacted because of the access conflict between them. In this work, in order to improve the access conflict induced performance degradation, a novel access conflict minimization scheme is proposed. The basic idea of the scheme is motivated by an interesting observation in SSDs: several chips are idle when other chips are busy with internal activities and host I/O requests. Based on this observation, we propose to schedule internal activities induced operations for minimized access conflict by exploiting the idleness of the multiple chips of SSDs. This approach is realized by two steps: First, read internal activities accessed data to the controller; second, by exploiting the idle chips during internal activities, write internal activities accessed data back to these idle chips. With this scheme, the internal activities can be processed with minimized access conflict to the host requests. Simulation results show that the proposed approach significantly reduces the access conflict, and in turn leads to a significant performance improvement of SSDs.

    References

    [1]
    Nitin Agrawal, Vijayan Prabhakaran, Ted Wobber, John D. Davis, Mark Manasse, and Rina Panigrahy. 2008. Design tradeoffs for SSD performance. In ATC. 57--70.
    [2]
    John S. Bucy, Jiri Schindler, Steven W. Schlosser, and Gregory R. Ganger. 2008. The disksim simulation environment version 4.0 reference manual. Parallel Data Laboratory (2008), 26.
    [3]
    Li-Pin Chang, Tei-Wei Kuo, and Shi-Wu Lo. 2004. Real-time garbage collection for flash-memory storage systems of real-time embedded systems. TECS 3, 4 (2004), 837--863.
    [4]
    Li-Pin Chang and Chen-Yi Wen. 2014. Reducing asynchrony in channel garbage-collection for improving internal parallelism of multichannel solid-state disks. TECS 13, 2s (2014), 63.
    [5]
    Yuan-Hao Chang, Jen-Wei Hsieh, and Tei-Wei Kuo. 2007. Endurance enhancement of flash-memory storage systems: An efficient static wear leveling design. In DAC. 212--217.
    [6]
    Feng Chen, David A. Koufaty, and Xiaodong Zhang. 2009. Understanding intrinsic characteristics and system implications of flash memory based solid state drives. In ACM SIGMETRICS Performance Evaluation Review, Vol. 37. ACM, 181--192.
    [7]
    Feng Chen, Rubao Lee, and Xiaodong Zhang. 2011a. Essential roles of exploiting internal parallelism of flash memory based solid state drives in high-speed data processing. In HPCA. 266--277.
    [8]
    Feng Chen, Tian Luo, and Xiaodong Zhang. 2011b. CAFTL: A content-aware flash translation layer enhancing the lifespan of flash memory based solid state drives. In FAST, Vol. 11.
    [9]
    Fu-Hsin Chen, Ming-Chang Yang, Yuan-Hao Chang, and Tei-Wei Kuo. 2015. PWL: A progressive wear leveling to minimize data migration overheads for NAND flash devices. In 2015 Design, Automation & Test in Europe Conference & Exhibition. EDA Consortium, 1209--1212.
    [10]
    Zhiguang Chen, Nong Xiao, and Fang Liu. 2012. SAC: Rethinking the cache replacement policy for SSD-based storage systems. In SYSTOR. 13:1--13:12.
    [11]
    Mei-Ling Chiang, Paul C. H. Lee, and Ruei-Chuan Chang. 1999. Using data clustering to improve cleaning performance for flash memory. Software: Practice and Experience 29, 3 (1999), 267--290.
    [12]
    Cagdas Dirik and Bruce Jacob. 2009. The performance of PC solid-state disks (SSDs) as a function of bandwidth, concurrency, device architecture, and system organization. In ACM SIGARCH Computer Architecture News, Vol. 37. 279--289.
    [13]
    Nima Elyasi, Mohammad Arjomand, Anand Sivasubramaniam, Mahmut T. Kandemir, Chita R. Das, and Myoungsoo Jung. 2017. Exploiting intra-request slack to improve SSD performance. In ASPLOS. ACM, 375--388.
    [14]
    Fusionio. 2016. NVMe SSDs. https://www.micron.com/products/solid-state-storage/bus-interfaces/nvme-ssds#/.
    [15]
    Congming Gao, Liang Shi, Cheng Ji, Yejia Di, Kaijie Wu, Chun Jason Xue, and Edwin H.-M. Sha. 2017. Exploiting parallelism for access conflict minimization in flash-based solid state drives. TCAD PP, 99 (2017), 1--1.
    [16]
    Congming Gao, Liang Shi, Mengying Zhao, Chun Jason Xue, Kaijie Wu, and Edwin H.-M. Sha. 2014. Exploiting parallelism in I/O scheduling for access conflict minimization in flash-based solid state drives. In MSST. 1--11.
    [17]
    Aayush Gupta, Youngjae Kim, and Bhuvan Urgaonkar. 2009. DFTL: A Flash Translation Layer Employing Demand-based Selective Caching of Page-level Address Mappings. Vol. 44. ACM.
    [18]
    Bingsheng He, Jeffrey Xu Yu, and Amelie Chi Zhou. 2015. Improving update-intensive workloads on flash disks through exploiting multi-chip parallelism. IEEE Transactions on Parallel and Distributed Systems 26, 1 (2015), 152--162.
    [19]
    Yang Hu, Hong Jiang, Dan Feng, Lei Tian, Hao Luo, and Shuping Zhang. 2011. Performance impact and interplay of SSD parallelism through advanced commands, allocation strategy and data granularity. In ICS. 96--107.
    [20]
    Myoungsoo Jung and Mahmut Kandemir. 2012. An evaluation of different page allocation strategies on high-speed SSDs. In Hotstorage. 9--9.
    [21]
    Myoungsoo Jung, Ramya Prabhakar, and Mahmut Taylan Kandemir. 2012a. Taking garbage collection overheads off the critical path in SSDs. In Middleware. 164--186.
    [22]
    Myoungsoo Jung, Ellis H. Wilson III, and Mahmut Kandemir. 2012b. Physically addressed queueing (PAQ): Improving parallelism in solid state disks. In ISCA. 404--415.
    [23]
    Woon-Hak Kang, Sang-Won Lee, Bongki Moon, Yang-Suk Kee, and Moonwook Oh. 2014. Durable write cache in flash memory SSD for relational and NoSQL databases. In SIGMOD. 529--540.
    [24]
    Hyojun Kim and Seongjun Ahn. 2008. BPLRU: A buffer management scheme for improving random writes in flash storage. In FAST, Vol. 8. 1--14.
    [25]
    Junghee Lee, Youngjae Kim, Galen M. Shipman, Sarp Oral, and Jongman Kim. 2013. Preemptible I/O scheduling of garbage collection for solid state drives. TCAD 32, 2 (2013), 247--260.
    [26]
    Qiao Li, Liang Shi, Chun J. Xue, Kaijie Wu, Cheng Ji, Qingfeng Zhuge, and Edwin H.-M. Sha. 2016. Access characteristic guided read and write cost regulation for performance improvement on flash memory. In FAST. 125.
    [27]
    Bo Mao and Suzhen Wu. 2015. Exploiting request characteristics and internal parallelism to improve SSD performance. In ICCD. IEEE, 447--450.
    [28]
    Changwoo Min, Kangnyeon Kim, Hyunjin Cho, Sang-Won Lee, and Young Ik Eom. 2012. SFS: Random write considered harmful in solid state drives. In FAST. 12--12.
    [29]
    Muthukumar Murugan and David H. C, Du. 2011. Rejuvenator: A static wear leveling algorithm for NAND flash memory with minimized overhead. In MSST. IEEE, 1--12.
    [30]
    Dushyanth Narayanan, Eno Thereska, Austin Donnelly, Sameh Elnikety, and Antony Rowstron. 2009. Migrating server storage to SSDs: Analysis of tradeoffs. In EuroSys. 145--158.
    [31]
    Yangyang Pan, Guiqiang Dong, and Tong Zhang. 2013. Error rate-based wear-leveling for NAND flash memory at highly scaled technology nodes. TVLSI 21, 7 (2013), 1350--1354.
    [32]
    Vijayan Prabhakaran and Ted Wobber. 2009. SSD extension for DiskSim simulation environment. Microsoft Reseach (2009).
    [33]
    Mohit Saxena, Michael M. Swift, and Yiying Zhang. 2012. FlashTier: A lightweight, consistent and durable storage cache. In ACM European Conference on Computer Systems. 267--280.
    [34]
    Narges Shahidi, Mohammad Arjomand, Myoungsoo Jung, Mahmut T. Kandemir, Chita R. Das, and Anand Sivasubramaniam. 2016. Exploring the potentials of parallel garbage collection in SSDs for enterprise storage systems. In Proceedings of the International Conference for High Performance Computing, Networking, Storage and Analysis. IEEE Press, 48.
    [35]
    Liang Shi, Jianhua Li, Chun Jason Xue, Chengmo Yang, and Xuehai Zhou. 2011. ExLRU: A unified write buffer cache management for flash memory. In EMSOFT. 339--348.
    [36]
    Ji-Yong Shin, Zeng-Lin Xia, Ning-Yi Xu, Rui Gao, Xiong-Fei Cai, Seungryoul Maeng, and Feng-Hsiung Hsu. 2009. FTL design exploration in reconfigurable high-performance SSD for server applications. In ICS. 338--349.
    [37]
    Rujia Wang, Lei Jiang, Youtao Zhang, and Jun Yang. 2015. SD-PCM: Constructing reliable super dense phase change memory under write disturbance. In ASPOLS. 19--31.
    [38]
    Wujie Wen, Yaojun Zhang, Mengjie Mao, and Yiran Chen. 2014. State-restrict MLC STT-RAM designs for high-reliable high-performance memory system. In DAC. 1--6.
    [39]
    Wikipedia. 2010. Battery or supercap. https://en.wikipedia.org/wiki/Supercapacitor.
    [40]
    Mai Zheng, Joseph Tucek, Feng Qin, and Mark Lillibridge. 2013. Understanding the robustness of SSDS under power fault. In FAST. 271--284.

    Cited By

    View all
    • (2023)Re-aligning Across-page Requests for Flash-based Solid-state DrivesProceedings of the 52nd International Conference on Parallel Processing10.1145/3605573.3605652(736-745)Online publication date: 7-Aug-2023
    • (2023)ADAR: Application-Specific Data Allocation and Reprogramming Optimization for 3-D TLC Flash MemoryIEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems10.1109/TCAD.2022.321039042:6(1824-1837)Online publication date: 1-Jun-2023
    • (2023)DAC: A dynamic active and collaborative cache management scheme for solid state disksJournal of Systems Architecture10.1016/j.sysarc.2023.102896140(102896)Online publication date: Jul-2023
    • Show More Cited By

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Transactions on Design Automation of Electronic Systems
    ACM Transactions on Design Automation of Electronic Systems  Volume 23, Issue 2
    March 2018
    341 pages
    ISSN:1084-4309
    EISSN:1557-7309
    DOI:10.1145/3149546
    • Editor:
    • Naehyuck Chang
    Issue’s Table of Contents
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Journal Family

    Publication History

    Published: 05 October 2017
    Accepted: 01 July 2009
    Revised: 01 July 2009
    Received: 01 January 2007
    Published in TODAES Volume 23, Issue 2

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. Garbage collection
    2. SSD
    3. access conflicts
    4. chip idleness
    5. parallelism

    Qualifiers

    • Research-article
    • Research
    • Refereed

    Funding Sources

    • National 863 Programs
    • NSFC
    • Fundamental Research Funds for the Central Universities
    • Huawei Innovation Research Program (HIRP)
    • Fundamental Research Funds for Graduate Scientific Research and Innovation Foundation of Chongqing, China

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)29
    • Downloads (Last 6 weeks)1

    Other Metrics

    Citations

    Cited By

    View all
    • (2023)Re-aligning Across-page Requests for Flash-based Solid-state DrivesProceedings of the 52nd International Conference on Parallel Processing10.1145/3605573.3605652(736-745)Online publication date: 7-Aug-2023
    • (2023)ADAR: Application-Specific Data Allocation and Reprogramming Optimization for 3-D TLC Flash MemoryIEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems10.1109/TCAD.2022.321039042:6(1824-1837)Online publication date: 1-Jun-2023
    • (2023)DAC: A dynamic active and collaborative cache management scheme for solid state disksJournal of Systems Architecture10.1016/j.sysarc.2023.102896140(102896)Online publication date: Jul-2023
    • (2022)Delaying Large Write Requests to Trade off I/O Performance and Long-tail Latency in SSDs2022 IEEE 24th Int Conf on High Performance Computing & Communications; 8th Int Conf on Data Science & Systems; 20th Int Conf on Smart City; 8th Int Conf on Dependability in Sensor, Cloud & Big Data Systems & Application (HPCC/DSS/SmartCity/DependSys)10.1109/HPCC-DSS-SmartCity-DependSys57074.2022.00196(1249-1254)Online publication date: Dec-2022
    • (2022)HIPA: A hybrid load balancing method in SSDs for improved parallelism performanceJournal of Systems Architecture10.1016/j.sysarc.2022.102705131(102705)Online publication date: Oct-2022
    • (2021)Low I/O Intensity-aware Partial GC Scheduling to Reduce Long-tail Latency in SSDsACM Transactions on Architecture and Code Optimization10.1145/346043318:4(1-25)Online publication date: 31-Dec-2021
    • (2020)Frequent Access Pattern-based Prefetching Inside of Solid-State Drives2020 Design, Automation & Test in Europe Conference & Exhibition (DATE)10.23919/DATE48585.2020.9116382(720-725)Online publication date: Mar-2020
    • (2020)Boosting the Performance of SSDs via Fully Exploiting the Plane Level ParallelismIEEE Transactions on Parallel and Distributed Systems10.1109/TPDS.2020.298789431:9(2185-2200)Online publication date: 1-Sep-2020
    • (2020)WPA: Write Pattern Aware Hybrid Disk Buffer Management for Improving Lifespan of NAND Flash MemoryIEEE Transactions on Consumer Electronics10.1109/TCE.2020.298161866:2(193-202)Online publication date: May-2020
    • (2020)When Storage Response Time Catches Up with Overall Context Switch Overhead, What is NextIEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems10.1109/TCAD.2020.3012322(1-1)Online publication date: 2020
    • Show More Cited By

    View Options

    Get Access

    Login options

    Full Access

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media