# uDMA: An Efficient User-Level DMA for NVMe SSDs +
## 6 Conclusions  
The user-mode I/O frameworks introduce additional overhead, such as pinning memory, which is a very time-consuming operation for I/O-intensive applications. This paper proposed an alternative and efficient memory management strategy named uDMA. uDMA can amortize per-request latency by dynamically selecting the appropriate pinned memory mode for different sizes of I/O requests. Moreover, uDMA uses the scatter/gather lists to improve the utilization of pinned memory blocks. The experimental results verified the effectiveness of the proposed uDMA. Our future research will further focus on improving user-mode I/O frameworks' performance. Combining the user-mode I/O scheme with some new characteristics of NVMe SSDs (e.g., open-channel SSDs) is a promising research direction. Figure 8: I/O latency under different data sizes. Figure 9: IOPS under different data sizes. **Author Contributions:** Conceptualization, L.W. and L.X. ; Methodology, J.Z., L.W. and L.X. ; Resources, L.X. ; Writing--original draft, J.Z. ; Supervision, G.Q. All authors have read and agreed to the published version of the manuscript. **Funding:** This work was supported by by the National Natural Science Foundation of China under grant no. 62104014, the National Natural Science Foundation of China under grant no. 62272026, the National Laboratory of Software Development Environment under grant no. SKLSDE-2022 ZX-07. **Data Availability Statement:** Data will be made available on request. **Conflicts of Interest:** The authors declare no conflict of interest. * [PERSON] et al. (2016) [PERSON]; [PERSON]; [PERSON]; [PERSON] Efficient Memory-Mapped I/O on Fast Storage Device. _ACM Trans. Storage_**2016**, _12_, 1-27. [CrossRef]
* [PERSON] et al. (2013) [PERSON]; [PERSON]; [PERSON]; [PERSON]; [PERSON] Preemptible I/O Scheduling of Garbage Collection for Solid State Drives. _IEEE Trans. Comput.-Aided Des. Integr. Circuits Syst._**2013**, _32_, 1-14. [CrossRef]
* [PERSON] and [PERSON] (2014) [PERSON]; [PERSON] An I/O scheduler based on fine-grained access patterns to improve SSD performance and lifespan. In Proceedings of the 29 th Annual ACM Symposium on Applied Computing, Gyeongju, Republic of Korea, 24-28 March 2014; pp. 1511-1516. * [PERSON] et al. (2011) [PERSON]; [PERSON]; [PERSON]; [PERSON]; [PERSON] Parameter-Aware I/O Management for Solid State Disks (SSDs). _IEEE Trans. Comput._**2011**, _61_, 1-15. * [PERSON] et al. (2018) [PERSON]; [PERSON]; [PERSON]; [PERSON] Performance Characterization of NVMe-over-Fabrics Storage Disaggregation. _Acm Trans. Storage_**2018**, _14_, 1-18. [CrossRef]
* [PERSON] et al. (2020) [PERSON]; [PERSON]; [PERSON]; [PERSON]; [PERSON] coIOMMU: A Virtual IOMMU with Cooperative DMA Buffer Tracking for Efficient Memory Management in Direct IO. In Proceedings of the 2020 USENIX Annual Technical Conference (ATC), Santa Clara, CA, USA, 15-17 July 2020. * Available online: [[https://spdk.io/](https://spdk.io/)]([https://spdk.io/](https://spdk.io/)) (accessed on 1 September 2022). * System Performance Tools: Perf. Available online: [[http://daslab.seas.harvard.edu/classes/cs165/doc/sections/SS_perf.pdf](http://daslab.seas.harvard.edu/classes/cs165/doc/sections/SS_perf.pdf)]([http://daslab.seas.harvard.edu/classes/cs165/doc/sections/SS_perf.pdf](http://daslab.seas.harvard.edu/classes/cs165/doc/sections/SS_perf.pdf)) (accessed on 1 September 2022). * [PERSON] and [PERSON] (2021) [PERSON]; [PERSON]; [PERSON] Evolution of Development Priorities in Key-value Stores Serving Large-scale Applications: The RocksDB Experience. In Proceedings of the 19 th USENIX Conference on File and Storage Technologies, Virtual Event, 23-25 February 2021; pp. 33-49. **Disclaimer/Publisher's Note:** The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.