Model and Validation of Block Cleaning Cost for Flash Memory*, **
|
|
- Allen Ferguson
- 8 years ago
- Views:
Transcription
1 Model and Validation of Block Cleaning Cost for Flash Memory*, ** Seungjae Baek 1, Jongmoo Choi 1, Donghee Lee 2, and Sam H. Noh 3 1 Division of Information and Computer Science, Dankook University, Korea, Hannam-Dong, Yongsan-Gu, Seoul, Korea {ibanez1383,choijm}@dankook.ac.kr 2 Department of Computer Science, University of Seoul, Korea, Jeonnong-Dong, Dongdaemun-Gu, Seoul, Korea dhlee@venus.uos.ac.kr 3 School of Computer and Information Engineering, Hongik University, Korea, Sangsu-Dong, Mapo-Gu, Seoul, , Korea samhnoh@hongik.ac.kr Abstract. Flash memory is a storage medium that is becoming more and more popular. Though not yet fully embraced in traditional computing systems, Flash memory is prevalent in embedded systems, materialized as commodity appliances such as the digital camera and the MP3 player that we are enjoying in our everyday lives. The cost of block cleaning is an important factor that strongly influences Flash memory file system performance analogous to the seek time in disk storage based systems. We show that three performance parameters, namely, utilization, invalidity, and uniformity characteristics of Flash memory strongly effect this block cleaning cost and present a model for the block cleaning cost based on these parameters. We validate this model using synthetic workloads on commercial Flash memory products. Keywords: Flash memory, model, validation, block cleaning. 1 Introduction Recent developments in Flash memory technology have brought about numerous products that make use of Flash memory. While still controversial, optimists envision Flash memory will replace much of the territory that disk storage has been occupying. Whether this will happen or not will have to be seen [1]. However, one sure thing is that Flash memory is a storage medium that is being more and more widely used in everyday commodity embedded systems and is bringing about significant changes to the computing environment. In view of these developments, in this paper, we explore and identify the characteristics of Flash memory and analyze how they influence the latency of data * This work was supported in part by grant No. R from the Basic Research Program of the Korea Science & Engineering Foundation. ** This work was supported in part by MIC & IITA through IT Leading R&D Support Project. S. Vassiliadis et al. (Eds.): SAMOS 2007, LNCS 4599, pp , Springer-Verlag Berlin Heidelberg 2007
2 Model and Validation of Block Cleaning Cost for Flash Memory 47 access. We identify the cost of block cleaning as the key characteristic that influences latency. A performance model for analyzing the cost of block cleaning is presented based on three parameters that we derive, namely, utilization, invalidity, and uniformity, which we define clearly later. We find that the cost of block cleaning is strongly influenced by uniformity just like seek is a strong influence for disk based storage. The rest of the paper is organized as follows. In Section 2, we elaborate on the characteristics of Flash memory and on block cleaning, in particular. Then, we present the block cleaning cost model in Section 3. In Section 4, we present the experimental setting and results that are used to validate the model. We briefly discuss related works in Section 5 and conclude in Section 6. 2 Flash Memory and Block Cleaning Flash memory that is most widely used today is either of the NOR type or the NAND type. Other types of Flash memory such as OR type or AND type do exist, but are not popular. One key difference between NOR and NAND Flash memory is the access granularity. NOR Flash memory supports word-level random access, while NAND Flash memory supports page-level random access. Hence, in embedded systems, NOR Flash memory is usually used to store code, while NAND Flash memory is used as storage for the file system. NOR and NAND Flash memory also differ in density, operational time, and bad block marking mechanisms. Flash memory is organized as a set of blocks, each block consisting of a set of pages. According to the block size, NAND Flash memory is further divided into two classes, that is, small block NAND and large block NAND. In small block NAND Flash memory, each block has 32 pages, where the page size is 528 bytes. A 512-byte portion of these bytes is the data area used to store data, while the remaining 16-byte portion is called the spare area, which is generally used to store ECC and/or bookkeeping information. In large block NAND Flash memory, each block has 64 pages of 2112 bytes (2048 bytes for data area and 64 bytes for spare area). Flash memory as a storage medium has characteristics that are different from traditional disk storage. These characteristics can be summarized as follows [2]. 1. Access time in Flash memory is location independent similar to RAM. There is no seek time involved. 2. Overwrite is not possible in Flash memory. Flash memory is a form of EEPROM (Electrically Erasable Programmable Read Only Memory), so it needs to be erased before new data can be overwritten. 3. Execution time for the basic operations in Flash memory is asymmetric. Traditionally, three basic operations, namely, read, write, and erase, are supported. An erase operation is used to clean a used page so that the page may be written to again. In general, a write operation takes an order of magnitude longer than a read operation, while an erase operation takes another order or more magnitudes longer than a write operation. 4. The unit of operation is also different for the basic operations. While the erase operation is performed in block units, read/write operations are performed in page units.
3 48 S. Baek et al. 5. The number of erasures possible on each block is limited, typically, to 100,000 or 1,000,000 times. Let us now consider the specific operations used in Flash memory. Reading data from Flash memory is simply like reading from disk. The distinction from a disk is that all reads take a constant amount of time. For a write operation, a distinction has to be made between a new write and a write that is modifying existing data. When totally new data is being written, this is almost identical to a disk write, that is, a page is allocated and written to. However, there are occasions when no free pages are available to be written to. In such a case, an erase operation must precede the write operation. This will result in considerable delay in writing out the data. For writes that update existing data, the story is totally different. As overwrite to the updated page is not possible, various mechanisms for non-in-place update have been developed [3,4,5,6]. Though specific details differ, the basic mechanism is to allocate a new page, write the updated data onto the new page, and then, invalidate the original page that holds the (now obsolete) original data. The original page now becomes a dead or invalid page. Likewise, in this situation, an erase operation may have to precede the write operation. Fig. 1. Page state transition diagram Note that from the above discussions that a page can be in three different states. A page holding legitimate data is in a valid state. If the page is deleted or updated, the page becomes an invalid page and transitions into an invalid state. Note that a page in this state cannot be written to until the block it resides in is first erased. Finally, if the page has not been written to in the first place or the block in which the page resides has just been erased, then the page is clean, and this page is in a clean state. Figure 1 shows the state transition diagram of pages in Flash memory. Note from the tri-state characteristics that the number of clean pages diminishes not only as new data is written, but also as existing data is updated. In order to store more data and even to make updates to existing data, it is imperative that invalid pages be continually cleaned. Since, cleaning is done via erase operation, which is
4 Model and Validation of Block Cleaning Cost for Flash Memory 49 done in block units, valid pages in the block to be erased must be copied to a clean block. This exacerbates the already large erase overhead needed for cleaning a block. 3 Block Cleaning Cost Model In this section, we identify the parameters that affect the cost of block cleaning. We formulate a cost model based on these parameters and analyze their effects on the cost. 3.1 Performance Parameters Two types of block cleaning are possible in Flash memory. The first is when valid and invalid pages coexist within the block that is to be cleaned. Here, the valid pages must first be copied to a clean page in a different block before the erase operation on the block can happen. We shall refer to this type of cleaning as copy-erase cleaning. The other kind of cleaning is where no valid page exists in the block to be erased. All pages in this block are either invalid or clean. This cleaning imposes only a single erase operation, and we shall refer to this type of cleaning as erase-only cleaning. Observe that for copy-erase cleaning the number of valid pages is a key factor that affects the cost of cleaning as all the valid pages need to be moved to another block before cleaning may happen. For erase-only cleaning, the way in which the invalid pages are distributed plays a key role. From these observations, we identify three parameters that affect the cost of block cleaning. They are defined as follows: Utilization (u): the fraction of valid pages in Flash memory Invalidity (i): the fraction of invalid pages in Flash memory Uniformity (p): the fraction of uniform blocks in Flash memory, where a uniform block is a block that does not contain both valid and invalid blocks simultaneously. Fig. 2. Situation where utilization (u=0.2) and invalidity (i=0.2) remains unchanged, while uniformity (p) changes (a) p = 0.2 (b) p = 0.6 (c) p = 1
5 50 S. Baek et al. Figure 2 shows three page allocation situations where utilization and invalidity are the same, but uniformity is different. Since there are four valid pages and four invalid pages among the 20 pages for all three cases utilization and invalidity are both 0.2. However, there are one, three, and five uniform blocks in Figure 2(a), (b), and (c), hence uniformity is 0.2, 0.6, and 1, respectively. Utilization determines, on average, the number of valid pages that need to be copied for copy-erase cleaning. Invalidity determines the number of blocks that are candidates for cleaning. Finally, uniformity refers to the fraction of uniform blocks. A uniform block is a block with zero or more clean pages and the remainder of the pages in the block are uniformly valid or uniformly invalid pages. Another definition of uniformity would be 1 the fraction of blocks that have both valid and invalid pages. Of all the uniform blocks, only those blocks containing invalid pages are candidates for erase-only cleaning. From these observations, we can formulate the cost of block cleaning as follows: Cost of Block Cleaning = Cost of copy-erase cleaning + Cost of erase-only cleaning = ((1-p) min(b, i P)) ((r t + w t ) (P/B u)+e t )) + ((p B i) e t ) where u: utilization (0 u 1) i : invalidity (0 i 1- u) p: uniformity (0 p 1) P: number of pages in Flash memory (P=capacity/size of page) B: number of blocks in Flash memory (P/B: # of pages in a block) r t : read operation execution time w t : write operation execution time e t : erase operation execution time The formula for cost of block cleaning consists of two terms. The first term is the cost for copy-erase cleaning of non-uniform blocks, where P/B u denotes the number of valid pages in a block, and hence, need to be copied. Each copy is associated with a read and a write operation denoted by r t and w t, respectively, after which an erase operation is performed, denoted by e t. (Note that instead of using (r t + w t ) as the copy overhead, as some Flash memory controllers support the copy-back operation, that is, copying of a page to another page internally [7], this copy-back operation execution time could be used. In general, the copy-back execution time is similar to the write operation execution time.) This cleaning action is executed only on blocks that have invalid pages, denoted by min(b, i P), and of those, that are non-uniform blocks, represented by (1-p).The second term is the cost of cleaning uniform blocks that have invalid pages denoted by (p B i) costing e t erase time for each block.
6 Model and Validation of Block Cleaning Cost for Flash Memory 51 4 Model Validation In this section, we discuss the experimental environment used to validate the model and also present the validation results. 4.1 Platform and Workload We use an embedded hardware platform to validate the block cleaning cost model. Hardware components of the system include a 400MHz XScale PXA CPU, 64MB SDRAM, 0.5MB NOR Flash memory, and embedded controllers. A small block 64MB NAND Flash memory that has 128K pages and 4096 blocks is used for Flash memory [7]. Table 1 summarizes the hardware components and their specifications [8]. Table 1. Hardware component and specification Hardware Components Specification CPU 400MHz XScale PXA 255 RAM 64MB SDRAM Flash 64MB NAND, 0.5MB NOR Interface CS8900, USB, RS232, JTAG The Linux kernel was ported on the hardware platform and YAFFS is used to manage the NAND Flash memory [3]. YAFFS uses the open(), read(), write() interface provided by the VFS layer. Below the YAFFS layer, the MTD layer uses the readchunkfromnand(), writechunktonand(), and eraseblockinnand() interface to actually access and control Flash memory [3]. The workload that we use in the experiments is the Postmark benchmark. This is a popular benchmark widely used for measuring file system performance [18,19]. This benchmark creates a large number of randomly sized files. It then executes read, write, delete, and append transactions on these files. We create 500 files (the default number) and perform 500 transactions (again, the default value) for our experiments. To measure the block cleaning cost, we developed a tool that sets the state of Flash memory based on the three parameter values, which may be manually designated. Based on these settings, block cleaning is performed. Another tool that we developed is used to measure the actual cost of block cleaning. Both tools are implemented within YAFFS to validate our model. For space reasons, we do not elaborate on the details of these tools. Another issue that must be clarified is the level at which the model is to be validated. In the model, the read, write, and erase times are used to estimate the block cleaning cost. The times used for these operations will drastically influence the model estimation time. The simplest way to determine these values is by using the data sheet provided by the Flash memory chip vendor. However, through experiments we observe that the values reported in the datasheet and the actual time seen at various levels of the system differ considerably. Figure 3 shows these results. The results shows that while the datasheet reports read, write, and erase times of 0.01ms, 0.2ms,
7 52 S. Baek et al. Fig. 3. Execution time at each level and 2ms, respectively, for the Flash memory used in our experiments, the times observed for directly accessing Flash memory at the device driver level is 0.19ms, 0.3ms, and 1.7ms, respectively. Furthermore, when observed just above the MTD layer, the read, write, and erase times are 0.2ms, 1.03ms, and 1.74ms, respectively. Which values are used in the model will drastically influence the accuracy of the model. In our study, we use the observations made just above the MTD layer as this level is where the block cleaning cost is measured. 4.2 Validation Results Figure 4 compares the measured block cleaning cost and the cost estimated by the model. In each figure, the initial values of the three parameters are all set to 0.5. Then, we decrease utilization in Figure 4(a), increase uniformity in Figure 4(b), and decrease invalidity in Figure 4(c). The measured values and the estimated values show similar results as well as similar trends. The results indicate that the block cleaning model that we derived is fairly accurate. Fig. 4. Performance comparison of block cleaning cost model and experimental measurements
8 Model and Validation of Block Cleaning Cost for Flash Memory 53 Also, from these figures, we find that the impact of utilization and uniformity on block cleaning cost is higher than that of invalidity. Since utilization is not controllable by the system, this implies that to keep cleaning cost down, keeping uniformity high may be a better approach. 5 Related Works The issue of block cleaning has been considered for both Flash memory and disk based systems. For disk based systems, segment cleaning in the Log-structured File System (LFS) is closely related to block cleaning for Flash memory. LFS writes data to a clean segment and performs segment cleaning to reclaim space occupied by obsolete data [9,10,11,12,13]. In the Flash memory arena, studies related to block cleaning have been conducted in many studies [4,14,15,16,17]. Among these Kawaguchi et al. propose using two separate segments for cleaning: one for newly written data and the other for data to be copied during cleaning [4]. Wu and Zwaenepoel present a hybrid cleaning scheme that combines the FIFO algorithm for uniform access and locality gathering algorithm for highly skewed access distribution [16]. These works, however, generally take an algorithmic approach to improve block cleaning. The focus of this paper is in identifying and modeling the key ingredients that affect block cleaning cost in Flash memory. 6 Conclusion In this paper, we identify three performance parameters from features of Flash memory and derive a performance model for block cleaning cost based on these parameters. We validate the model through experimental measurements of block cleaning cost of a 64MB NAND Flash memory chip on an embedded board. The results show that the model that we propose accurately captures the block cleaning cost observed at the MTD layer. Using this model, we are able to observe the factors that strongly influence block cleaning cost. These observations form the basis for our next step, which is to develop a new page allocation scheme. The new page allocation scheme should take into consideration the factor that most strongly influences block cleaning, namely, the uniformity factor. References 1. Goldstein, H.: Too little, too soon [solid state flash memories]. IEEE Spectrum 43(1), (2006) 2. Sharma, A.K.: Advanced Semiconductor Memories: Architectures, Designs, and Applications, WILEY Interscience (2003) 3. Aleph One,YAFFS: Yet another Flash file system, 4. Kawaguchi, A., Nishioka, S., Motoda, H.: A Flash-memory based file system. In: Proceedings of the 1995 USENIX Annual Technical Conference, pp (1995)
9 54 S. Baek et al. 5. Gal, E., Toledo, S.: A transactional Flash file system for microcontrollers. In: Proceedings of the 2005 USENIX Annual Technical Conference, pp (2005) 6. Woodhouse, D.: JFFS: The journaling Flash file system, Ottawa Linux Symposium (2001), 7. Samsung Electronics, NAND Flash Data Sheet, 8. EZ-X5, 9. Rosenblum, M., Ousterhout, J.K.: The design and implementation of a log-structured file system. ACM Transactions on Computer Systems 10(1), (1992) 10. Blackwell, T., Harris, J., Seltzer, M.: Heuristic cleaning algorithms in log-structured file systems. In: Proceedings of the 1995 Annual Technical Conference, pp (1993) 11. Matthews, J., Roselli, D., Costello, A., Wang, R., Anderson, T.: Improving the performance of log-structured file systems with adaptive methods. In: ACM Symposiums on Operating System Principles (SOSP), pp (1997) 12. Wang, J., Hu, Y.: WOLF - a novel reordering write buffer to boost the performance of logstructured file systems. In: Proceedings of the USENIX Conference on File and Storage Technologies (FAST), pp (2002) 13. Wang, W., Zhao, Y., Bunt, R.: HyLog: A High Performance Approach to Managing Disk Layout. In: Proceedings of the USENIX Conference on File and Storage Technologies (FAST), pp (2004) 14. Gal, E., Toledo, S.: Algorithms and Data Structures for Flash Memories. ACM Computing Surveys 37(2), (2005) 15. Chiang, M-L., Lee, P.C.H., Chang, R-C.: Using data clustering to improve cleaning performance for Flash memory. Software: Practice and Experience 29(3), (1999) 16. Wu, M., Zwaenepoel, W.: envy: a non-volatile, main memory storage system. In: Proceeding of the 6th International Conference on Architectural Support for Programming Languages and Operation Systems (ASPLOS), pp (1994) 17. Chang, L.P., Kuo, T.W., Lo, S.W.: Real-time garbage collection for Flash memory storage systems of real time embedded systems. ACM Transactions on Embedded Computing Systems 3(4), (2004) 18. PostMark, Katcher, J.: PostMark: A New File System Benchmark. Technical Report TR3022, Network Appliance Inc. (1997)
Design of a NAND Flash Memory File System to Improve System Boot Time
International Journal of Information Processing Systems, Vol.2, No.3, December 2006 147 Design of a NAND Flash Memory File System to Improve System Boot Time Song-Hwa Park*, Tae-Hoon Lee*, and Ki-Dong
More informationAbstract. 1. Introduction 978-3-9810801-5-5/DATE09 2009 EDAA
FSAF: File System Aware Flash Translation Layer for NAND Flash Memories * Sai Krishna Mylavarapu 1, Siddharth Choudhuri 2, Aviral Shrivastava 1, Jongeun Lee 1, Tony Givargis 2 Sai.Mylavarapu@asu.edu 1
More informationData Storage Framework on Flash Memory using Object-based Storage Model
2011 International Conference on Computer Science and Information Technology (ICCSIT 2011) IPCSIT vol. 51 (2012) (2012) IACSIT Press, Singapore DOI: 10.7763/IPCSIT.2012.V51. 118 Data Storage Framework
More informationFASS : A Flash-Aware Swap System
FASS : A Flash-Aware Swap System Dawoon Jung, Jin-Soo Kim, Seon-Yeong Park, Jeong-Uk Kang, and Joonwon Lee Division of Computer Science Korea Advanced Institute of Science and Technology 373-1 Guseongdong,
More informationBuffer-Aware Garbage Collection for NAND Flash Memory-Based Storage Systems
Buffer-Aware Garbage Collection for NAND Flash Memory-Based Storage Systems Sungin Lee, Dongkun Shin and Jihong Kim School of Computer Science and Engineering, Seoul National University, Seoul, Korea {chamdoo,
More informationAn Adaptive Striping Architecture for Flash Memory Storage Systems of Embedded Systems
An Adaptive Striping Architecture for Flash Memory Storage Systems of Embedded Systems Li-Pin Chang and Tei-Wei Kuo {d65269,ktw}@csientuedutw Department of Computer Science and Information Engineering
More informationA Data De-duplication Access Framework for Solid State Drives
JOURNAL OF INFORMATION SCIENCE AND ENGINEERING 28, 941-954 (2012) A Data De-duplication Access Framework for Solid State Drives Department of Electronic Engineering National Taiwan University of Science
More informationImplementation of Buffer Cache Simulator for Hybrid Main Memory and Flash Memory Storages
Implementation of Buffer Cache Simulator for Hybrid Main Memory and Flash Memory Storages Soohyun Yang and Yeonseung Ryu Department of Computer Engineering, Myongji University Yongin, Gyeonggi-do, Korea
More informationA PRAM and NAND Flash Hybrid Architecture for High-Performance Embedded Storage Subsystems
1 A PRAM and NAND Flash Hybrid Architecture for High-Performance Embedded Storage Subsystems Chul Lee Software Laboratory Samsung Advanced Institute of Technology Samsung Electronics Outline 2 Background
More informationHybridLog: an Efficient Hybrid-Mapped Flash Translation Layer for Modern NAND Flash Memory
HybridLog: an Efficient Hybrid-Mapped Flash Translation Layer for Modern NAND Flash Memory Mong-Ling Chiao and Da-Wei Chang Abstract A Flash Translation Layer (FTL) emulates a block device interface on
More information2LGC: An Atomic-Unit Garbage Collection Scheme with a Two-Level List for NAND Flash Storage
2LGC: An Atomic-Unit Garbage Collection Scheme with a Two-Level List for NAND Flash Storage Sanghyuk Jung and Yong Ho Song Department of Electronics Computer Engineering, Hanyang University, Seoul, Korea
More informationA Group-Based Wear-Leveling Algorithm for Large-Capacity Flash Memory Storage Systems
A Group-Based Wear-Leveling Algorithm for Large-Capacity Flash Memory Storage Systems Dawoon Jung, Yoon-Hee Chae, Heeseung Jo, Jin-Soo Kim, and Joonwon Lee Computer Science Division Korea Advanced Institute
More informationFilesystems for Embedded Computing
Filesystems for Embedded Computing Kurt Rosenfeld December 14, 2005 Abstract Embedded computing systems often need some of the services offered by traditional filesystems. But embedded environments differ
More informationA multi-channel architecture for high-performance NAND flash-based storage system q
Journal of Systems Architecture 53 (2007) 644 658 www.elsevier.com/locate/sysarc A multi-channel architecture for high-performance NAND flash-based storage system q Jeong-Uk Kang a, *, Jin-Soo Kim a, Chanik
More informationFlash Memory. Jian-Jia Chen (Slides are based on Yuan-Hao Chang) TU Dortmund Informatik 12 Germany 2015 年 01 月 27 日. technische universität dortmund
12 Flash Memory Jian-Jia Chen (Slides are based on Yuan-Hao Chang) TU Dortmund Informatik 12 Germany 2015 年 01 月 27 日 These slides use Microsoft clip arts Microsoft copyright restrictions apply Springer,
More informationOn Benchmarking Embedded Linux Flash File Systems
On Benchmarking Embedded Linux Flash File Systems Pierre Olivier Université de Brest, 20 avenue Le Gorgeu, 29285 Brest cedex 3, France pierre.olivier@univbrest.fr Jalil Boukhobza Université de Brest, 20
More informationEmpirical Inspection of IO subsystem for Flash Storage Device at the aspect of discard
, pp.59-63 http://dx.doi.org/10.14257/astl.2016.135.16 Empirical Inspection of IO subsystem for Flash Storage Device at the aspect of discard Seung-Ho Lim and Ki-Jin Kim Division of Computer and Electronic
More informationA Simple Virtual FAT File System for Wear-Leveling Onboard NAND Flash Memory
A Simple Virtual FAT File System for Wear-Leveling Onboard NAND Flash Memory Robert Klar, Sue Baldor, Charles Howard, Randal Harmon, and Allison Bertrand Southwest Research Institute Promise of Flash Flash
More informationLinux flash file systems JFFS2 vs UBIFS
Linux flash file systems JFFS2 vs UBIFS Chris Simmonds 2net Limited Embedded Systems Conference UK. 2009 Copyright 2009, 2net Limited Overview Many embedded systems use raw flash chips JFFS2 has been the
More informationUBI with Logging. Brijesh Singh Samsung, India brij.singh@samsung.com. Rohit Vijay Dongre Samsung, India rohit.dongre@samsung.com.
UBI with Logging Brijesh Singh Samsung, India brij.singh@samsung.com Rohit Vijay Dongre Samsung, India rohit.dongre@samsung.com Abstract Flash memory is widely adopted as a novel nonvolatile storage medium
More informationEfficient Identification of Hot Data for Flash Memory Storage Systems
Efficient Identification of Hot Data for Flash Memory Storage Systems JEN-WEI HSIEH and TEI-WEI KUO National Taiwan University and LI-PIN CHANG National Chiao-Tung University Hot data identification for
More informationAn Efficient B-Tree Layer for Flash-Memory Storage Systems
An Efficient B-Tree Layer for Flash-Memory Storage Systems Chin-Hsien Wu, Li-Pin Chang, and Tei-Wei Kuo {d90003,d6526009,ktw}@csie.ntu.edu.tw Department of Computer Science and Information Engineering
More informationDeveloping NAND-memory SSD based Hybrid Filesystem
214 Int'l Conf. Par. and Dist. Proc. Tech. and Appl. PDPTA'15 Developing NAND-memory SSD based Hybrid Filesystem Jaechun No 1 1 College of Electronics and Information Engineering, Sejong University, Seoul,
More informationAN10860_1. Contact information. NXP Semiconductors. LPC313x NAND flash data and bad block management
Rev. 01 11 August 2009 Application note Document information Info Keywords Abstract Content LPC3130 LPC3131 LPC313x LPC313X LPC3153 LPC3154 LPC3141 LPC3142 LPC31XX LPC31xx Linux kernel Apex boot loader
More informationFile Systems for Flash Memories. Marcela Zuluaga Sebastian Isaza Dante Rodriguez
File Systems for Flash Memories Marcela Zuluaga Sebastian Isaza Dante Rodriguez Outline Introduction to Flash Memories Introduction to File Systems File Systems for Flash Memories YAFFS (Yet Another Flash
More informationOffline Deduplication for Solid State Disk Using a Lightweight Hash Algorithm
JOURNAL OF SEMICONDUCTOR TECHNOLOGY AND SCIENCE, VOL.15, NO.5, OCTOBER, 2015 ISSN(Print) 1598-1657 http://dx.doi.org/10.5573/jsts.2015.15.5.539 ISSN(Online) 2233-4866 Offline Deduplication for Solid State
More informationAn Efficient B-Tree Layer Implementation for Flash-Memory Storage Systems
An Efficient B-Tree Layer Implementation for Flash-Memory Storage Systems CHIN-HSIEN WU and TEI-WEI KUO National Taiwan University and LI PING CHANG National Chiao-Tung University With the significant
More informationEfficient Identification of Hot Data for Flash-Memory Storage Systems
Efficient Identification of Hot Data for Flash-Memory Storage Systems Jen-Wei Hsieh, Li-Pin Chang, and Tei-Wei Kuo Department of Computer Science and Information Engineering National Taiwan University,
More information1 / 25. CS 137: File Systems. Persistent Solid-State Storage
1 / 25 CS 137: File Systems Persistent Solid-State Storage Technology Change is Coming Introduction Disks are cheaper than any solid-state memory Likely to be true for many years But SSDs are now cheap
More informationIn-Block Level Redundancy Management for Flash Storage System
, pp.309-318 http://dx.doi.org/10.14257/ijmue.2015.10.9.32 In-Block Level Redundancy Management for Flash Storage System Seung-Ho Lim Division of Computer and Electronic Systems Engineering Hankuk University
More informationJAM: Justifiable Allocation of Memory with Efficient Mounting and Fast Crash Recovery for NAND Flash Memory File Systems
The International Arab Journal of Information Technology, Vol. 7, No. 4, October 2010 395 JAM: Justifiable Allocation of Memory with Efficient Mounting and Fast Crash Recovery for NAND Flash Memory File
More informationEfficient Flash Memory Read Request Handling Based on Split Transactions
Efficient Memory Handling Based on Split Transactions Bryan Kim, Eyee Hyun Nam, Yoon Jae Seong, Hang Jun Min, and Sang Lyul Min School of Computer Science and Engineering, Seoul National University, Seoul,
More informationA File-System-Aware FTL Design for Flash-Memory Storage Systems
A File-System-Aware FTL Design for Flash-Memory Storage Systems Po-Liang Wu Department of Computer Science and Information Engineering National Taiwan University, Taipei 16, Taiwan, R.O.C. Email: b9129@csie.ntu.edu.tw
More informationHow To Test Readahead On Linux 3.1.1 (Amd64)
Revisiting Read-ahead Efficiency for Raw NAND Flash Storage in Embedded Linux Pierre Olivier Univ. Europeenne de Bretagne Univ. Bretagne Occidentale UMR6585 Lab-STICC F29200 Brest, France +332 98 01 74
More informationHHB+tree Index for Functional Enhancement of NAND Flash Memory-Based Database
, pp. 289-294 http://dx.doi.org/10.14257/ijseia.2015.9.9.25 HHB+tree Index for Functional Enhancement of NAND Flash Memory-Based Database Huijeong Ju 1 and Sungje Cho 2 1,2 Department of Education Dongbang
More informationDisk Schedulers for Solid State Drives
Disk Schedulers for Solid State Drives Jaeho Kim School of Computer Science University of Seoul kjhnet7@uos.ac.kr Jongmoo Choi Division of Information and CS Dankook University choijm@dankook.ac.kr Yongseok
More informationNAND Flash Memories. Using Linux MTD compatible mode. on ELNEC Universal Device Programmers. (Quick Guide)
NAND Flash Memories Using Linux MTD compatible mode on ELNEC Universal Device Programmers (Quick Guide) Application Note April 2012 an_elnec_linux_mtd, version 1.04 Version 1.04/04.2012 Page 1 of 16 As
More informationRecovery of flash memories for reliable mobile storages
Mobile Information Systems 6 (2010) 177 191 177 DOI 10.3233/MIS-2010-0098 IOS Press Recovery of flash memories for reliable mobile storages Daesung Moon a, Byungkwan Park b, Yongwha Chung c, and Jin-Won
More informationA PRAM and NAND Flash Hybrid Architecture for High-Performance Embedded Storage Subsystems
A PRAM and NAND Flash Hybrid Architecture for High-Performance Embedded Storage Subsystems Jin Kyu Kim 1 Hyung Gyu Lee 1 Shinho Choi 2 Kyoung Il Bahng 2 1 Samsung Advanced Institute of Technology, CTO,
More informationExploiting Self-Adaptive, 2-Way Hybrid File Allocation Algorithm
Exploiting Self-Adaptive, 2-Way Hybrid File Allocation Algorithm [ Jaechun No, Sung-Soon Park ] Abstract We present hybridfs file system that provides a hybrid structure, which makes use of performance
More informationIndexing on Solid State Drives based on Flash Memory
Indexing on Solid State Drives based on Flash Memory Florian Keusch MASTER S THESIS Systems Group Department of Computer Science ETH Zurich http://www.systems.ethz.ch/ September 2008 - March 2009 Supervised
More informationSH-Sim: A Flexible Simulation Platform for Hybrid Storage Systems
, pp.61-70 http://dx.doi.org/10.14257/ijgdc.2014.7.3.07 SH-Sim: A Flexible Simulation Platform for Hybrid Storage Systems Puyuan Yang 1, Peiquan Jin 1,2 and Lihua Yue 1,2 1 School of Computer Science and
More informationhybridfs: Integrating NAND Flash-Based SSD and HDD for Hybrid File System
hybridfs: Integrating NAND Flash-Based SSD and HDD for Hybrid File System Jinsun Suk and Jaechun No College of Electronics and Information Engineering Sejong University 98 Gunja-dong, Gwangjin-gu, Seoul
More informationSOS: Software-Based Out-of-Order Scheduling for High-Performance NAND Flash-Based SSDs
SOS: Software-Based Out-of-Order Scheduling for High-Performance NAND -Based SSDs Sangwook Shane Hahn, Sungjin Lee, and Jihong Kim Department of Computer Science and Engineering, Seoul National University,
More informationCAVE: Channel-Aware Buffer Management Scheme for Solid State Disk
CAVE: Channel-Aware Buffer Management Scheme for Solid State Disk Sung Kyu Park, Youngwoo Park, Gyudong Shim, and Kyu Ho Park Korea Advanced Institute of Science and Technology (KAIST) 305-701, Guseong-dong,
More informationA Content-Based Load Balancing Algorithm for Metadata Servers in Cluster File Systems*
A Content-Based Load Balancing Algorithm for Metadata Servers in Cluster File Systems* Junho Jang, Saeyoung Han, Sungyong Park, and Jihoon Yang Department of Computer Science and Interdisciplinary Program
More informationp-oftl: An Object-based Semantic-aware Parallel Flash Translation Layer
p-oftl: An Object-based Semantic-aware Parallel Flash Translation Layer Wei Wang, Youyou Lu, and Jiwu Shu Department of Computer Science and Technology, Tsinghua University, Beijing, China Tsinghua National
More informationSpatial Data Management over Flash Memory
Spatial Data Management over Flash Memory Ioannis Koltsidas 1 and Stratis D. Viglas 2 1 IBM Research, Zurich, Switzerland iko@zurich.ibm.com 2 School of Informatics, University of Edinburgh, UK sviglas@inf.ed.ac.uk
More informationImplementation and Challenging Issues of Flash-Memory Storage Systems
Implementation and Challenging Issues of Flash-Memory Storage Systems Tei-Wei Kuo Department of Computer Science & Information Engineering National Taiwan University Agenda Introduction Management Issues
More informationUpdate on filesystems for flash storage
JM2L Update on filesystems for flash storage Michael Opdenacker. Free Electrons http://free electrons.com/ 1 Contents Introduction Available flash filesystems Our benchmarks Best choices Experimental filesystems
More informationCS 153 Design of Operating Systems Spring 2015
CS 153 Design of Operating Systems Spring 2015 Lecture 22: File system optimizations Physical Disk Structure Disk components Platters Surfaces Tracks Arm Track Sector Surface Sectors Cylinders Arm Heads
More informationDesign of Remote Security System Using Embedded Linux Based Video Streaming
International Journal of Computing Academic Research (IJCAR) ISSN 2305-9184 Volume 2, Number 2 (April 2013), pp. 50-56 MEACSE Publications http://www.meacse.org/ijcar Design of Remote Security System Using
More informationAlgorithms and Data Structures for Flash Memories
Algorithms and Data Structures for Flash Memories ERAN GAL and SIVAN TOLEDO School of Computer Science, Tel-Aviv University Flash memory is a type of electrically erasable programmable read-only memory
More informationRNFTL: A Reuse-Aware NAND Flash Translation Layer for Flash Memory
RNFTL: A Reuse-Aware NAND Flash Translation Layer for Flash Memory Yi Wang, DuoLiu, MengWang, ZhiweiQin, Zili Shao and Yong Guan Department of Computing College of Computer and Information Management The
More informationUpdate on filesystems for flash storage
Embedded Linux Conference Europe Update on filesystems for flash storage Michael Opdenacker. Free Electrons http://free electrons.com/ 1 Contents Introduction Available flash filesystems Our benchmarks
More informationRecovery Protocols For Flash File Systems
Recovery Protocols For Flash File Systems Ravi Tandon and Gautam Barua Indian Institute of Technology Guwahati, Department of Computer Science and Engineering, Guwahati - 781039, Assam, India {r.tandon}@alumni.iitg.ernet.in
More informationNasir Memon Polytechnic Institute of NYU
Nasir Memon Polytechnic Institute of NYU SSD Drive Technology Overview SSD Drive Components NAND FLASH Microcontroller SSD Drive Forensics Challenges Overview SSD s are fairly new to the market Whereas
More informationAlgorithms and Methods for Distributed Storage Networks 3. Solid State Disks Christian Schindelhauer
Algorithms and Methods for Distributed Storage Networks 3. Solid State Disks Institut für Informatik Wintersemester 2007/08 Solid State Disks Motivation 2 10 5 1980 1985 1990 1995 2000 2005 2010 PRODUCTION
More informationAn Exploration of Hybrid Hard Disk Designs Using an Extensible Simulator
An Exploration of Hybrid Hard Disk Designs Using an Extensible Simulator Pavan Konanki Thesis submitted to the Faculty of the Virginia Polytechnic Institute and State University in partial fulfillment
More informationFlashmon V2: Monitoring Raw NAND Flash Memory I/O Requests on Embedded Linux
Flashmon V2: Monitoring Raw NAND Flash Memory I/O Requests on Embedded Linux Pierre Olivier Univ. Europeenne de Bretagne Univ. Bretagne Occidentale, UMR6285, Lab-STICC, F29200 Brest, France, pierre.olivier@univ-brest.fr
More informationRAMCloud and the Low- Latency Datacenter. John Ousterhout Stanford University
RAMCloud and the Low- Latency Datacenter John Ousterhout Stanford University Most important driver for innovation in computer systems: Rise of the datacenter Phase 1: large scale Phase 2: low latency Introduction
More informationImplementation and Performance Evaluation of M-VIA on AceNIC Gigabit Ethernet Card
Implementation and Performance Evaluation of M-VIA on AceNIC Gigabit Ethernet Card In-Su Yoon 1, Sang-Hwa Chung 1, Ben Lee 2, and Hyuk-Chul Kwon 1 1 Pusan National University School of Electrical and Computer
More informationCost-Efficient Memory Architecture Design of NAND Flash Memory Embedded Systems
Cost-Efficient Memory Architecture Design of Flash Memory Embedded Systems Chanik Park, Jaeyu Seo, Dongyoung Seo, Shinhan Kim and Bumsoo Kim Software Center, SAMSUNG Electronics, Co., Ltd. {ci.park, pelican,dy76.seo,
More informationFFSMark: a Postmark Extension for Dedicated Flash File Systems
FFSMark: a Postmark Extension for Dedicated Flash File Systems Pierre Olivier Univ. Bretagne Occidentale UMR6285 Lab-STICC F292 Brest, France Email: pierre.olivier@univ-brest.fr Jalil Boukhobza Univ. Bretagne
More informationFlash-Friendly File System (F2FS)
Flash-Friendly File System (F2FS) Feb 22, 2013 Joo-Young Hwang (jooyoung.hwang@samsung.com) S/W Dev. Team, Memory Business, Samsung Electronics Co., Ltd. Agenda Introduction FTL Device Characteristics
More informationThere are various types of NAND Flash available. Bare NAND chips, SmartMediaCards, DiskOnChip.
NAND FLASH NAND vs. NOR Beside the different silicon cell design, the most important difference between NAND and NOR Flash is the bus interface. NOR Flash is connected to a address / data bus direct like
More informationImpact of Stripe Unit Size on Performance and Endurance of SSD-Based RAID Arrays
1 Impact of Stripe Unit Size on Performance and Endurance of SSD-Based RAID Arrays Farzaneh Rajaei Salmasi Hossein Asadi Majid GhasemiGol rajaei@ce.sharif.edu asadi@sharif.edu ghasemigol@ce.sharif.edu
More informationNAND Flash & Storage Media
ENABLING MULTIMEDIA NAND Flash & Storage Media March 31, 2004 NAND Flash Presentation NAND Flash Presentation Version 1.6 www.st.com/nand NAND Flash Memories Technology Roadmap F70 1b/c F12 1b/c 1 bit/cell
More informationObject-based SCM: An Efficient Interface for Storage Class Memories
Object-based SCM: An Efficient Interface for Storage Class Memories Yangwook Kang Jingpei Yang Ethan L. Miller Storage Systems Research Center, University of California, Santa Cruz {ywkang, yangjp, elm}@cs.ucsc.edu
More informationDisks and RAID. Profs. Bracy and Van Renesse. based on slides by Prof. Sirer
Disks and RAID Profs. Bracy and Van Renesse based on slides by Prof. Sirer 50 Years Old! 13th September 1956 The IBM RAMAC 350 Stored less than 5 MByte Reading from a Disk Must specify: cylinder # (distance
More informationData Distribution Algorithms for Reliable. Reliable Parallel Storage on Flash Memories
Data Distribution Algorithms for Reliable Parallel Storage on Flash Memories Zuse Institute Berlin November 2008, MEMICS Workshop Motivation Nonvolatile storage Flash memory - Invented by Dr. Fujio Masuoka
More informationFlash Memory Database (FMDB) Issues and Promising
Flash Memory Database (FMDB) Issues and Promising Nooruldeen Nasih Qader 1, Mohammed Anwar Mohammed 2, Danial Abdulkareem Muhammed 3 Department of Computer Science, University of Sulaimani, IRAQ. 1 nuraddin.nasih@gmail.com,
More informationOn Benchmarking Popular File Systems
On Benchmarking Popular File Systems Matti Vanninen James Z. Wang Department of Computer Science Clemson University, Clemson, SC 2963 Emails: {mvannin, jzwang}@cs.clemson.edu Abstract In recent years,
More informationProgramming NAND devices
Technical Guide Programming NAND devices Kelly Hirsch, Director of Advanced Technology, Data I/O Corporation Recent Design Trends In the past, embedded system designs have used NAND devices for storing
More informationSampling-based Metadata Management for Flash Storage
Sampling-based Metadata Management for Flash Storage Biplob Debnath, Srinivasan Krishnan, Weijun Xiao, David J. Lilja, David Du E-mail: Department of Electrical and Computer Engineering Department of Computer
More informationThe Implementation of a Hybrid-Execute-In-Place Architecture to Reduce the Embedded System Memory Footprint and Minimize Boot Time
The Implementation of a Hybrid-Execute-In-Place Architecture to Reduce the Embedded System Memory Footprint and Minimize Boot Time Tony Benavides, Justin Treon, Jared Hulbert, and Willie Chang 1 Flash
More informationThe Evolving Role of Flash in Memory Subsystems. Greg Komoto Intel Corporation Flash Memory Group
The Evolving Role of Flash in Memory Subsystems Greg Komoto Intel Corporation Flash Memory Group Legal Disclaimer INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL PRODUCTS and TECHNOLOGY.
More informationSSD Performance Tips: Avoid The Write Cliff
ebook 100% KBs/sec 12% GBs Written SSD Performance Tips: Avoid The Write Cliff An Inexpensive and Highly Effective Method to Keep SSD Performance at 100% Through Content Locality Caching Share this ebook
More informationFRASH: Exploiting Storage Class Memory in Hybrid File System for Hierarchical Storage
FRASH: Exploiting Storage Class Memory in Hybrid File System for Hierarchical Storage JAEMIN JUNG and YOUJIP WON Hanyang University, Seoul and EUNKI KIM, HYUNGJONG SHIN, and BYEONGGIL JEON Samsung Electronics,
More informationScalus Winter School Storage Systems
Scalus Winter School Storage Systems Flash Memory André Brinkmann Flash Memory Floa:ng gate of a flash cell is electrically isolated Applying high voltages between source and drain accelerates electrons
More informationNAND Flash FAQ. Eureka Technology. apn5_87. NAND Flash FAQ
What is NAND Flash? What is the major difference between NAND Flash and other Memory? Structural differences between NAND Flash and NOR Flash What does NAND Flash controller do? How to send command to
More informationIntegrating NAND Flash Devices onto Servers By David Roberts, Taeho Kgil, and Trevor Mudge
Integrating NAND Flash Devices onto Servers By David Roberts, Taeho Kgil, and Trevor Mudge doi:.45/498765.49879 Abstract Flash is a widely used storage device in portable mobile devices such as smart phones,
More informationPerformance Modeling and Analysis of a Database Server with Write-Heavy Workload
Performance Modeling and Analysis of a Database Server with Write-Heavy Workload Manfred Dellkrantz, Maria Kihl 2, and Anders Robertsson Department of Automatic Control, Lund University 2 Department of
More informationBER-Based Wear Leveling and Bad Block Management for NAND Flash
BER-Based Wear Leveling and Bad Block Management for NAND Flash Borja Peleato, Haleh Tabrizi, Rajiv Agarwal, Jeffrey Ferreira Electrical and Computer Engineering, Purdue University bpeleato@purdueedu DSSD,
More informationComputer Architecture
Computer Architecture Slide Sets WS 2013/2014 Prof. Dr. Uwe Brinkschulte M.Sc. Benjamin Betting Part 11 Memory Management Computer Architecture Part 11 page 1 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin
More informationThe assignment of chunk size according to the target data characteristics in deduplication backup system
The assignment of chunk size according to the target data characteristics in deduplication backup system Mikito Ogata Norihisa Komoda Hitachi Information and Telecommunication Engineering, Ltd. 781 Sakai,
More informationMulti-level Metadata Management Scheme for Cloud Storage System
, pp.231-240 http://dx.doi.org/10.14257/ijmue.2014.9.1.22 Multi-level Metadata Management Scheme for Cloud Storage System Jin San Kong 1, Min Ja Kim 2, Wan Yeon Lee 3, Chuck Yoo 2 and Young Woong Ko 1
More informationImplementation of Wireless Gateway for Smart Home
Communications and Network, 2013, 5, 16-20 doi:10.4236/cn.2013.51b005 Published Online February 2013 (http://www.scirp.org/journal/cn) Implementation of Wireless Gateway for Smart Home Yepeng Ni 1, Fang
More informationHFM: Hybrid File Mapping Algorithm for SSD Space Utilization
Appl. Math. Inf. Sci., No., - () Applied Mathematics & Information Sciences An International Journal http://dx.doi.org/./amis/ HFM: Hybrid File Mapping Algorithm for SSD Space Utilization Jaechun No,,
More informationIntel DPDK Boosts Server Appliance Performance White Paper
Intel DPDK Boosts Server Appliance Performance Intel DPDK Boosts Server Appliance Performance Introduction As network speeds increase to 40G and above, both in the enterprise and data center, the bottlenecks
More informationCOS 318: Operating Systems. Storage Devices. Kai Li Computer Science Department Princeton University. (http://www.cs.princeton.edu/courses/cos318/)
COS 318: Operating Systems Storage Devices Kai Li Computer Science Department Princeton University (http://www.cs.princeton.edu/courses/cos318/) Today s Topics Magnetic disks Magnetic disk performance
More informationWhat Types of ECC Should Be Used on Flash Memory?
What Types of ECC Should Be Used on Flash Memory? Application 1. Abstract NOR Flash normally does not need ECC (Error-Correcting Code). On the other hand, NAND requires ECC to ensure data integrity. NAND
More informationPrice/performance Modern Memory Hierarchy
Lecture 21: Storage Administration Take QUIZ 15 over P&H 6.1-4, 6.8-9 before 11:59pm today Project: Cache Simulator, Due April 29, 2010 NEW OFFICE HOUR TIME: Tuesday 1-2, McKinley Last Time Exam discussion
More informationExtent Mapping Scheme for Flash Memory Devices
2012 IEEE 20th International Symposium on Modeling, Analysis and Simulation of Computer and Telecommunication Systems Extent Mapping Scheme for Flash Memory Devices Young-Kyoon Suh, Bongki Moon, Alon Efrat
More informationAn Approach to High-Performance Scalable Temporal Object Storage
An Approach to High-Performance Scalable Temporal Object Storage Kjetil Nørvåg Department of Computer and Information Science Norwegian University of Science and Technology 791 Trondheim, Norway email:
More informationNAND Flash-based Disk Cache Using SLC/MLC Combined Flash Memory
International Workshop on Storage Network Architecture and Parallel I/Os NAND Flash-based Disk Cache Using /MLC Combined Flash Memory Seongcheol Hong School of Information and Communication Engineering
More informationOnline Remote Data Backup for iscsi-based Storage Systems
Online Remote Data Backup for iscsi-based Storage Systems Dan Zhou, Li Ou, Xubin (Ben) He Department of Electrical and Computer Engineering Tennessee Technological University Cookeville, TN 38505, USA
More informationOSDsim - a Simulation and Design Platform of an Object-based Storage Device
OSDsim - a Simulation and Design Platform of an Object-based Storage Device WeiYa Xi Wei-Khing For DongHong Wang Renuga Kanagavelu Wai-Kit Goh Data Storage Institute, Singapore xi weiya@dsi.a-star.edu.sg
More informationFile System & Device Drive. Overview of Mass Storage Structure. Moving head Disk Mechanism. HDD Pictures 11/13/2014. CS341: Operating System
CS341: Operating System Lect 36: 1 st Nov 2014 Dr. A. Sahu Dept of Comp. Sc. & Engg. Indian Institute of Technology Guwahati File System & Device Drive Mass Storage Disk Structure Disk Arm Scheduling RAID
More informationHow To Improve Flash Translation Layer Performance
A Workload-Aware Adaptive Hybrid Flash Translation Layer with an Efficient Caching Strategy Dongchul Park, Biplob Debnath and David H.C. Du Department of Computer Science and Engineering University of
More information