11 research outputs found

    μ΄ˆκ³ μš©λŸ‰ μ†”λ¦¬λ“œ μŠ€ν…Œμ΄λ“œ λ“œλΌμ΄λΈŒλ₯Ό μœ„ν•œ μ‹ λ’°μ„± ν–₯상 및 μ„±λŠ₯ μ΅œμ ν™” 기술

    Get PDF
    ν•™μœ„λ…Όλ¬Έ(박사) -- μ„œμšΈλŒ€ν•™κ΅λŒ€ν•™μ› : κ³΅κ³ΌλŒ€ν•™ 컴퓨터곡학뢀, 2021.8. 김지홍.The development of ultra-large NAND flash storage devices (SSDs) is recently made possible by NAND flash memory semiconductor process scaling and multi-leveling techniques, and NAND package technology, which enables continuous increasing of storage capacity by mounting many NAND flash memory dies in an SSD. As the capacity of an SSD increases, the total cost of ownership of the storage system can be reduced very effectively, however due to limitations of ultra-large SSDs in reliability and performance, there exists some obstacles for ultra-large SSDs to be widely adopted. In order to take advantage of an ultra-large SSD, it is necessary to develop new techniques to improve these reliability and performance issues. In this dissertation, we propose various optimization techniques to solve the reliability and performance issues of ultra-large SSDs. In order to overcome the optimization limitations of the existing approaches, our techniques were designed based on various characteristic evaluation results of NAND flash devices and field failure characteristics analysis results of real SSDs. We first propose a low-stress erase technique for the purpose of reducing the characteristic deviation between wordlines (WLs) in a NAND flash block. By reducing the erase stress on weak WLs, it effectively slows down NAND degradation and improves NAND endurance. From the NAND evaluation results, the conditions that can most effectively guard the weak WLs are defined as the gerase mode. In addition, considering the user workload characteristics, we propose a technique to dynamically select the optimal gerase mode that can maximize the lifetime of the SSD. Secondly, we propose an integrated approach that maximizes the efficiency of copyback operations to improve performance while not compromising data reliability. Based on characterization using real 3D TLC flash chips, we propose a novel per-block error propagation model under consecutive copyback operations. Our model significantly increases the number of successive copybacks by exploiting the aging characteristics of NAND blocks. Furthermore, we devise a resource-efficient error management scheme that can handle successive copybacks where pages move around multiple blocks with different reliability. By utilizing proposed copyback operation for internal data movement, SSD performance can be effectively improved without any reliability issues. Finally, we propose a new recovery scheme, called reparo, for a RAID storage system with ultra-large SSDs. Unlike the existing RAID recovery schemes, reparo repairs a failed SSD at the NAND die granularity without replacing it with a new SSD, thus avoiding most of the inter-SSD data copies during a RAID recovery step. When a NAND die of an SSD fails, reparo exploits a multi-core processor of the SSD controller to identify failed LBAs from the failed NAND die and to recover data from the failed LBAs. Furthermore, reparo ensures no negative post-recovery impact on the performance and lifetime of the repaired SSD. In order to evaluate the effectiveness of the proposed techniques, we implemented them in a storage device prototype, an open NAND flash storage device development environment, and a real SSD environment. And their usefulness was verified using various benchmarks and I/O traces collected the from real-world applications. The experiment results show that the reliability and performance of the ultra-large SSD can be effectively improved through the proposed techniques.λ°˜λ„μ²΄ κ³΅μ •μ˜ λ―Έμ„Έν™”, λ‹€μΉ˜ν™” κΈ°μˆ μ— μ˜ν•΄μ„œ μ§€μ†μ μœΌλ‘œ μš©λŸ‰μ΄ μ¦κ°€ν•˜κ³  μžˆλŠ” λ‹¨μœ„ λ‚Έλ“œ ν”Œλž˜μ‰¬ λ©”λͺ¨λ¦¬μ™€ ν•˜λ‚˜μ˜ λ‚Έλ“œ ν”Œλž˜μ‰¬ 기반 μŠ€ν† λ¦¬μ§€ μ‹œμŠ€ν…œ 내에 수 λ§Žμ€ λ‚Έλ“œ ν”Œλž˜μ‰¬ λ©”λͺ¨λ¦¬ 닀이λ₯Ό μ‹€μž₯ν•  수 μžˆκ²Œν•˜λŠ” λ‚Έλ“œ νŒ¨ν‚€μ§€ 기술둜 인해 ν•˜λ“œλ””μŠ€ν¬λ³΄λ‹€ 훨씬 더 큰 μ΄ˆκ³ μš©λŸ‰μ˜ λ‚Έλ“œ ν”Œλž˜μ‰¬ μ €μž₯μž₯치의 κ°œλ°œμ„ κ°€λŠ₯ν•˜κ²Œ ν–ˆλ‹€. ν”Œλž˜μ‰¬ μ €μž₯μž₯치의 μš©λŸ‰μ΄ 증가할 수둝 μŠ€ν† λ¦¬μ§€ μ‹œμŠ€ν…œμ˜ 총 μ†Œμœ λΉ„μš©μ„ μ€„μ΄λŠ”λ° 맀우 효과적인 μž₯점을 가지고 μžˆμœΌλ‚˜, μ‹ λ’°μ„± 및 μ„±λŠ₯의 μΈ‘λ©΄μ—μ„œμ˜ ν•œκ³„λ‘œ μΈν•΄μ„œ μ΄ˆκ³ μš©λŸ‰ λ‚Έλ“œ ν”Œλž˜μ‰¬ μ €μž₯μž₯μΉ˜κ°€ 널리 μ‚¬μš©λ˜λŠ”λ° μžˆμ–΄μ„œ μž₯μ• λ¬Όλ‘œ μž‘μš©ν•˜κ³  μžˆλ‹€. μ΄ˆκ³ μš©λŸ‰ μ €μž₯μž₯치의 μž₯점을 ν™œμš©ν•˜κΈ° μœ„ν•΄μ„œλŠ” μ΄λŸ¬ν•œ μ‹ λ’°μ„± 및 μ„±λŠ₯을 κ°œμ„ ν•˜κΈ° μœ„ν•œ μƒˆλ‘œμš΄ κΈ°λ²•μ˜ 개발이 ν•„μš”ν•˜λ‹€. λ³Έ λ…Όλ¬Έμ—μ„œλŠ” μ΄ˆκ³ μš©λŸ‰ λ‚Έλ“œκΈ°λ°˜ μ €μž₯μž₯치(SSD)의 문제점인 μ„±λŠ₯ 및 신뒰성을 κ°œμ„ ν•˜κΈ° μœ„ν•œ λ‹€μ–‘ν•œ μ΅œμ ν™” κΈ°μˆ μ„ μ œμ•ˆν•œλ‹€. κΈ°μ‘΄ κΈ°λ²•λ“€μ˜ μ΅œμ ν™” ν•œκ³„λ₯Ό κ·Ήλ³΅ν•˜κΈ° μœ„ν•΄μ„œ, 우리의 κΈ°μˆ μ€ μ‹€μ œ λ‚Έλ“œ ν”Œλž˜μ‰¬ μ†Œμžμ— λŒ€ν•œ λ‹€μ–‘ν•œ νŠΉμ„± 평가 결과와 SSD의 ν˜„μž₯ λΆˆλŸ‰ νŠΉμ„± 뢄석결과λ₯Ό 기반으둜 κ³ μ•ˆλ˜μ—ˆλ‹€. 이λ₯Ό ν†΅ν•΄μ„œ λ‚Έλ“œμ˜ ν”Œλž˜μ‰¬ νŠΉμ„±κ³Ό SSD, 그리고 호슀트 μ‹œμŠ€ν…œμ˜ λ™μž‘ νŠΉμ„±μ„ κ³ λ €ν•œ μ„±λŠ₯ 및 신뒰성을 ν–₯μƒμ‹œν‚€λŠ” μ΅œμ ν™” 방법둠을 μ œμ‹œν•œλ‹€. 첫째둜, λ³Έ λ…Όλ¬Έμ—μ„œλŠ” λ‚Έλ“œ ν”Œλž˜μ‰¬ λΆˆλ‘λ‚΄μ˜ νŽ˜μ΄μ§€λ“€κ°„μ˜ νŠΉμ„±νŽΈμ°¨λ₯Ό 쀄이기 μœ„ν•΄μ„œ 동적인 μ†Œκ±° 슀트레슀 경감 기법을 μ œμ•ˆν•œλ‹€. μ œμ•ˆλœ 기법은 λ‚Έλ“œ λΈ”λ‘μ˜ 내ꡬ성을 늘리기 μœ„ν•΄μ„œ νŠΉμ„±μ΄ μ•½ν•œ νŽ˜μ΄μ§€λ“€μ— λŒ€ν•΄μ„œ 더 적은 μ†Œκ±° μŠ€νŠΈλ ˆμŠ€κ°€ 인가할 수 μžˆλ„λ‘ λ‚Έλ“œ 평가 결과둜 λΆ€ν„° μ†Œκ±° 슀트레슀 경감 λͺ¨λΈμ„ κ΅¬μΆ•ν•œλ‹€. λ˜ν•œ μ‚¬μš©μž μ›Œν¬λ‘œλ“œ νŠΉμ„±μ„ κ³ λ €ν•˜μ—¬, μ†Œκ±° 슀트레슀 경감 κΈ°λ²•μ˜ νš¨κ³Όκ°€ μ΅œλŒ€ν™” 될 수 μžˆλŠ” 졜적의 경감 μˆ˜μ€€μ„ λ™μ μœΌλ‘œ νŒλ‹¨ν•  수 μžˆλ„λ‘ ν•œλ‹€. 이λ₯Ό ν†΅ν•΄μ„œ λ‚Έλ“œ 블둝을 μ—΄ν™”μ‹œν‚€λŠ” μ£Όμš” 원인인 μ†Œκ±° λ™μž‘μ„ 효율적으둜 μ œμ–΄ν•¨μœΌλ‘œμ¨ μ €μž₯μž₯치의 수λͺ…을 효과적으둜 ν–₯μƒμ‹œν‚¨λ‹€. λ‘˜μ§Έλ‘œ, λ³Έ λ…Όλ¬Έμ—μ„œλŠ” κ³ μš©λŸ‰ SSDμ—μ„œμ˜ λ‚΄λΆ€ 데이터 μ΄λ™μœΌλ‘œ μΈν•œ μ„±λŠ₯ μ €ν•˜λ¬Έμ œλ₯Ό κ°œμ„ ν•˜κΈ° μœ„ν•΄μ„œ λ‚Έλ“œ ν”Œλž˜μ‰¬μ˜ μ œν•œλœ μΉ΄ν”Όλ°±(copyback) λͺ…령을 ν™œμš©ν•˜λŠ” μ μ‘ν˜• 기법인 rCPB을 μ œμ•ˆν•œλ‹€. rCPB은 Copyback λͺ…λ Ήμ˜ νš¨μœ¨μ„±μ„ κ·ΉλŒ€ν™” ν•˜λ©΄μ„œλ„ 데이터 신뒰성에 λ¬Έμ œκ°€ 없도둝 λ‚Έλ“œμ˜ λΈ”λŸ­μ˜ λ…Έν™”νŠΉμ„±μ„ λ°˜μ˜ν•œ μƒˆλ‘œμš΄ copyback 였λ₯˜ μ „νŒŒ λͺ¨λΈμ„ κΈ°λ°˜μœΌλ‘œν•œλ‹€. 이에더해, 신뒰성이 λ‹€λ₯Έ λΈ”λŸ­κ°„μ˜ copyback λͺ…령을 ν™œμš©ν•œ 데이터 이동을 λ¬Έμ œμ—†μ΄ κ΄€λ¦¬ν•˜κΈ° μœ„ν•΄μ„œ μžμ› 효율적인 였λ₯˜ 관리 체계λ₯Ό μ œμ•ˆν•œλ‹€. 이λ₯Ό ν†΅ν•΄μ„œ 신뒰성에 문제λ₯Ό 주지 μ•ŠλŠ” μˆ˜μ€€μ—μ„œ copyback을 μ΅œλŒ€ν•œ ν™œμš©ν•˜μ—¬ λ‚΄λΆ€ 데이터 이동을 μ΅œμ ν™” ν•¨μœΌλ‘œμ¨ SSD의 μ„±λŠ₯ν–₯상을 달성할 수 μžˆλ‹€. λ§ˆμ§€λ§‰μœΌλ‘œ, λ³Έ λ…Όλ¬Έμ—μ„œλŠ” μ΄ˆκ³ μš©λŸ‰ SSDμ—μ„œ λ‚Έλ“œ ν”Œλž˜μ‰¬μ˜ 닀이(die) λΆˆλŸ‰μœΌλ‘œ μΈν•œ λ ˆμ΄λ“œ(redundant array of independent disks, RAID) λ¦¬λΉŒλ“œ μ˜€λ²„ν—€λ“œλ₯Ό μ΅œμ†Œν™” ν•˜κΈ°μœ„ν•œ μƒˆλ‘œμš΄ RAID 볡ꡬ 기법인 reparoλ₯Ό μ œμ•ˆν•œλ‹€. ReparoλŠ” SSD에 λŒ€ν•œ ꡐ체없이 SSD의 λΆˆλŸ‰ die에 λŒ€ν•΄μ„œλ§Œ 볡ꡬλ₯Ό μˆ˜ν–‰ν•¨μœΌλ‘œμ¨ 볡ꡬ μ˜€λ²„ν—€λ“œλ₯Ό μ΅œμ†Œν™”ν•œλ‹€. λΆˆλŸ‰μ΄ λ°œμƒν•œ die의 λ°μ΄ν„°λ§Œ μ„ λ³„μ μœΌλ‘œ λ³΅κ΅¬ν•¨μœΌλ‘œμ¨ 볡ꡬ κ³Όμ •μ˜ λ¦¬λΉŒλ“œ νŠΈλž˜ν”½μ„ μ΅œμ†Œν™”ν•˜λ©°, SSD λ‚΄λΆ€μ˜ 병렬ꡬ쑰λ₯Ό ν™œμš©ν•˜μ—¬ λΆˆλŸ‰ die 볡ꡬ μ‹œκ°„μ„ 효과적으둜 λ‹¨μΆ•ν•œλ‹€. λ˜ν•œ die λΆˆλŸ‰μœΌλ‘œ μΈν•œ 물리적 κ³΅κ°„κ°μ†Œμ˜ λΆ€μž‘μš©μ„ μ΅œμ†Œν™” ν•¨μœΌλ‘œμ¨ 볡ꡬ μ΄ν›„μ˜ μ„±λŠ₯ μ €ν•˜ 및 수λͺ…μ˜ κ°μ†Œ λ¬Έμ œκ°€ 없도둝 ν•œλ‹€. λ³Έ λ…Όλ¬Έμ—μ„œ μ œμ•ˆν•œ 기법듀은 μ €μž₯μž₯치 ν”„λ‘œν† νƒ€μž… 및 곡개 λ‚Έλ“œ ν”Œλž˜μ‰¬ μ €μž₯μž₯치 κ°œλ°œν™˜κ²½, 그리고 μ‹€μž₯ SSDν™˜κ²½μ— κ΅¬ν˜„λ˜μ—ˆμœΌλ©°, μ‹€μ œ μ‘μš© ν”„λ‘œκ·Έλž¨μ„ λͺ¨μ‚¬ν•œ λ‹€μ–‘ν•œ 벀트마크 및 μ‹€μ œ I/O νŠΈλ ˆμ΄μŠ€λ“€μ„ μ΄μš©ν•˜μ—¬ κ·Έ μœ μš©μ„±μ„ κ²€μ¦ν•˜μ˜€λ‹€. μ‹€ν—˜ κ²°κ³Ό, μ œμ•ˆλœ 기법듀을 ν†΅ν•΄μ„œ μ΄ˆκ³ μš©λŸ‰ SSD의 μ‹ λ’°μ„± 및 μ„±λŠ₯을 효과적으둜 κ°œμ„ ν•  수 μžˆμŒμ„ ν™•μΈν•˜μ˜€λ‹€.I Introduction 1 1.1 Motivation 1 1.2 Dissertation Goals 3 1.3 Contributions 5 1.4 Dissertation Structure 8 II Background 11 2.1 Overview of 3D NAND Flash Memory 11 2.2 Reliability Management in NAND Flash Memory 14 2.3 UL SSD architecture 15 2.4 Related Work 17 2.4.1 NAND endurance optimization by utilizing page characteristics difference 17 2.4.2 Performance optimizations using copyback operation 18 2.4.3 Optimizations for RAID Rebuild 19 2.4.4 Reliability improvement using internal RAID 20 III GuardedErase: Extending SSD Lifetimes by Protecting Weak Wordlines 22 3.1 Reliability Characterization of a 3D NAND Flash Block 22 3.1.1 Large Reliability Variations Among WLs 22 3.1.2 Erase Stress on Flash Reliability 26 3.2 GuardedErase: Design Overview and its Endurance Model 28 3.2.1 Basic Idea 28 3.2.2 Per-WL Low-Stress Erase Mode 31 3.2.3 Per-Block Erase Modes 35 3.3 Design and Implementation of LongFTL 39 3.3.1 Overview 39 3.3.2 Weak WL Detector 40 3.3.3 WAF Monitor 42 3.3.4 GErase Mode Selector 43 3.4 Experimental Results 46 3.4.1 Experimental Settings 46 3.4.2 Lifetime Improvement 47 3.4.3 Performance Overhead 49 3.4.4 Effectiveness of Lowest Erase Relief Ratio 50 IV Improving SSD Performance Using Adaptive Restricted- Copyback Operations 52 4.1 Motivations 52 4.1.1 Data Migration in Modern SSD 52 4.1.2 Need for Block Aging-Aware Copyback 53 4.2 RCPB: Copyback with a Limit 55 4.2.1 Error-Propagation Characteristics 55 4.2.2 RCPB Operation Model 58 4.3 Design and Implementation of rcFTL 59 4.3.1 EPM module 60 4.3.2 Data Migration Mode Selection 64 4.4 Experimental Results 65 4.4.1 Experimental Setup 65 4.4.2 Evaluation Results 66 V Reparo: A Fast RAID Recovery Scheme for Ultra- Large SSDs 70 5.1 SSD Failures: Causes and Characteristics 70 5.1.1 SSD Failure Types 70 5.1.2 SSD Failure Characteristics 72 5.2 Impact of UL SSDs on RAID Reliability 74 5.3 RAID Recovery using Reparo 77 5.3.1 Overview of Reparo 77 5.4 Cooperative Die Recovery 82 5.4.1 Identifier: Parallel Search of Failed LBAs 82 5.4.2 Handler: Per-Core Space Utilization Adjustment 83 5.5 Identifier Acceleration Using P2L Mapping Information 89 5.5.1 Page-level P2L Entrustment to Neighboring Die 90 5.5.2 Block-level P2L Entrustment to Neighboring Die 92 5.5.3 Additional Considerations for P2L Entrustment 94 5.6 Experimental Results 95 5.6.1 Experimental Settings 95 5.6.2 Experimental Results 97 VI Conclusions 109 6.1 Summary 109 6.2 Future Work 111 6.2.1 Optimization with Accurate WAF Prediction 111 6.2.2 Maximizing Copyback Threshold 111 6.2.3 Pre-failure Detection 112λ°•

    Fourth NASA Goddard Conference on Mass Storage Systems and Technologies

    Get PDF
    This report contains copies of all those technical papers received in time for publication just prior to the Fourth Goddard Conference on Mass Storage and Technologies, held March 28-30, 1995, at the University of Maryland, University College Conference Center, in College Park, Maryland. This series of conferences continues to serve as a unique medium for the exchange of information on topics relating to the ingestion and management of substantial amounts of data and the attendant problems involved. This year's discussion topics include new storage technology, stability of recorded media, performance studies, storage system solutions, the National Information infrastructure (Infobahn), the future for storage technology, and lessons learned from various projects. There also will be an update on the IEEE Mass Storage System Reference Model Version 5, on which the final vote was taken in July 1994

    Prefetching and Caching Techniques in File Systems for Mimd Multiprocessors

    Get PDF
    The increasing speed of the most powerful computers, especially multiprocessors, makes it difficult to provide sufficient I/O bandwidth to keep them running at full speed for the largest problems. Trends show that the difference in the speed of disk hardware and the speed of processors is increasing, with I/O severely limiting the performance of otherwise fast machines. This widening access-time gap is known as the β€œI/O bottleneck crisis.” One solution to the crisis, suggested by many researchers, is to use many disks in parallel to increase the overall bandwidth. \par This dissertation studies some of the file system issues needed to get high performance from parallel disk systems, since parallel hardware alone cannot guarantee good performance. The target systems are large MIMD multiprocessors used for scientific applications, with large files spread over multiple disks attached in parallel. The focus is on automatic caching and prefetching techniques. We show that caching and prefetching can transparently provide the power of parallel disk hardware to both sequential and parallel applications using a conventional file system interface. We also propose a new file system interface (compatible with the conventional interface) that could make it easier to use parallel disks effectively. \par Our methodology is a mixture of implementation and simulation, using a software testbed that we built to run on a BBN GP1000 multiprocessor. The testbed simulates the disks and fully implements the caching and prefetching policies. Using a synthetic workload as input, we use the testbed in an extensive set of experiments. The results show that prefetching and caching improved the performance of parallel file systems, often dramatically

    Galley: A New Parallel File System for Parallel Applications

    Get PDF
    Most current multiprocessor file systems are designed to use multiple disks in parallel, using the high aggregate bandwidth to meet the growing I/O requirements of parallel scientific applications. Most multiprocessor file systems provide applications with a conventional Unix-like interface, allowing the application to access those multiple disks transparently. This interface conceals the parallelism within the file system, increasing the ease of programmability, but making it difficult or impossible for sophisticated application and library programmers to use knowledge about their I/O to exploit that parallelism. In addition to providing an insufficient interface, most current multiprocessor file systems are optimized for a different workload than they are being asked to support. In this work we examine current multiprocessor file systems, as well as how those file systems are used by scientific applications. Contrary to the expectations of the designers of current parallel file systems, the workloads on those systems are dominated by requests to read and write small pieces of data. Furthermore, rather than being accessed sequentially and contiguously, as in uniprocessor and supercomputer workloads, files in multiprocessor file systems are accessed in regular, structured, but non-contiguous patterns. Based on our observations of multiprocessor workloads, we have designed Galley, a new parallel file system that is intended to efficiently support realistic scientific multiprocessor workloads. In this work, we introduce Galley and discuss its design and implementation. We describe Galley\u27s new three-dimensional file structure and discuss how that structure can be used by parallel applications to achieve higher performance. We introduce several new data-access interfaces, which allow applications to explicitly describe the regular access patterns we found to be common in parallel file system workloads. We show how these new interfaces allow parallel applications to achieve tremendous increases in I/O performance. Finally, we discuss how Galley\u27s new file structure and data-access interfaces can be useful in practice

    Clusterfile: a parallel file system for clusters

    Get PDF

    Supercomputing Frontiers

    Get PDF
    This open access book constitutes the refereed proceedings of the 6th Asian Supercomputing Conference, SCFA 2020, which was planned to be held in February 2020, but unfortunately, the physical conference was cancelled due to the COVID-19 pandemic. The 8 full papers presented in this book were carefully reviewed and selected from 22 submissions. They cover a range of topics including file systems, memory hierarchy, HPC cloud platform, container image configuration workflow, large-scale applications, and scheduling

    A Fast Approach to Scale Up Disk Arrays With Parity Declustered Data Layout by Minimizing Data Migration

    No full text
    corecore