Please wait a minute...
Frontiers of Computer Science

ISSN 2095-2228

ISSN 2095-2236(Online)

CN 10-1014/TP

Postal Subscription Code 80-970

2018 Impact Factor: 1.129

Front. Comput. Sci.    2019, Vol. 13 Issue (1) : 35-50    https://doi.org/10.1007/s11704-018-7113-1
RESEARCH ARTICLE
Pinpointing and scheduling access conflicts to improve internal resource utilization in solid-state drives
Xuchao XIE1, Liquan XIAO1(), Dengping WEI1, Qiong LI1, Zhenlong SONG1, Xiongzi GE2
1. College of Computer, National University of Defense Technology, Changsha 410073, China
2. Department of Computer Science, University of Minnesota, Minneapolis,MN 55455, USA
 Download: PDF(1019 KB)  
 Export: BibTeX | EndNote | Reference Manager | ProCite | RefWorks
Abstract

Modern solid-state drives (SSDs) are integrating more internal resources to achieve higher capacity. Parallelizing accesses across internal resources can potentially enhance the performance of SSDs. However, exploiting parallelism inside SSDs is challenging owing to real-time access conflicts. In this paper, we propose a highly parallelizable I/O scheduler (PIOS) to improve internal resource utilization in SSDs from the perspective of I/O scheduling. Specifically, we first pinpoint the conflicting flash requests with precision during the address translation in the Flash Translation Layer (FTL). Then, we introduce conflict eliminated requests (CERs) to reorganize the I/O requests in the device-level queue by dispatching conflicting flash requests to different CERs. Owing to the significant performance discrepancy between flash read and write operations, PIOS employs differentiated scheduling schemes for read and write CER queues to always allocate internal resources to the conflicting CERs that are more valuable. The small dominant size prioritized scheduling policy for the write queue significantly decreases the average write latency. The high parallelism density prioritized scheduling policy for the read queue better utilizes resources by exploiting internal parallelism aggressively. Our evaluation results show that the parallelizable I/O scheduler (PIOS) can accomplish better SSD performance than existing I/O schedulers implemented in both SSD devices and operating systems.

Keywords solid-state drive      access conflict      I/O scheduler      internal resource utilization      PIOS     
Corresponding Author(s): Liquan XIAO   
Just Accepted Date: 25 September 2017   Online First Date: 02 April 2018    Issue Date: 31 January 2019
 Cite this article:   
Xuchao XIE,Liquan XIAO,Dengping WEI, et al. Pinpointing and scheduling access conflicts to improve internal resource utilization in solid-state drives[J]. Front. Comput. Sci., 2019, 13(1): 35-50.
 URL:  
https://academic.hep.com.cn/fcs/EN/10.1007/s11704-018-7113-1
https://academic.hep.com.cn/fcs/EN/Y2019/V13/I1/35
1 NAgrawal , V Prabhakaran, TWobber, J DDavis, M S Manasse, RPanigrahy. Design tradeoffs for SSD performance. In: Proceedings of USENIX Annual Technical Conference. 2008, 57–70
2 FChen, D A Koufaty, XZhang. Hystor: making the best use of solid state drives in high performance storage systems. In: Proceedings of the International Conference on Supercomputing. 2011, 22–32
https://doi.org/10.1145/1995896.1995902
3 MSaxena, M MSwift, YZhang. FlashTier: a lightweight, consistent and durable storage cache. In: Proceedings of the 7th ACM European Conference on Computer Systems. 2012, 267–280
https://doi.org/10.1145/2168836.2168863
4 A MCaulfield, L MGrupp, SSwanson. Gordon: using flash memory to build fast, power-efficient clusters for data-intensive applications. ACM SIGPLAN Notices, 2009, 44(3): 217–228
https://doi.org/10.1145/1508284.1508270
5 H JKim, Y SLee, J SKim. NVMeDirect: a user-space I/O framework for application-specific optimization on NVMe SSDs. In: Proceedings of the 8th USENIX Workshop on Hot Topics in Storage and File Systems. 2016
6 WXu, YLu, QLi, EZhou, ZSong, Y Dong, WZhang, DWei, XZhang, HChen, J Xing, YYuan. Hybrid hierarchy storage system in milkyway- 2 supercomputer. Frontiers of Computer Science, 2014, 8(3): 367–377
https://doi.org/10.1007/s11704-014-3499-6
7 XLiao, LXiao, CYang, Y Lu. Milkyway-2 supercomputer: system and application. Frontiers of Computer Science, 2014, 8(3): 345–356
https://doi.org/10.1007/s11704-014-3501-3
8 JWires , SIngram, ZDrudi, N J Harvey, AWarfield. Characterizing storage workloads with counter stacks. In: Proceedings of the 11th USENIX Symposium on Operating Systems Design and Implementation. 2014, 335–349
9 AGupta, YKim, BUrgaonkar. DFTL: a flash translation layer employing demand-based selective caching of page-level address mappings. In: Proceedings of the 14th International Conference on Architecture Support for Programming Languages and Operating Systems. 2009, 229–240
https://doi.org/10.1145/1508244.1508271
10 XXie, QLi, DWei, Z Song, LXiao. ECAM: an efficient cache management strategy for address mappings in flash translation layer. In: Proceedings of the International Workshop on Advanced Parallel Processing Technologies. 2013, 146–159
https://doi.org/10.1007/978-3-642-45293-2_11
11 DPark, B Debnath, DDu. CFTL: an adaptive hybrid flash translation layer with efficient caching strategies. IEEE Transactions on Computers, 2011, 1–15
12 M CYang, Y MChang, C WTsao, P C Huang, Y HChang, T WKuo. Garbage collection and wear leveling for flash memory: past and future. In: Proceedings of the International Conference on Smart Computing (SMARTCOMP). 2014, 66–73
https://doi.org/10.1109/SMARTCOMP.2014.7043841
13 M CYang, Y HChang, C WTsao, P C Huang. New era: new efficient reliability-aware wear leveling for endurance enhancement of flash storage devices. In: Proceedings of the 50th Annual Design Automation Conference. 2013
https://doi.org/10.1145/2463209.2488936
14 YHu, HJiang, DFeng, L Tian, HLuo, CRen. Exploring and exploiting the multilevel parallelism inside ssds for improved performance and endurance. IEEE Transactions on Computers, 2013, 62(6): 1141–1155
https://doi.org/10.1109/TC.2012.60
15 MJung, M T Kandemir. Sprinkler: maximizing resource utilization in many-chip solid state disks. In: Proceedings of the 20th IEEE International Symposium on High Performance Computer Architecture. 2014, 524–535
https://doi.org/10.1109/HPCA.2014.6835961
16 FChen, D A Koufaty, XZhang. Understanding intrinsic characteristics and system implications of flash memory based solid state drives. ACM SIGMETRICS Performance Evaluation Review, 2009, 37(1): 181–192
https://doi.org/10.1145/1555349.1555371
17 MJung. Exploring parallel data access methods in emerging nonvolatile memory systems. IEEE Transactions on Parallel and Distributed Systems, 2017, 28(3): 746–759
https://doi.org/10.1109/TPDS.2016.2588491
18 FChen, RLee, XZhang. Essential roles of exploiting internal parallelism of flash memory based solid state drives in high-speed data processing. In: Proceedings of the 17th IEEE International Symposium on High Performance Computer Architecture. 2011, 266–277
https://doi.org/10.1109/HPCA.2011.5749735
19 MJung, III E HWilson, MKandemir. Physically addressed queueing (PAQ): improving parallelism in solid state disks. ACM SIGARCH Computer Architecture News, 2012, 40(3): 404–415
https://doi.org/10.1145/2366231.2337206
20 YHu, HJiang, DFeng, L Tian, HLuo, SZhang. Performance impact and interplay of SSD parallelism through advanced commands, allocation strategy and data granularity. In: Proceedings of the International Conference on Supercomputing. 2011, 96–107
https://doi.org/10.1145/1995896.1995912
21 XXie, DWei, QLi, ZSong, LXiao. CER-IOS: internal resource utilization optimized I/O scheduling for solid state drives. In: Proceedings of the 21st IEEE International Conference on Parallel and Distributed Systems. 2015, 336–343
22 CGao, LShi, MZhao, C J Xue, KWu, E HSha. Exploiting parallelism in I/O scheduling for access conflict minimization in flash-based solid state drives. In: Proceedings of the 30th Symposium on Mass Storage Systems and Technologies. 2014, 1–11
https://doi.org/10.1109/MSST.2014.6855544
23 E HNam, B S JKim, HEom, S L Min. Ozone (O3): an out-of-order flash memory controller architecture. IEEE Transactions on Computers, 2011, 60(5): 653–666
https://doi.org/10.1109/TC.2010.209
24 A STanenbaum. Modern Operating Systems. New Jersey: Prentice Hall, 2009
25 Y JYu, D IShin, HEom, H Y Yeom. NCQ vs. I/O scheduler: preventing unexpected misbehaviors. ACM Transactions on Storage, 2010, 6(1): 2
https://doi.org/10.1145/1714454.1714456
26 SPark, KShen. FIOS: a fair, efficient flash I/O scheduler. In: Proceedings of the 10th USENIX Conference on File and Storage Technologies. 2012
27 KShen, SPark. Flashfq: a fair queueing I/O scheduler for flash-based ssds. In: Proceedings of USENIX Annual Technical Conference. 2013, 67–78
28 JGuo, YHu, BMao, S Wu. Parallelism and garbage collection aware I/O scheduler with improved ssd performance. In: Proceedings of IEEE International Conference on Parallel and Distributed Processing Symposium. 2017, 1184–1193
https://doi.org/10.1109/IPDPS.2017.55
29 DNarayanan, A Donnelly, ARowstron. Write off-loading: practical power management for enterprise storage. ACM Transactions on Storage, 2008, 4(3): 10
https://doi.org/10.1145/1416944.1416949
30 JKim, YOh, EKim, J Choi, DLee, S HNoh. Disk schedulers for solid state drivers. In: Proceedings of the 7th ACM International Conference on Embedded Software. 2009, 295–304
https://doi.org/10.1145/1629335.1629375
31 BMao, SWu. Exploiting request characteristics and internal parallelism to improve ssd performance. In: Proceedings of the 33rd IEEE International Conference on Computer Design. 2015, 447–450
https://doi.org/10.1109/ICCD.2015.7357145
[1] Chu LI, Dan FENG, Yu HUA, Fang WANG. A high-performance and endurable SSD cache for parity-based RAID[J]. Front. Comput. Sci., 2019, 13(1): 16-34.
Viewed
Full text


Abstract

Cited

  Shared   
  Discussed