Garbage Collection Technique using Erasure Interval for NAND Flash Memory-based Storage Systems
|
|
|
- Edwina Benson
- 9 years ago
- Views:
Transcription
1 Garbage Collection Technique using Erasure Interval for NAND Flash Memory-based Storage Systems Sung Ho Kim Ph. D. Candidate, Department of Computer Engineering, Yeungnam University, Dae-dong, Gyeongsan-si, Gyeongsangbuk-do, South Korea. Jong Wook Kwak Associate Professor, Department of Computer Engineering, Yeungnam University, Dae-dong, Gyeongsan-si, Gyeongsangbuk-do, South Korea. Abstract Recently, many storage systems use SSD based on NAND flash memory, which has many advantages such as low power, low access latency and high reliability. However, NAND flash memory has disadvantages such as erase-beforeprogram, limited P/E cycle, and unbalanced operation latency, compared to conventional magnetic disks. To solve these problems, many works mainly adopt FTL with garbage collection in NAND flash memory systems. However, previous garbage collection techniques are sensitive to the write pattern. In this paper, we propose a garbage collection technique based on the erasure interval, which is called EIGC (Erasure Interval-based Garbage Collection). EIGC is insensitive to the write pattern, compared to other techniques. The proposed technique prolonged the system lifetime about 13% and it reduced the garbage collection overhead about 42.4%, on average. Moreover, our technique reduced the standard deviation about 22.3% on average, compared to other techniques. Keywords: NAND flash memory, garbage collection, storage systems, erasure interval, lifetime. Introduction Recently, many storage systems use SSD (Solid State Disk) based on NAND flash memory, which has many advantages such as low power, low access latency and high reliability, unlike conventional magnetic disks. Moreover, NAND flash memory is advantageous for storage systems because it can make a high capacity with inexpensive cost. Because of these advantages, NAND flash memory is adopted in variety devices like sensor nodes, smart-phones, tablets, IoT (Internet of Things), and so on. However, NAND flash memory has disadvantages, largely compared to conventional magnetic disks. NAND flash memory does not support in-place-update, which must perform the erase operation before the program (i.e., write) operation to perform in-place-update. The erase-beforeprogram increases the program operation latency of entire NAND flash memory, as shown in Table 1 [1-2]. In the worst case, the erase-before-program is slower up to 2.8 times for each one program operation. Moreover, the units of the read or program operations are a page and the units of erase operation are blocks. The block consists of pages. Thus, the erase-before-program has valid pages in the block, corresponding to the in-place update and it requires additional overhead for page migrations as much as the number of valid pages in each block. Table 1: Performance comparison of NAND flash memory operations Operation Unit Latency SLC MLC Read Page 25us 60us Program Page 200us 800us Erase Block 700us 1.5ms NAND flash memory is classified into two types according to the number of bits per cell, which is called SLC (Single-Level Cell) and MLC (Multi-Level Cell), respectively. SLC and MLC have 1-bit and 2-bit for one cell respectively, which has the limited number of P/E (Program/Erase) cycles of about 100,000 and about 10,000 respectively. SLC and MLC show a different relation between P/E cycles and bits per cell, which means a trade-off relation. Moreover, NAND flash memory has a lower endurance up to 100 times as the limited number of blocks per endurance, compared to conventional magnetic disks. To solve these problems of NAND flash memory, many previous works mainly adopt FTL (Flash Translation Layer). Garbage collection and wear leveling, in FTL, are a technique to improve a lower endurance [3-10]. In particular, many pervious works tried to prolong the lifetime by garbage collection. However, previous garbage collection techniques are sensitive to write patterns. In this paper, we propose a garbage collection technique based on the erasure interval, which is called EIGC (Erasure Interval-based Garbage Collection). EIGC has the characteristics to perform the block recycling using the erasure interval, which is insensitive to the write patterns, compare to other techniques. The rest of this paper is organized as follows. Section 2 presents a background of our system architecture for general NAND flash memory and analyzes previous works with garbage collection. In section 3, we describe the detailed algorithm of EIGC. Section 4 evaluates the performance of our proposal, compared to other techniques. Finally, section 5 concludes this paper. 5188
2 Background and Related Works Background: NAND flash memory cannot use a file system of conventional magnetic disks because of the critical technical constraints such as the limited number of P/E cycles and the erase-beforewrite. To solve these technical constraints, NAND flash memory adopts a software layer between a file system and MTD (Memory Technology Device) layer, which is called FTL. MTD layer performs a raw operation of read, program and erase between FTL and NAND flash memory chip. Typically, FTL consists of three modules: address translation table, garbage collection and wear leveling, as shown in Figure 1 [11]. Figure 1: System Architecture based on SSD Address translation table is the module to solve the erasebefore-program problem, which translates the physical address to the logical address. The physical address means the actual address of block or page in NAND flash memory, and the logical address is the virtual address defined by FTL. As the program operation process of address translation table, when a file system requests the write, NAND flash memory performs the program operation in a free (i.e., empty) page of physical address, and then the physical address is mapped into the logical address corresponding to address translation table. As the read operation process of address translation table, when a file system requests the read, NAND flash memory gets the page data corresponding to the physical address through the logical address, in address translation table. As a result, address translation table is possible to perform the inplace-update, without the erase-before-program. Typically, address translation table is classified into three types; page mapping, block mapping and hybrid mapping, according to the mapping unit. Garbage collection is the technique to secure the free (i.e., empty) block by the block recycling policy when storage systems is lack of the free block. In this case, garbage collection manages the free block by sacrificing one or more blocks among used (i.e., allocated) blocks. Thus, garbage collection affects the performance of entire NAND flash memory according to the block recycling policy. As the process of garbage collection trigger, if the number of free blocks in FTL drops below the predefined number of blocks in system configuration of NAND flash memory, it performs garbage collection. Typically, FTL maintains the number of free blocks of about 5 percent among the total blocks. Wear leveling is the technique to prolong the lifetime of NAND flash memory, to overcome shorter lifetime of flash memory systems. Thus, the wear leveling is important to prolong the lifetime of entire NAND flash memory through a lower overhead. Wear leveling is classified into two methods: dynamic ware leveling and static ware leveling. The target of dynamic wear leveling is dynamic program or code area blocks, and the target of static wear leveling is all blocks, including OS area. Related Works: Previous works tried to prolong the lifetime through the lower page migrations overhead of garbage collection [12-15]. Typically, garbage collection is performed through the following processes: 1) If the number of free blocks drops below the percent of system configuration in NAND flash memory, FTL calls garbage collection module. 2) Garbage collection selects a victim block by the block recycling policy. 3) Garbage collection copies all valid (i.e., used) pages in the victim block to RAM buffer. 4) All valid pages of the RAM buffer copy the active block. 5) The victim block is erased by garbage collection. 6) If FTL satisfies the number of minimal free blocks, garbage collection ends all process. Otherwise, garbage collection performs Step 1 again. In this process, many previous works were proposed for the block recycling policy. GA (Greedy Algorithm) is a representative technique of garbage collection, which selects the block corresponding to the least utilization of valid pages [16]. CB (Cost-Benefit) is the technique based on the elapsed time, which selects the block corresponding to the largest cost using the last invalid time and the valid page percentage [17]. CAT (Cost-Age-Time) is the technique to overcome the disadvantage of CB, which selects the block corresponding to the least cost using the last update time and the erasure count [18]. The block allocation policy of GA, CB, and CAT uses FIFO (First-In First-Out). SAGC (Swap-Aware Garbage Collection) is the technique for portable consumer electronics, which selects the block corresponding to the largest cost using the sum of the last invalid time of each page. The block allocation policy of SAGC uses the youngest block first [19]. FeGC (Fast and endurance Garbage Collection) is the technique for storage systems, which selects the block as the SAGC policy. The block allocation policy of FeGC, however, uses the adaptive youngest block allocation [20]. SCATA (Swap-aware Cost-Age-Time with Age-sort) is the technique for linux swap system, which selects the block corresponding to the largest cost using the time difference of the last invalid 5189
3 and the first valid of each page [21]. SACATA (Swap-Aware Cost-Age-Time Age-sort) is similar to SCATA policy, but it has difference to consider the maximum and minimum erasure count in all blocks [22]. The block allocation policy of SCATA and SACATA uses FIFO. The detailed garbage collection techniques are summarized in Table 2. Table 2: A comparison of garbage collection techniques Techniques Block recycling policy Block allocation policy GA Select the block correspondingto the FIFO least utilization of valid pages CB Select the block correspondingto the FIFO largest cost (a (1 u)) cost = 2u a = c_time i_time u : the percent of valid page CAT Select the block correspondingto the FIFO least cost cost = u 1 u 1 a EC a = c_time u_time EC : erasure count SAGC Select the block correspondingto the Youngest block largest CAV first FeGC n CAV = i_age i i=1 i_age i = c_time i_time i c_time : current time i_time i : the invalid time of page Select the block correspondingto the largest CwA n CwA = i_age i i=1 SCATA Select the block correspondingto the FIFO largest cost cost = max (age i ) 1 EC min (est i ) 1 u 1 + u este i = c_time o_time i o_time i : the valid time of page SACATA Select the block correspondingto the FIFO largest cost cost = max (age i ) 1 u 1 + u min (est i) EC max EC min EC EC min + 1 EC max : the maximum erasure count of all blocks EC min : the minimum erasure count of all blocks Adaptive youngest block allocation Moreover, garbage collection affects the victim block selection of block recycling policy. In this paper, the proposed technique has the characteristics to perform the block recycling policy using the erasure interval, which is insensitive to write patterns, compare to previous techniques. Erasure Interval-based Garbage Collection Overview In this section, we propose a garbage collection technique based on the erasure interval, which is called EIGC (Erasure Interval-based Garbage Collection). We describe the EIGC technique through the following section B and section C. Section B describes the block allocation policy when FTL is lack of free (e.g. empty) pages within the active blocks, and section C describes the garbage collection policy when the number of free blocks in FTL drops below the system configuration in NAND flash memory. Block Allocation Policy Storage systems based on NAND flash memory typically maintain one block for the program operation, which is called the active block. When NAND flash memory fills all pages out in the active block by the program operation, FTL allocates one block among free blocks. Block allocation policy typically uses FIFO, which is simple but inefficient. Moreover, FIFO usually allocates low index blocks, which is not suitable for block allocation policy. The allocation of low index block results in the unbalanced endurance of all blocks in NAND flash memory. Thus, we propose the block allocation policy to replace the FIFO policy, which is called LEF (Lowest Erasure count First). To effectively manage the free blocks of NAND flash memory, LEF uses a n heap using a binary tree, which satisfies O(1) search time. LEF reduces the search latency of free blocks. LEF allocates the free block through the following processes, as shown in Figure 2: 1) If NAND flash memory fills all pages in the active block, FTL performs block allocation policy. 2) LEF pops the root node, which corresponds to the lowest erase count among free blocks. 3) FTL changes the used block to the active block. 4) FTL allocates the active block to the free block corresponding to the root node. As shown in the techniques above, the problems of their proposals are that they only used one interval time after garbage collection, which does not consider all interval times of garbage collection. As a result, it does not consider the change of write patterns from the past time to the current time. Figure 2: Block allocation policy of LEF 5190
4 Garbage Collection Policy In this section, we describe the garbage collection policy based on the erasure interval. As shown Figure 3, for example, we assumes that there exist in block 0, block 1, block 2, and block 3 in NAND flash memory. Each block has the erasure interval. When the block is changed from free block to used block, EIGC begins to measure the erasure interval in the block. When the block is changed again from free block to used block, EIGC ends the measurement of the erasure interval of the block. In other words, the erasure interval means an interval between the previous erase operation and the current erase operation. All blocks have many erasure intervals during their lifetime, which is called N-erasure interval. Thus, we measure two factors during N-erasure interval: the time and the ratio of valid pages. N-erasure interval obtains these two factors by equation (1), which is given by c_ei_time = (e_time + ei_time) α c_ei_u = (u + ei_u) α (1) where e_time is the time to perform the erasure operation of the block by garbage collection, ei_time is the time during the erasure interval, c_ei_time is the time of current erasure interval calculated by the e_timeand the ei_time, u is the ratio of valid pages to perform the erasure operation of the block by garbage collection, ei_u is the ratio of valid pages during erasure interval, c_ei_u is the ratio of current valid pages calculated by the u and the ei_u, α is the weight. We consider all interval values during N-erasure interval. Thus, we use 0.5 of α value. Figure 3: Timing diagram of NAND flash memory EIGC selects the victim block using two factors of N-erasure interval. First, EIGC calculates the elapsed time of block using c_ei_time of the block by equation (2), which is given by time = c_time c_ei_time (2) where c_time is the current time, c_ei_time is the time calculated during the erasure interval. Then, EIGC calculates the victim cost using time and c_ei_u of the block by equation (3), which is given by cost = u 1 u 1 c_ei_u EC time (3) whereu is the ratio of valid pages, timeis the elapsed time of block obtained by equation (2), c_ei_u is the ratio of valid pages calculated during the erasure interval, EC is the erase count of block. In the victim block, EIGC selects a block corresponding to the least cost among all blocks. EIGC considers the current cost corresponding to the ratio of invalid pages and the ratio of valid pages, and it also considers the time and the ratio of valid pages measured during the erasure interval. Moreover, EIGC considers the erase count of block. As a result, EIGC effectively selects a victim block because garbage collection policy considers the ratio of valid and invalid pages (i.e., current cost), N-erasure interval (i.e., elapsed time cost), and the erase count (i.e., worn durability). Performance Evaluation Experimental Setup In this section, we evaluate the performance of EIGG. In our simulation, we use SSD simulator, based on Disksim simulation environment 4.0 [23-24]. To perform our experiments, we exploit three datasets, shown in Table 3. Table 3: A write pattern ratio of simulation environment Dataset Hot ratio Cold ratio trace1 10% 90% trace2 20% 80% trace3 30% 70% 5191
5 In Figure 4, we show the distribution counts of write operation in NAND flash memory. In the write distribution feature of our experiments, we use a normal distribution, which is a very common probability distribution. The probability density of the normal distribution is based on the equation (4), which is given by p = 1 2πσ e (x u)2 /2σ 2 (4) whereuis the mean or expectation of the distribution. The parameter σis its standard deviation. In our experiments, we selected the following performance indicator: the system lifetime, the garbage collection overhead, and standard deviation. In the system lifetime, we measured the elapsed time from the first bad block to the system failure time. In particular, it is important to reduce the elapsed time between first failure time and system failure time, because the spatial efficiency of storage system is reduced after the first bad time. In the garbage collection overhead, we measured the page migrations and response time during garbage collection. NAND flash memory has a correlation between the page migrations and response time. Finally, in the worn durability, we measured the standard deviation of all blocks in NAND flash memory. Figure 4: Normal distribution of each trace Based on the indicators above, we performed the simulation. In the simulation procedures, we use the MLC specification based on NAND flash memory developed by Samsung Electronics, as shown in Table 4 [2]. Performance Analysis As described in section 3, we evaluated LEF with EIGC, which denoted the block allocation policy of EIGC in all experimental results. First, we measured the first bad time and system failure time, as shown in Figure 5. LEF+EIGC prolonged the first bad time up to 41.1%, 15.5%, 13.5%, 3.4%, 80.4%, 10.3%, 10.3%, and 11.3%, and it prolonged the system failure time up to 24%, 10.4%, 9.1%, 3.4%, 31.9%, 10.4% 10.4%, and 3.8%, compared with GA, CB, CAT, SAGC, FeGC, SCATA, SACATA, and FIFO+EIGC respectively. As mentioned above, the spatial efficiency of NAND flash memory is very important. To improve the spatial efficiency, it is important for storage system to reduce the elapsed time until the system failure time after the first bad block, which is called system failure elapsed time in this paper. Our experiment measured the system failure elapsed time from the system lifetime, as shown in Figure 6. Usually, if the system failure elapsed time is below 1%, it usually treated as optimization in terms of garbage collection design. Thus, EIGC showed the performance optimization in terms of system failure elapsed time. Next, we measured the page migrations and response time during garbage collection, as shown in Figure 7 and Figure 8. LEF+EIGC reduced the page migrations up to 81.6%, 68.4%, 72.4%, 62.8%, 106.3%, 105%, 105%, and 1.5%, and it reduced the response time up to 58.7%, 49.1%, 52.1%, 45.3%, 76.4%, 76.5%, 76.5%, and 1.1%, compared with GA, CB, CAT, SAGC, FeGC, SCATA, SACATA, and FIFO+EIGC respectively. Finally, we measured the standard deviation of all blocks, as shown in Figure 9. LEF+EIGC reduced the standard deviation up to 20.5%, 16.4%, 16.2%, 14.9%, 22.3%, 16.2%, 16.2%, and 0.2%, compared with GA, CB, CAT, SAGC, FeGC, SCATA, SACATA, and FIFO+EIGC respectively. Table 4: Configurations of simulation environment Description Value Total capacity 4Gb Reserved free blocks 15% Garbage collection condition # of free blocks <5% Flash chip elements 1 Planes per elements 1 Blocks per plane 2048 Pages per block 64 Page size 4KB Page read latency 60us Page program latency 800us Block erase latency 1.5ms Lifetime per block 10 4 Figure 5: The first bad time and the system failure 5192
6 Figure 6: The ratio of system failure elapsed time among the system lifetime Conclusion Recently, many storage systems use SSD based on NAND flash memory, which has many advantages such as low power, low access latency and high reliability. However, NAND flash memory has disadvantages such as erase-beforeprogram, limited P/E cycle, and unbalanced operation latency, compared to conventional magnetic disks. To solve these problems of NAND flash memory, we proposed a garbage collection technique based on the erasure interval, which is called EIGC. EIGC has the characteristics to perform the block recycling using an erasure interval, which is insensitive to write patterns, compare to other previous techniques. In addition, we also proposed the block allocation policy of EIGC, which is called LEF. LEF manages a free blocks efficiently to consider block endurance, using min heap. In experimental results, we evaluated the performance of our proposal through three indicators: system lifetime, operation overhead and standard deviation. LEF+EIGC prolonged the system lifetime about 13%, and it reduced the garbage collection overhead about 42.4%, on average, compared to other techniques. Moreover, LEF+EIGC reduced the standard deviation up to 22.3%, compared to other techniques. In particular, LEF+EIGC prolonged the system lifetime up to 7.6%, compared to FIFO+EIGC. Figure 7: Normalized average page migrations during garbage collection Acknowledgement Second author (*) is a corresponding author. This research was supported by Basic Science Research Program through the National Research Foundation of Korea (NRF) funded by the Ministry of Education (NRF-2014R1A1A ). References Figure 8: Average response time during garbage collection Figure 9: Normalized standard deviation [1] MT29F4G08ABADAWP 8Gbit SLC NAND Flash Memory Data Sheet, Micro Technology, [2] K9GAG08U0M 2G x 8bit MLC NAND Flash Memory Data Sheet, Samsung Electronics, Feb, [3] Wang, Chundong, and Weng-Fai Wong. "Observational wear leveling: an efficient algorithm for flash memory management." Design Automation Conference (DAC), th ACM/EDAC/IEEE. IEEE, [4] Lee, Junghee, et al. "A semi-preemptive garbage collector for solid state drives." Performance Analysis of Systems and Software (ISPASS), 2011 IEEE International Symposium on. IEEE, [5] Chang, Li-Pin, and Li-Chun Huang. "A low-cost wear-leveling algorithm for block-mapping solidstate disks." ACM SIGPLAN Notices. Vol. 46. No. 5. ACM, [6] Lin, M. W., and Song Yan Chen. "Swap time-aware garbage collection policy for NAND flash-based swap system." Electronics Letters 49.24, pp , [7] Lim, Seung-Ho, and Kyu-Ho Park. "An efficient NAND flash file system for flash memory storage." 5193
7 Computers, IEEE Transactions on 55.7, pp , [8] Ji, Seunggu, and Dongkun Shin. "Locality and duplication-aware garbage collection for flash memory-based virtual memory systems." Computer and Information Technology (CIT), 2010 IEEE 10th International Conference on. IEEE, [9] Murugan, Muthukumar, and David HC Du. "Rejuvenator: A static wear leveling algorithm for NAND flash memory with minimized overhead." Mass Storage Systems and Technologies (MSST), 2011 IEEE 27th Symposium on. IEEE, [10] Liao, Jianwei, et al. "Adaptive wear-leveling in flashbased memory." Computer Architecture Letters, 14.1, 1-4, [11] Ma, Dongzhe, Jianhua Feng, and Guoliang Li. "A survey of address translation technologies for flash memories." ACM Computing Surveys (CSUR) 46.3, pp. 36, [12] Yang, Ming-Chang, et al. "Garbage collection and wear leveling for flash memory: Past and future." Smart Computing (SMARTCOMP), 2014 International Conference on. IEEE, [13] Jeong, Jaehyeong, and Yong Ho Song. "A technique to improve garbage collection performance for NAND flash-based storage systems." Consumer Electronics, IEEE Transactions on 58.2, pp , [14] Chung, Ching-Che, Duo Sheng, and Ning-Mi Hsueh. "A high-performance wear-leveling algorithm for flash memory system." IEICE Electronics Express 9.24, pp , [15] Yang, Ming-Chang, et al. "New ERA: new efficient reliability-aware wear leveling for endurance enhancement of flash storage devices." Proceedings of the 50th Annual Design Automation Conference. ACM, [16] Wu, Michael, and Willy Zwaenepoel. "envy: a nonvolatile, main memory storage system." ACM SigPlan Notices. Vol. 29. No. 11. ACM, [17] Kawaguchi, Atsuo, Shingo Nishioka, and Hiroshi Motoda. "A Flash-Memory Based File System." USENIX [18] Chiang, M-L., and R-C. Chang. "Cleaning policies in mobile computers using flash memory." Journal of Systems and Software 48.3, pp , [19] Kwon, Ohhoon, and Kern Koh. "Swap space management technique for portable consumer electronics with NAND flash memory." Consumer Electronics, IEEE Transactions on 56.3, pp , [20] Kwon, Ohhoon, et al. "FeGC: An efficient garbage collection scheme for flash memory based storage systems." Journal of Systems and Software 84.9, pp , [21] Lin, M. W., et al. "Garbage collection policy for flash-aware Linux swap system." Electronics letters 47.22, pp , [22] Lin, Mingwei, and Shuyu Chen. "Flash-aware linux swap system for portable consumer electronics." Consumer Electronics, IEEE Transactions on 58.2, pp , [23] Prabhakaran, Vijayan, and Ted Wobber. "SSD extension for DiskSim simulation environment."microsoft Reseach, [24] Bucy, John S., et al. "The disksim simulation environment version 4.0 reference manual (cmu-pdl )." Parallel Data Laboratory, 26,
Offline 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
2LGC: 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
In-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
Implementation 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
p-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
SH-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
Data 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
Buffer-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,
FASS : 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,
NAND 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
Flash 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,
BER-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,
SOS: 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,
Data 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
RNFTL: 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
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
Sampling-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
A 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
Indexing 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
Flash-Friendly File System (F2FS)
Flash-Friendly File System (F2FS) Feb 22, 2013 Joo-Young Hwang ([email protected]) S/W Dev. Team, Memory Business, Samsung Electronics Co., Ltd. Agenda Introduction FTL Device Characteristics
Linux 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
Solid State Drive (SSD) FAQ
Solid State Drive (SSD) FAQ Santosh Kumar Rajesh Vijayaraghavan O c t o b e r 2 0 1 1 List of Questions Why SSD? Why Dell SSD? What are the types of SSDs? What are the best Use cases & applications for
Choosing the Right NAND Flash Memory Technology
Choosing the Right NAND Flash Memory Technology A Basic Introduction to NAND Flash Offerings Dean Klein Vice President of System Memory Development Micron Technology, Inc. Executive Summary A 75% increase
A 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
A 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: [email protected]
A 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
Solid State Technology What s New?
Solid State Technology What s New? Dennis Martin, President, Demartek www.storagedecisions.com Agenda: Solid State Technology What s New? Demartek About Us Solid-state storage overview Types of NAND flash
Empirical 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
Flash 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 [email protected],
hybridfs: 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
HybridLog: 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
Don t Let RAID Raid the Lifetime of Your SSD Array
Don t Let RAID Raid the Lifetime of Your SSD Array Sangwhan Moon Texas A&M University A. L. Narasimha Reddy Texas A&M University Abstract Parity protection at system level is typically employed to compose
Understanding endurance and performance characteristics of HP solid state drives
Understanding endurance and performance characteristics of HP solid state drives Technology brief Introduction... 2 SSD endurance... 2 An introduction to endurance... 2 NAND organization... 2 SLC versus
NAND 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
FAST 11. Yongseok Oh <[email protected]> University of Seoul. Mobile Embedded System Laboratory
CAFTL: A Content-Aware Flash Translation Layer Enhancing the Lifespan of flash Memory based Solid State Drives FAST 11 Yongseok Oh University of Seoul Mobile Embedded System Laboratory
NAND Flash Memory Reliability in Embedded Computer Systems
WHITE PAPER NAND Flash Memory Reliability in Embedded Computer Systems Ian Olson INTRODUCTION NAND flash memory named after the NAND logic gates it is constructed from is used for nonvolatile data storage
Design of a High-speed and large-capacity NAND Flash storage system based on Fiber Acquisition
Design of a High-speed and large-capacity NAND Flash storage system based on Fiber Acquisition Qing Li, Shanqing Hu * School of Information and Electronic Beijing Institute of Technology Beijing, China
Implementation 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
Exploiting 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
Impact 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 [email protected] [email protected] [email protected]
NAND Flash Architecture and Specification Trends
NAND Flash Architecture and Specification Trends Michael Abraham ([email protected]) NAND Solutions Group Architect Micron Technology, Inc. August 2012 1 Topics NAND Flash Architecture Trends The Cloud
Solid State Drive Technology
Technical white paper Solid State Drive Technology Differences between SLC, MLC and TLC NAND Table of contents Executive summary... 2 SLC vs MLC vs TLC... 2 NAND cell technology... 2 Write amplification...
File 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
Scalus 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
Lifetime Improvement of NAND Flash-based Storage Systems Using Dynamic Program and Erase Scaling
Lifetime Improvement of NAND Flash-based Storage Systems Using Dynamic Program and Erase Scaling Jaeyong Jeong and Sangwook Shane Hahn, Seoul National University; Sungjin Lee, MIT/CSAIL; Jihong Kim, Seoul
NAND Basics Understanding the Technology Behind Your SSD
03 Basics Understanding the Technology Behind Your SSD Although it may all look the same, all is not created equal: SLC, 2-bit MLC, 3-bit MLC (also called TLC), synchronous, asynchronous, ONFI 1.0, ONFI
SLC vs MLC: Which is best for high-reliability apps?
SLC vs MLC: Which is best for high-reliability apps? Here's an examination of trade-offs, with an emphasis on how they affect the reliability of storage targeted at industrial, military and avionic applications.
Endurance Models for Cactus Technologies Industrial-Grade Flash Storage Products. White Paper CTWP006
Endurance Models for Cactus Technologies Industrial-Grade Flash Storage Products White Paper CTWP006 Cactus Technologies Limited Suite C, 15/F, Capital Trade Center 6 Tsun Yip Street, Kwun Tong Kowloon,
SLC vs MLC: Proper Flash Selection for SSDs in Industrial, Military and Avionic Applications. A TCS Space & Component Technology White Paper
SLC vs MLC: Proper Flash Selection for SSDs in Industrial, Military and Avionic Applications A TCS Space & Component Technology White Paper Introduction As with most storage technologies, NAND Flash vendors
JAM: 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
Flash 101. Violin Memory Switzerland. Violin Memory Inc. Proprietary 1
Flash 101 Violin Memory Switzerland Violin Memory Inc. Proprietary 1 Agenda - What is Flash? - What is the difference between Flash types? - Why are SSD solutions different from Flash Storage Arrays? -
Solid State Drive Architecture
Solid State Drive Architecture A comparison and evaluation of data storage mediums Tyler Thierolf Justin Uriarte Outline Introduction Storage Device as Limiting Factor Terminology Internals Interface Architecture
The Bleak Future of NAND Flash Memory
The Bleak Future of NAND Memory Laura M. Grupp, John D. Davis, Steven Swanson Department of Computer Science and Engineering, University of California, San Diego Microsoft Research, Mountain View Abstract
Speeding Up Cloud/Server Applications Using Flash Memory
Speeding Up Cloud/Server Applications Using Flash Memory Sudipta Sengupta Microsoft Research, Redmond, WA, USA Contains work that is joint with B. Debnath (Univ. of Minnesota) and J. Li (Microsoft Research,
Flash-optimized Data Progression
A Dell white paper Howard Shoobe, Storage Enterprise Technologist John Shirley, Product Management Dan Bock, Product Management Table of contents Executive summary... 3 What is different about Dell Compellent
Differential RAID: Rethinking RAID for SSD Reliability
Differential RAID: Rethinking RAID for SSD Reliability ABSTRACT Asim Kadav University of Wisconsin Madison, WI [email protected] Vijayan Prabhakaran [email protected] Deployment of SSDs in enterprise
Algorithms 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
RFLRU: A Buffer Cache Management Algorithm for Solid State Drive to Improve the Write Performance on Mixed Workload
Engineering Letters, :, EL RFLRU: A Buffer Cache Management Algorithm for Solid State Drive to Improve the Write Performance on Mixed Workload Arul Selvan Ramasamy, and Porkumaran Karantharaj Abstract
Solid State Drives Data Reliability and Lifetime. Abstract
Solid State Drives Data Reliability and Lifetime White Paper Alan R. Olson & Denis J. Langlois April 7, 2008 Abstract The explosion of flash memory technology has dramatically increased storage capacity
An 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
High-Performance SSD-Based RAID Storage. Madhukar Gunjan Chakhaiyar Product Test Architect
High-Performance SSD-Based RAID Storage Madhukar Gunjan Chakhaiyar Product Test Architect 1 Agenda HDD based RAID Performance-HDD based RAID Storage Dynamics driving to SSD based RAID Storage Evolution
Industrial Flash Storage Module
April 9, 2012 Version 1. 1 Industrial Flash Storage Module Author: Precyan Lee E-mail: [email protected] April 9, 2012 Version 1. 1 Table of Contents Current Market Trends for Flash Storage...
An Overview of Flash Storage for Databases
An Overview of Flash Storage for Databases Vadim Tkachenko Morgan Tocker http://percona.com MySQL CE Apr 2010 -2- Introduction Vadim Tkachenko Percona Inc, CTO and Lead of Development Morgan Tocker Percona
How To Write On A Flash Memory Flash Memory (Mlc) On A Solid State Drive (Samsung)
Using MLC NAND in Datacenters (a.k.a. Using Client SSD Technology in Datacenters) Tony Roug, Intel Principal Engineer SNIA Legal Notice The material contained in this tutorial is copyrighted by the SNIA.
Managing Storage Space in a Flash and Disk Hybrid Storage System
Managing Storage Space in a Flash and Disk Hybrid Storage System Xiaojian Wu, and A. L. Narasimha Reddy Dept. of Electrical and Computer Engineering Texas A&M University IEEE International Symposium on
DELL SOLID STATE DISK (SSD) DRIVES
DELL SOLID STATE DISK (SSD) DRIVES STORAGE SOLUTIONS FOR SELECT POWEREDGE SERVERS By Bryan Martin, Dell Product Marketing Manager for HDD & SSD delltechcenter.com TAB LE OF CONTENTS INTRODUCTION 3 DOWNFALLS
HP Thin Clients Flash/SSD Selection
Technical white paper HP Thin Clients Flash/SSD Selection Table of contents Executive summary... 2 Introduction... 2 Considerations for selecting storage devices... 2 Operating system write filter enablement...
FlashLite: A User-Level Library to Enhance Durability of SSD for P2P File Sharing
FlashLite: A User-Level Library to Enhance Durability of SSD for P2P File Sharing Hyojun Kim and Umakishore Ramachandran College of Computing Georgia Institute of Technology {hyojun.kim, rama}@cc.gatech.edu
The Technologies & Architectures. President, Demartek
Deep Dive on Solid State t Storage The Technologies & Architectures Dennis Martin Dennis Martin President, Demartek Demartek Company Overview Industry analysis with on-site test lab Lab includes servers,
A Flash Storage Technical. and. Economic Primer. and. By Mark May Storage Consultant, By James Green, vexpert Virtualization Consultant
A Flash Storage Technical and Economic Primer y Mark May Storage Consultant, y James Green, vexpert Virtualization Consultant and Scott D. Lowe, vexpert Co-Founder, ActualTech Media March, 2015 Table of
UBI with Logging. Brijesh Singh Samsung, India [email protected]. Rohit Vijay Dongre Samsung, India [email protected].
UBI with Logging Brijesh Singh Samsung, India [email protected] Rohit Vijay Dongre Samsung, India [email protected] Abstract Flash memory is widely adopted as a novel nonvolatile storage medium
Benefits of Solid-State Storage
This Dell technical white paper describes the different types of solid-state storage and the benefits of each. Jeff Armstrong Gary Kotzur Rahul Deshmukh Contents Introduction... 3 PCIe-SSS... 3 Differences
Nasir 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
Managing the evolution of Flash : beyond memory to storage
Managing the evolution of Flash : beyond memory to storage Tony Kim Director, Memory Marketing Samsung Semiconductor I nc. Nonvolatile Memory Seminar Hot Chips Conference August 22, 2010 Memorial Auditorium
A Storage Architecture for High Speed Signal Processing: Embedding RAID 0 on FPGA
Journal of Signal and Information Processing, 12, 3, 382-386 http://dx.doi.org/1.4236/jsip.12.335 Published Online August 12 (http://www.scirp.org/journal/jsip) A Storage Architecture for High Speed Signal
