Architectural Techniques for Improving NAND Flash Memory Reliability Yixin Luo

Total Page:16

File Type:pdf, Size:1020Kb

Architectural Techniques for Improving NAND Flash Memory Reliability Yixin Luo Architectural Techniques for Improving NAND Flash Memory Reliability Yixin Luo CMU-CS-18-101 March 2018 School of Computer Science Carnegie Mellon University Pittsburgh, PA 15213 Thesis Committee Onur Mutlu, Chair Phillip B. Gibbons James C. Hoe Yu Cai, SK Hynix Erich F. Haratsch, Seagate Technology Submitted in partial fulfillment of the requirements for the degree of Doctor of Philosophy. Copyright c 2018 Yixin Luo This research was sponsored by Samsung, Qualcomm, AMD, the Oracle Software Engineering Innovation Foun- dation, Facebook, and the National Science Foundation under grant numbers CCF-0953246, CNS-1065112, CNS- 1320531, and CNS-1409723. The views and conclusions contained in this document are those of the author and should not be interpreted as representing the official policies, either expressed or implied, of any sponsoring institution, the U.S. government or any other entity. Keywords: Flash Memory, NAND Flash Memory, 3D NAND Flash Memory, Solid-state Drives (SSD), Nonvolatile Memory (NVM), Integrated Circuit Reliability, Error Characteriza- tion, Error Mitigation, Error Correction, Error Recovery, Data Recovery, Process Variation, Data Retention, Memory Systems, Memory Controllers, Data Storage Systems, Fault Tolerance, Com- puter Architecture Abstract Over the past decade, NAND flash memory has rapidly grown in popularity within modern computing systems, thanks to its short random access latency, high internal parallelism, low static power consumption, and small form factor. Today, NAND flash memory is widely used as the primary storage medium for smartphones, personal laptops, and data center servers. This growth in flash memory popularity has been sustained by the decreasing cost per bit of NAND flash memory devices over each technology generation, which is due to the increased storage density. The higher density, however, comes at a cost of reduced storage reliability. Unreliable primary data storage could lead to permanent loss of valuable data. Thus, we must improve NAND flash memory reliability to prevent data loss. Existing techniques to keep NAND flash memory reliable are costly. For exam- ple, a strong error correcting code (ECC), such as low-density parity-check (LDPC) code, is typically used to tolerate up to a relatively high raw bit error rate (e.g., 3 2 between 10− and 10− ) from the flash memory. However, such ECC requires sig- nificant redundancy, high latency, and high area overhead in today’s designs. To tolerate more errors in future generations of NAND flash memories, a stronger ECC is needed, which requires an even larger amount of data redundancy, latency and area overhead than the ECC used in today’s flash memory. Such ECC is not only very costly, but it also may not be as effective as other novel techniques that are spe- cialized for different error types. Our goal in this dissertation is to greatly improve flash memory reliability at low cost. We identify three opportunities to improve the cost-efficiency of flash reliability enhancement techniques. First, we can adapt the flash controller to various NAND flash memory error characteristics, or even to the error characteristics of each indi- vidual flash chip. Second, we can adapt the flash controller to how the host uses the NAND flash memory, e.g., application access patterns and environmental tempera- ture. Third, the flash chips are typically managed by a powerful controller within the Solid-State Drive (SSD). This powerful computing resource is underutilized when the SSD is idle or when the workload has low access intensity. We can use the flash controller to optimize flash reliability in the background without capacity or performance loss. To exploit these opportunities in improving flash memory reliability, the main thesis of our approach is to specialize the flash controller algorithms to the device and workload characteristics, rather than using powerful but expensive generic error tolerance techniques such as ECC. In this dissertation, we (1) develop a new under- standing of the NAND flash memory error characteristics and the workload behavior through rigorous experimental characterization, and (2) design smart flash controller algorithms based on this new understanding to improve flash reliability at low cost. To this end, we make four major contributions. First, we propose a new technique called WARM to improve flash memory life- time. The key idea is to identify and exploit the write-hotness of the workload in the flash controller in order to improve flash reliability. We show that existing write- hotness agnostic techniques lead to redundant refresh operations that degrade flash lifetime. WARM manages write-hot data and write-cold data differently, and effec- tively improves flash lifetime with low hardware and performance overhead. Second, we propose a new framework to learn an online flash channel model that predicts the underlying threshold voltage distribution of each flash chip. The threshold voltage distribution decides the error characteristics of the flash chip and changes over time due to flash memory wearout. We show that existing analytical threshold voltage distribution models are unsuitable for online flash channel model- ing, as they are either inaccurate or expensive to compute. We show that Student’s t-distribution and the power law distribution can be used to model the static and dy- namic (changing) behavior of the threshold voltage distribution with high accuracy and low latency. We also show that a variety of existing techniques can be tuned using this online model to improve flash memory lifetime. Third, we perform the first detailed, comprehensive characterization and analy- sis of 3D NAND flash memory errors. Through this analysis, we identify three new error characteristics in 3D NAND flash memory due to its unique structure and cell design. We develop models for two of the new error characteristics that are signifi- cant in current-generation 3D NAND flash chips. We develop four new mechanisms within the flash controller to mitigate the three new error types, and thus greatly reduce the error rate, at low cost. Fourth, we perform the first experimental characterization of the self-recovery effect on 3D NAND flash memory and show that dwell time, i.e., the idle time be- tween write cycles, and temperature significantly impact retention loss speed and program accuracy. We develop a new unified model of these effects, called the Unified self-Recovery and Temperature model (URT). Using this model, we pro- pose a new technique called HeatWatch to mitigate errors due to early retention loss in 3D NAND flash memory. HeatWatch reduces the raw bit error rate by tuning the read reference voltages to the dwell time of the workload and the operating tempera- ture of the flash memory. We show that HeatWatch efficiently tracks the temperature and dwell time of NAND flash memory and greatly mitigates retention errors in 3D NAND flash memory using this information. Overall, this dissertation (1) deepens the understanding of the error characteris- tics of both planar and 3D NAND flash memory through rigorous experimental char- acterization and, (2) develops new flash controller algorithms that improve NAND flash memory reliability (both lifetime and error rate) at low cost by taking advan- tage of the flash device and workload characteristics that we find based on our new understandings. iv Acknowledgments First of all, I would like to thank my adviser, Onur Mutlu, for always trusting me to do good work, encouraging me whenever a paper gets rejected, giving me enough resources and opportunities to do great research, and pushing me to keep improving my presentation and writing skills. I am grateful to Saugata Ghose, Yu Cai, and Erich Haratsch for being both my mentors and collaborators. I am grateful to the members of my PhD committee: Phillip Gibbons and James Hoe for their valuable feedback and for making the final steps towards my PhD very smooth. I am grateful to Deb Cavlovich who allowed me to focus on my research by magically solving all other problems. I am grateful to SAFARI group members that were more than just lab mates. Saugata Ghose was not only a great mentor and collaborator to me who helped me improve in all aspects, but also a great friend who was always available for help. Hongyi Xin was like a big brother to me who was always supportive and gave me kind advice that kept me on track during my early struggles, and was never dis- appointing to have a fun discussion with about bioinformatics or history. Rachata Ausavarungnirun was a fantastic cook and was always kind to share his delicious food that reminded me of my grandmother’s cooking. Donghyuk Lee encouraged me when it was most needed, and taught me his highest work ethic and kindness by example. Justin Meza helped me improve my writing and presentation skills during my early years in a very friendly manner. Chris Fallin was kind and patient enough to share his wisdom and time for insightful research discussions, which helped to improve my research skills. Kevin Chang was a perfect role model for me to fol- low, who also happened to share similar hobbies with me. Yoongu Kim pushed me to work harder and keep improving my research, and set a high standard for the group in terms of quality of research, writing, and presentation. Vivek Seshadri, Gennady Pekhimenko, Samira Khan were always eager to share valuable research and career advice. Kevin Hsieh was a great roommate at the PDL Retreat, and was always friendly to chat with. Amirali Boroumand was a nice buddy until he cold- bloodedly left us for nicer weather in California. I also thank other members of the SAFARI group for their assistance and support: Yang Li, Nandita Vijaykumar, Jamie Liu, HanBin Yoon, Ben Jaiyen, Damla Senol, Arash Tavakkol, Minesh Patel, and Jeremie Kim. During my time at Carnegie Mellon, I met a lot of wonderful people: Haox- ian Chen, Yan Gu, Yihan Sun, Yu Zhao, Yong He, Yanzhe Yang, Junchen Jiang, Xuezhi Wang, Abutalib Aghayev, Jin Kyu Kim, Joy Arulraj, Lin Ma, Michael Zhang, Huanchen Zhang, Jinliang Wei, Dominic Chen, Guangshuo Liu, Junyan Zhu, Tianshi Li, Jiyuan Zhang, and many others who helped and supported me in many different ways.
Recommended publications
  • Increasing Reliability and Fault Tolerance of a Secure Distributed Cloud Storage
    Increasing reliability and fault tolerance of a secure distributed cloud storage Nikolay Kucherov1;y, Mikhail Babenko1;yy, Andrei Tchernykh2;z, Viktor Kuchukov1;zz and Irina Vashchenko1;yz 1 North-Caucasus Federal University,Stavropol,Russia 2 CICESE Research Center,Ensenada,Mexico E-mail: [email protected], [email protected], [email protected], [email protected], [email protected] Abstract. The work develops the architecture of a multi-cloud data storage system based on the principles of modular arithmetic. This modification of the data storage system allows increasing reliability of data storage and fault tolerance of the cloud system. To increase fault- tolerance, adaptive data redistribution between available servers is applied. This is possible thanks to the introduction of additional redundancy. This model allows you to restore stored data in case of failure of one or more cloud servers. It is shown how the proposed scheme will enable you to set up reliability, redundancy, and reduce overhead costs for data storage by adapting the parameters of the residual number system. 1. Introduction Currently, cloud services, Google, Amazon, Dropbox, Microsoft OneDrive, providing cloud storage, and data processing services, are gaining high popularity. The main reason for using cloud products is the convenience and accessibility of the services offered. Thanks to the use of cloud technologies, it is possible to save financial costs for maintaining and maintaining servers for storing and securing information. All problems arising during the storage and processing of data are transferred to the cloud provider [1]. Distributed infrastructure represents the conditions in which competition for resources between high-priority computing tasks of data analysis occurs regularly [2].
    [Show full text]
  • And Intra-Set Write Variations
    i2WAP: Improving Non-Volatile Cache Lifetime by Reducing Inter- and Intra-Set Write Variations 1 2 1,3 4 Jue Wang , Xiangyu Dong ,YuanXie , Norman P. Jouppi 1Pennsylvania State University, 2Qualcomm Technology, Inc., 3AMD Research, 4Hewlett-Packard Labs 1{jzw175,yuanxie}@cse.psu.edu, [email protected], [email protected], [email protected] Abstract standby power, better scalability, and non-volatility. For example, among many ReRAM prototype demonstrations Modern computers require large on-chip caches, but [11, 14, 21–25], a 4Mb ReRAM macro [21] can achieve a the scalability of traditional SRAM and eDRAM caches is cell size of 9.5F 2 (15X denser than SRAM) and a random constrained by leakage and cell density. Emerging non- read/write latency of 7.2ns (comparable to SRAM caches volatile memory (NVM) is a promising alternative to build with similar capacity). Although its write access energy is large on-chip caches. However, limited write endurance is usually on the order of 10pJ per bit (10X of SRAM write a common problem for non-volatile memory technologies. energy, 5X of DRAM), the actual energy saving comes from In addition, today’s cache management might result in its non-volatility property. Non-volatility can eliminate the unbalanced write traffic to cache blocks causing heavily- standby leakage energy, which can be as high as 80% of the written cache blocks to fail much earlier than others. total energy consumption for an SRAM L2 cache [10]. Unfortunately, existing wear-leveling techniques for NVM- Given the potential energy and cost saving opportunities based main memories cannot be simply applied to NVM- (via reducing cell size) from the adoption of non-volatile based on-chip caches because cache writes have intra-set technologies, replacing SRAM and eDRAM with them can variations as well as inter-set variations.
    [Show full text]
  • Improving Performance and Reliability of Flash Memory Based Solid State Storage Systems
    Improving Performance And Reliability Of Flash Memory Based Solid State Storage Systems A dissertation submitted to the Graduate School of the University of Cincinnati in partial fulfillment of the requirements for the degree of Doctor of Philosophy in Computer Science and Engineering in the Department of Electrical Engineering and Computing Systems of the College of Engineering and Applied Science by Mingyang Wang 2015 B.E. University of Science and Technology Beijing, China Committee: Professor Yiming Hu, Chair Professor Kenneth Berman Professor Karen Davis Professor Wen-Ben Jone Professor Carla Purdy Abstract Flash memory based Solid State Disk systems (SSDs) are becoming increasingly popular in enterprise applications where high performance and high reliability are paramount. While SSDs outperform traditional Hard Disk Drives (HDDs) in read and write operations, they pose some unique and serious challenges to I/O and file system designers. The performance of an SSD has been found to be sensitive to access patterns. Specifically read operations perform much faster than write ones, and sequential accesses deliver much higher performance than random accesses. The unique properties of SSDs, together with the asymmetric overheads of different operations, imply that many traditional solutions tailored for HDDs may not work well for SSDs. The close relation between performance overhead and access patterns motivates us to design a series of novel algorithms for I/O scheduler and buffer cache management. By exploiting refined access patterns such as sequential, page clustering, block clustering in a per-process per- file manner, a series of innovative algorithms on I/O scheduler and buffer cache can deliver higher performance of the file system and SSD devices.
    [Show full text]
  • Configuring Oracle Solaris ZFS for an Oracle Database
    An Oracle White Paper May 2010 Configuring Oracle® Solaris ZFS for an Oracle Database Oracle White Paper—Configuring ZFS for an Oracle Database Disclaimer The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle. Oracle White Paper—Configuring ZFS for an Oracle Database Configuring Oracle Solaris ZFS for an Oracle Database 1 Overview 1 Planning Oracle Solaris ZFS for Oracle Database Configuration 2 Configuring Oracle Solaris ZFS File Systems for an Oracle Database 5 Configuring Your Oracle Database on Oracle Solaris ZFS File Systems 10 Maintaining Oracle Solaris ZFS File Systems for an Oracle Database 11 Oracle White Paper—Configuring ZFS for an Oracle Database Configuring Oracle Solaris ZFS for an Oracle Database This document provides planning information and step-by-step instructions for configuring and maintaining Oracle Solaris ZFS file systems for an Oracle database. • Planning Oracle Solaris ZFS for Oracle Database Configuration • Configuring Oracle Solaris ZFS File Systems for an Oracle Database • Configuring Your Oracle Database on Oracle Solaris ZFS File Systems • Maintaining Oracle Solaris ZFS File Systems for an Oracle Database Overview A large number of enterprise customers today run an Oracle relational database on top of storage arrays with different sophistication levels and many customers would like to take advantage of the Oracle Solaris ZFS file system.
    [Show full text]
  • PC-Based Data Acquisition II Data Streaming to a Storage Device
    FYS3240 PC-based instrumentation and microcontrollers PC-based data acquisition II Data streaming to a storage device Spring 2016 – Lecture 9 Bekkeng, 20.01.2016 Data streaming • Data written to or read from a storage device at a sustained rate is often referred to as streaming • Trends in data storage – Ever-increasing amounts of data (Big Data) – Record “everything” and play it back later – Hard drives: faster, bigger, and cheaper – Solid state drives – RAID hardware – PCI Express • PCI Express provides higher, dedicated bandwidth Applications requiring high-speed data streaming (examples) • High speed data acquisition – Combined with many DAQ channels • Radar (Giga-samples/s) – RF recording and playback • High resolution and/or high speed video – Digital video recording and playback Key system components for high- speed streaming • Hardware Platform with High-Throughput and Low- Latency – PXI/PCI Express bus • High-Speed Data Storage – Hard Disk Drives (HDDs) in RAID – Solid-State Drives (SSDs) • Software for Streaming to Disk at High Rates – Parallel programming – Fast binary file format 32-Bit vs. 64-Bit OS for DAQ applications • A 32-bit processor can reference 232 bytes, or 4 GB of memory • A 64-bit processor are theoretically capable of referencing 264 locations in memory. However, all 64-bit versions of Microsoft operating systems currently impose a 16 TB limit on address space • Note: 64-bit versions of operating systems and application programs are note necessarily faster than their 32-bit counterparts. They can be slower! • The main benefits of 64-bits for DAQ applications is the large amounts of RAM possible. • Other applications that can benefit from 64-bits are those working with very large numbers.
    [Show full text]
  • (12) United States Patent (10) Patent No.: US 7,191,286 B2 Forrer, Jr
    US007191286B2 (12) United States Patent (10) Patent No.: US 7,191,286 B2 Forrer, Jr. et al. (45) Date of Patent: Mar. 13, 2007 (54) DATA REDUNDANCY IN INDIVIDUAL HARD (56) References Cited DRIVES U.S. PATENT DOCUMENTS (75) Inventors: Thomas R. Forrer, Jr., Round Rock, 6,028,725 A * 2/2000 Blumenau ...................... 360/8 TX (US); Jason Eric Moore, Austin, 2004/0179386 A1* 9/2004 Jun ............................ 365,145 TX (US); Abel Enrique Zuzuarregui, Paige, TX (US) * cited by examiner (73) Assignee: International Business Machines Primary Examiner Reginald Bragdon Corporation, Armonk, NY (US) Assistant Examiner Shawn Gu (74) Attorney, Agent, or Firm—Duke W. Yee; Diana R. (*) Notice: Subject to any disclaimer, the term of this Gerhardt; James O. Skarsten patent is extended or adjusted under 35 U.S.C. 154(b) by 366 days. (57) ABSTRACT (21) Appl. No.: 10/809,589 A method and system are disclosed for recovering lost data with redundancy in an individual hard drive. A mirroring (22) Filed: Mar. 25, 2004 type process is used in a single hard drive to maintain a backup copy of all data stored on that hard drive. The hard (65) Prior Publication Data drive maintains two copies of the stored data on different US 2005/0216657 A1 Sep. 29, 2005 storage media segments or partitions defined by separate read/write heads. In the event that a hard drive media defect (51) Int. C. or error occurs with respect to any of the data stored on a F6F 12/00 (2006.01) segment defined by one head, that data can be restored from (52) U.S.
    [Show full text]
  • Storage Administration Guide Storage Administration Guide SUSE Linux Enterprise Server 15
    SUSE Linux Enterprise Server 15 Storage Administration Guide Storage Administration Guide SUSE Linux Enterprise Server 15 Provides information about how to manage storage devices on a SUSE Linux Enterprise Server. Publication Date: September 24, 2021 SUSE LLC 1800 South Novell Place Provo, UT 84606 USA https://documentation.suse.com Copyright © 2006– 2021 SUSE LLC and contributors. All rights reserved. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or (at your option) version 1.3; with the Invariant Section being this copyright notice and license. A copy of the license version 1.2 is included in the section entitled “GNU Free Documentation License”. For SUSE trademarks, see https://www.suse.com/company/legal/ . All other third-party trademarks are the property of their respective owners. Trademark symbols (®, ™ etc.) denote trademarks of SUSE and its aliates. Asterisks (*) denote third-party trademarks. All information found in this book has been compiled with utmost attention to detail. However, this does not guarantee complete accuracy. Neither SUSE LLC, its aliates, the authors nor the translators shall be held liable for possible errors or the consequences thereof. Contents About This Guide xi 1 Available Documentation xi 2 Giving Feedback xiii 3 Documentation Conventions xiii 4 Product Life Cycle and Support xv Support Statement for SUSE Linux Enterprise Server xvi • Technology Previews xvii I FILE SYSTEMS AND MOUNTING 1 1 Overview of File Systems
    [Show full text]
  • Of File Systems and Storage Models
    Chapter 4 Of File Systems and Storage Models Disks are always full. It is futile to try to get more disk space. Data expands to fill any void. –Parkinson’sLawasappliedto disks 4.1 Introduction This chapter deals primarily with how we store data. Virtually all computer systems require some way to store data permanently; even so-called “diskless” systems do require access to certain files in order to boot, run and be useful. Albeit stored remotely (or in memory), these bits reside on some sort of storage system. Most frequently, data is stored on local hard disks, but over the last few years more and more of our files have moved “into the cloud”, where di↵erent providers o↵er easy access to large amounts of storage over the network. We have more and more computers depending on access to remote systems, shifting our traditional view of what constitutes a storage device. 74 CHAPTER 4. OF FILE SYSTEMS AND STORAGE MODELS 75 As system administrators, we are responsible for all kinds of devices: we build systems running entirely without local storage just as we maintain the massive enterprise storage arrays that enable decentralized data replication and archival. We manage large numbers of computers with their own hard drives, using a variety of technologies to maximize throughput before the data even gets onto a network. In order to be able to optimize our systems on this level, it is important for us to understand the principal concepts of how data is stored, the di↵erent storage models and disk interfaces.Itisimportanttobeawareofcertain physical properties of our storage media, and the impact they, as well as certain historic limitations, have on how we utilize disks.
    [Show full text]
  • Data Stored Based Test Pattern Generation in Flash Memory
    Special Issue - 2018 International Journal of Engineering Research & Technology (IJERT) ISSN: 2278-0181 ICONNECT - 2k18 Conference Proceedings Data Stored Based Test Pattern Generation in Flash Memory Priyadharshini M, Chelladurai T, M.E Vlsi design, PSNACET, Asst. Professor (ECE), PSNACET, Dindigul, India, Dindigul, India, Abstract-The Flash Memory built with floating gate transistor testing of the given input data stored in the memory. The main are easily affected by device noises that leads to Bit Error idea of the is to provide, Rate(BER). These noises heavily depend on the stored data pattern. Data Pattern Aware(DPA) is proposed to manipulate • The given input data is modified and stored using DPA. the ratio of 0’s and 1’s in stored data to reduce the probability of Data Patterns which are easily affected by device noises. A test • A part of DPA function known DPA-PPU (Pattern pattern is proposed to monitor the input vectors for concurrent Probability Unbalance) modifies the pattern of the given testing of NAND flash memory. Only required test pattern are data from the lowest number 1’s to its maximum. DPA- picked out from the entire sequence of generated test pattern. DRM (Data Redundancy Management) manages the These sequences are selected based on the data stored in redundancy caused by the process during the memory. A response vector provides a comparison and determines that the memory contains tested data for the given modification process. input. • Test pattern generated for the data pattern to be stored in memory and verified each time after every reset. Keyword: NAND flash memory, Data pattern and Test pattern generation.
    [Show full text]
  • Drobotm Beyondraidtm Simplifies Storage Deployment and Management Safe
    WHITE PAPER DroboTM BeyondRAIDTM Simplifies Storage Deployment and Management Safe. Expandable. Simple. Table of Contents Introduction .....................................................................................................................................................................3 BeyondRAID .....................................................................................................................................................................4 Challenges of Traditional RAID ...............................................................................................................................4 Traditional RAID: Deployment ............................................................................................................................4 Traditional RAID: Capacity Growth ....................................................................................................................4 Traditional RAID: Protection Levels ...................................................................................................................5 Traditional RAID: Drive Failure ............................................................................................................................5 Traditional RAID: Mixed Capacity Drive Usage ...............................................................................................5 Traditional RAID: Storage Provisioning .............................................................................................................5 Thin Provisioning
    [Show full text]
  • Data Redundancy and Maintenance for Peer-To-Peer File Backup Systems Alessandro Duminuco
    Data Redundancy and Maintenance for Peer-to-Peer File Backup Systems Alessandro Duminuco To cite this version: Alessandro Duminuco. Data Redundancy and Maintenance for Peer-to-Peer File Backup Systems. domain_other. Télécom ParisTech, 2009. English. pastel-00005541 HAL Id: pastel-00005541 https://pastel.archives-ouvertes.fr/pastel-00005541 Submitted on 7 Jul 2010 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. École Doctorale d’Informatique, Télécommunications et Électronique de Paris Thèse présentée pour obtenir le grade de docteur de TELECOM ParisTech Spécialité : Informatique et réseaux Alessandro DUMINUCO Redondance et maintenance des données dans les systèmes de sauvegarde de fichiers pair-à-pair Data Redundancy and Maintenance for Peer-to-Peer File Backup Systems Soutenue le 20 Octobre 2009 devant le jury composé de Prof. Isabelle Demeure Président Prof. Pascal Felber Rapporteurs Dr. Philippe Nain Prof. Thorsten Strufe Examinateur Prof. Ernst Biersack Directeur de thèse Copyright c 2009 by Alessandro Duminuco ( [email protected] ). Typeset in LATEX. a Piero, che mi ha insegnato piú d’ogni altro. Abstract The amount of digital data produced by users, such as photos, videos, and digital docu- ments, has grown tremendously over the last decade.
    [Show full text]
  • Coded Access Architectures for Dense Memory Systems
    Coded Access Architectures for Dense Memory Systems Hardik Jainy, Ethan R. Elenbergy, Ankit Singh Rawatzx, and Sriram Vishwanathy y The University of Texas at Austin, Austin, TX 78712, USA, z Massachusetts Institute of Technology, Cambridge, MA 02139, USA, x University of Massachusetts, Amherst, MA 01003, USA. E-mail: [email protected], [email protected], [email protected], [email protected]. Abstract—We explore the use of coding theory in double cessing speed [4], [5], [6], [2]. Additionally, in a multi-core data rate (DDR) and high bandwidth memory (HBM) systems. setup, the access requests from one core can interfere with Modern DDR systems incur large latencies due to contention requests from other cores. These contentions further increase of multiple requests on the same memory bank. Our proposed memory design stores data across DRAM pages in a redundant access latency. For example, two cores issuing access requests manner using Reed-Solomon codes as a building block. A for data elements stored on the same memory bank results in memory controller then assigns coded versions of the data to a bank conflict. Since the memory bank can serve only one dedicated parity banks. This multi-bank coding scheme creates access request per memory clock cycle, the second request multiple ways to retrieve a given data element and allows for must be queued for future clock cycles. As the number of more efficient scheduling in multi-core memory architectures such as HBM. Our approach differs from conventional, uncoded cores increases, such bank conflicts become more frequent. systems which only optimize the timing of each incoming memory This leads to many access requests being queued and waiting request.
    [Show full text]