Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/3385209.3385221acmotherconferencesArticle/Chapter ViewAbstractPublication PagesiciitConference Proceedingsconference-collections
research-article

FAST I/O: QoS Supports for Urgent I/Os in NVMe SSDs

Published: 06 June 2020 Publication History

Abstract

NVMe SSDs employ lots of I/O submission queues to dispatch I/O requests simultaneously and exploit the parallelism of SSDs actively. Although this architecture can improve the I/O bandwidth and IOPS of NVMe SSDs, the QoS of each I/O request is never guaranteed. Especially, when many I/O requests are pending in the submission queues, I/O requests to be processed urgently can be delayed. In this paper, we present a scheme that handles the urgent I/O requests without a delay. Since the pending I/O requests in the submission queues cannot be controlled in the host, we use the host memory buffer (HMB) as a fast track for processing urgent I/O requests. Instead of sending urgent I/O requests into the SSDs through a legacy I/O path, the proposed scheme removes the latency by directly inserting them in the HMB that can be accessed from both host and SSDs. Through the experiments on our emulator, we show that the proposed scheme could reduce the average and tail latencies significantly.

References

[1]
Cobb, D. and Huffman, A. 2012. NVM Express and the PCI Express SSD Revolution. In Proceedings of the Inter Developer Forum.
[2]
Kim, H. and Shin, D. 2017. SHRD: Improving Spatial Locality in Flash Storage Accesses by Sequentializing in Host and Randomizing in Device. In Proceedings of the 15th USENIX Conference on File and Storage Technologies. USENIX. 271--284.
[3]
Xie, W., Chen, Y., and Roth, P.C. 2018. Exploiting Internal Parallelism for Address Translation in Solid-State Drives. ACM Trans. Storage. ACM.
[4]
Jung, M. and Kandemir, M. 2013. Revisiting Widely Held SSD Expectations and Rethinking System-level Implications. In Proceedings of the ACM SIGMETRICS/international conference on Measurement and modeling of computer systems. ACM. 203--216.
[5]
Koh, S., Lee, C., Kwon, M., and Jung, M. 2018. Exploring System Challenges of Ultra-Low Latency Solid State Drives. In Proceedings of the 10th Workshop on Hot Topics in Storage and File Systems (HotStorage). USENIX.
[6]
NVM Express Base Specification Revision 1.3c. [Online]. Available: https://nvmexpress.org/wp-content/uploads/NVM-Express-1_3c-2018.05.24-Ratified.pdf.
[7]
Zhang, J., Kwon, M., Gouk, D., Koh, S., Lee, C., Alian, M., Chun, M., Kandemir, M. T., Kim, N. S., Kim, J., and Jung, M. 2018. FlashShare: Punching Through Server Storage Stack from Kernel to Firmware for Ultra-Low Latency SSDs. In Proceedings of the 13th USENIX Symposium on Operating Systems Design and Implementation. USENIX. 477--492.
[8]
Peng, B., Zhang, H., Yao, J., Dong, Y., Xu, Y., and Guan, H. 2018. MDev-NVMe: A NVMe Storage Virtualization Solution with Mediated Pass-Through. In Proceedings of the 2018 USENIX Annual Technical Conference, ACM. 665--676.
[9]
Kim, S. and Yang, J. S. 2018. Optimized I/O determinism for emerging NVM-based NVMe SSD in an enterprise system. In Proceedings of the 55th Annual Design Automation, ACM.
[10]
Kim, H. J., Lee, Y. S., and Kim, J. S. 2016. 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, USENIX.
[11]
Huang, S. 2015. DRAM-Less SSD Facilitates HDD Replacement. In Proceedings of the Flash Memory Summit.
[12]
Chen, M. 2017. Which PCIe BGASSD Architecture is Right for Your Application. In Proceedings of the Flash Memory Summit.
[13]
Linux Kernel NVMe device driver. [Online]. Available: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/tree/drivers/nvme/host/pci.c?h=v4.13.10#n2179.
[14]
Ramseyer, C. Silicon Motion SM2263XT HMB SSD Preview. [Online]. Available: https://www.tomshardware.com/reviews/silicon-motion-sm2263xt-controller-preview, 5404.html.
[15]
Marvell 88NV1160 product brief. [Online]. Available: https://www.marvell.com/storage/assets/Marvell-88NV1160-Product-Brief-20160830.pdf.
[16]
Silicon Power PCIe Gen3x2 P32M85. [Online]. Available: https://www.silicon-power.com/web/product-P32M85.
[17]
GIGABYTE M.2 PCIe SSD 512GB. [Online]. Available: https://www.gigabyte.com/kr/Solid-State-Drive/M2-PCIe-SSD-512GB.
[18]
Dorgelo, J. and Chen, M. C. 2015. Host Memory Buffer (HMB) based SSD System. In Proceedings of the Flash Memory Summit.
[19]
Yang, S. 2017. Improving the Design of DRAM-Less PCIe SSD. In Proceedings of the Flash Memory Summit.
[20]
Hong, J., Han, S., and Chung, E.Y. 2016. A RAM cache approach using host memory buffer of the NVMe interface. In Proceedings of the 2016 International SoC Design Conference. IEEE. 109--110.
[21]
Bjørling, M., Axboe, J., Nellans, D., and Bonnet, P. 2013. Linux block IO: introducing multi-queue SSD access on multi-core systems. In Proceedings of the 6th International Systems and Storage Conference, ACM.
[22]
Kim, K., Lee, E., and Kim, T. 2019. HMB-SSD: Framework for Efficient Exploiting of the Host Memory Buffer in the NVMe SSD. IEEE Access, IEEE. 150403-150411.
[23]
Kim, T., Kang, D., Lee, D., and Eom, Y. 2015. Improving performance by bridging the semantic gap between multiqueue SSD and I/O virtualization framework. In Proceedings of Symposium on Mass Storage Systems and Technologies (MSST), IEEE.
[24]
Zhou, D., Pan, W., Wang, W., and Xie, T. 2015. I/O Characteristics of Smartphone Applications and Their Implications for eMMC Design. In Proceedings of the 2015 IEEE International Symposium on Workload Characterization. IEEE, 12--21.
[25]
Kim, K.S. and Kim, T.S. 2019. Performance Evaluation of HMB-Supported DRAM-Less NVMe SSDs. KIPS Transactions on Computer and Communication Systems. KIPS. 159--166.

Cited By

View all
  • (2024)Configuring and Coordinating End-to-end QoS for Emerging Storage InfrastructureACM Transactions on Modeling and Performance Evaluation of Computing Systems10.1145/36316069:1(1-32)Online publication date: 15-Jan-2024
  • (2024)Flexible NVMe Request Routing for Virtual Machines2024 IEEE International Parallel and Distributed Processing Symposium (IPDPS)10.1109/IPDPS57955.2024.00077(814-824)Online publication date: 27-May-2024
  • (2024)Neos: A NVMe-GPUs Direct Vector Service Buffer in User Space2024 IEEE 40th International Conference on Data Engineering (ICDE)10.1109/ICDE60146.2024.00289(3767-3781)Online publication date: 13-May-2024
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Other conferences
ICIIT '20: Proceedings of the 2020 5th International Conference on Intelligent Information Technology
February 2020
163 pages
ISBN:9781450376594
DOI:10.1145/3385209
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 06 June 2020

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Host memory buffer
  2. NVMe
  3. Operating system requests simultaneously
  4. Solid-state drives

Qualifiers

  • Research-article
  • Research
  • Refereed limited

Funding Sources

  • Ministry of Science, ICT and Future Planning

Conference

ICIIT 2020

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)42
  • Downloads (Last 6 weeks)8
Reflects downloads up to 09 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Configuring and Coordinating End-to-end QoS for Emerging Storage InfrastructureACM Transactions on Modeling and Performance Evaluation of Computing Systems10.1145/36316069:1(1-32)Online publication date: 15-Jan-2024
  • (2024)Flexible NVMe Request Routing for Virtual Machines2024 IEEE International Parallel and Distributed Processing Symposium (IPDPS)10.1109/IPDPS57955.2024.00077(814-824)Online publication date: 27-May-2024
  • (2024)Neos: A NVMe-GPUs Direct Vector Service Buffer in User Space2024 IEEE 40th International Conference on Data Engineering (ICDE)10.1109/ICDE60146.2024.00289(3767-3781)Online publication date: 13-May-2024
  • (2023)EBIO: An Efficient Block I/O Stack for NVMe SSDs With Mixed WorkloadsIEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems10.1109/TCAD.2023.329636942:12(5048-5060)Online publication date: 18-Jul-2023
  • (2023)CFIOJournal of Systems Architecture: the EUROMICRO Journal10.1016/j.sysarc.2022.102803135:COnline publication date: 1-Feb-2023
  • (2022)A modeling approach for estimating performance and energy consumption of storage systemsJournal of Computer and System Sciences10.1016/j.jcss.2022.04.001128:C(86-106)Online publication date: 1-Sep-2022
  • (2020)HMB-I/O: Fast Track for Handling Urgent I/Os in Nonvolatile Memory Express Solid-State DrivesApplied Sciences10.3390/app1012434110:12(4341)Online publication date: 24-Jun-2020

View Options

Get Access

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media