簡易檢索 / 詳目顯示

研究生: 李承諭
Cheng-Yu Li
論文名稱: 針對NVMe固態硬碟做I/O排程最佳化
I/O Scheduling Optimization Based on NVMe Solid State Drives
指導教授: 陳雅淑
Ya-Shu Chen
口試委員: 曾學文
Hsueh-Wen Tseng
謝仁偉
Jen-Wei Hsieh
吳晉賢
Chin-Hsien Wu
學位類別: 碩士
Master
系所名稱: 電資學院 - 電機工程系
Department of Electrical Engineering
論文出版年: 2019
畢業學年度: 107
語文別: 英文
論文頁數: 40
中文關鍵詞: 非揮發性記憶體儲存標準固態硬碟輸出入排程儲存裝置管理儲存裝置硬碟效能
外文關鍵詞: Non-Volatile Memory Express, Solid State Disks, I/O Scheduling, Storage Management, Storage Performance
相關次數: 點閱:229下載:0
分享至:
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報

非揮發性記憶體儲存標準固態硬碟(NVMe SSD)支援多個應用程式層級的I / O請求佇列與高速匯流排,用以提供高數據傳輸速率。為了達到良好的功耗和性能比,NVMe SSD逐漸成為嵌入式系統的理想儲存裝置。 雖然支持多個佇列會增加數據速率,但應用程序之間的資源搶奪干擾和固態硬碟的垃圾收集,大幅影響在嵌入式系統中具有延遲限制的應用程式之反應時間。 在本研究中,我們提出了一種延遲限制感知調度程序、批次處理的調度程序、以及分散式垃圾收集,用以管理應用程序的反應時間,並保持NVMe SSD的吞吐量。評估結果表明,我們提出的方法為延遲限制的應用程式提供了可預測的反應時間,且增加系統吞吐量。


Non-Volatile Memory Express (NVMe) solid-state disks (SSDs) provides high data transfer rates by direct access to the multiple application-level I/O request queues and high-speed bus. With better tradeoff between power consumption and performance, NVMe SSDs are becoming ideal storages for embedded systems. Although multiple queues supporting increased the data rates, the interference between applications and garbage collection affect the response time of applications which might have latency constraint in the embedded systems. In this study, we propose a latency constraint-aware scheduler, a batch-based dispatcher, and a redistributed garbage collection to manage the response time of applications while maintaining the throughput of NVMe SSDs. Evaluation results show that our proposed approach delivered the predictable response to applications with latency constraint and considerable throughout improvement.

1 Introduction 2 Related Work 3 System model 4 Approaches 4.1 Latency Constrained Scheduler 4.2 Batch-based Dispatcher 4.3 Redistributed Garbage Collection 5 Experiment and Analysis 5.1 Experimental Setup 5.2 Read Intensive Applications 5.3 Read Write Applications 5.4 Write Intensive Applications 5.5 Latency Analysis 5.5.1 Read Write Applications 5.5.2 Write Intensive Applications 6 Conclusion References

[1] M. Bjørling, J. Axboe, D. Nellans, and P. Bonnet, “Linux block io: introducing
multi-queue ssd access on multi-core systems,” in Proceedings of
the 6th international systems and storage conference, p. 22, ACM, 2013.
[2] M. H. Jo and W. W. Ro, “Dynamic load balancing of dispatch scheduling
for solid state disks,” vol. 66, pp. 1034–1047, IEEE, 2016.
[3] F. Chen, B. Hou, and R. Lee, “Internal parallelism of flash memory-based
solid-state drives,” vol. 12, p. 13, ACM, 2016.
[4] A. Tavakkol, M. Arjomand, and H. Sarbazi-Azad, “Design for scalability
in enterprise ssds,” in Proceedings of the 23rd international conference on
Parallel architectures and compilation, pp. 417–430, ACM, 2014.
[5] C. Gao, L. Shi, M. Zhao, C. J. Xue, K. Wu, and E. H.-M. Sha, “Exploiting
parallelism in i/o scheduling for access conflict minimization in flashbased
solid state drives,” in 2014 30th Symposium on Mass Storage Systems
and Technologies (MSST), pp. 1–11, IEEE, 2014.
[6] M. Jung, “Exploring parallel data access methods in emerging non-volatile
memory systems,” IEEE Transactions on Parallel and Distributed Systems,
vol. 28, no. 3, pp. 746–759, 2016.
[7] N. Elyasi, M. Arjomand, A. Sivasubramaniam, M. T. Kandemir, C. R. Das,
and M. Jung, “Exploiting intra-request slack to improve ssd performance,”
vol. 45, pp. 375–388, ACM, 2017.
[8] T. Yang, P. Huang, W. Zhang, H. Wu, and L. Lin, “Cars: A multi-layer
conflict-aware request scheduler for nvme ssds,” in 2019 Design, Automation
& Test in Europe Conference & Exhibition (DATE), pp. 1293–1296,
IEEE, 2019.
[9] S. Wu, W. Zhang, B. Mao, and H. Jiang, “Hotr: Alleviating read/write interference
with hot read data replication for flash storage,” in 2019 Design,
Automation & Test in Europe Conference & Exhibition (DATE), pp. 1367–
1372, IEEE, 2019.
[10] X. Xie, L. Xiao, D.Wei, Q. Li, Z. Song, and X. Ge, “Pinpointing and scheduling
access conflicts to improve internal resource utilization in solid-state
drives,” vol. 13, pp. 35–50, Springer, 2019.
[11] W. Choi, M. Jung, M. Kandemir, and C. Das, “Parallelizing garbage collection
with i/o to improve flash resource utilization,” in Proceedings of
the 27th International Symposium on High-Performance Parallel and Distributed
Computing, pp. 243–254, ACM, 2018.
[12] B. Mao and S. Wu, “Exploiting request characteristics and internal parallelism
to improve ssd performance,” in 2015 33rd IEEE International
Conference on Computer Design (ICCD), pp. 447–450, IEEE, 2015.
[13] J. Guo, Y. Hu, B. Mao, and S. Wu, “Parallelism and garbage collection
aware i/o scheduler with improved ssd performance,” in 2017 IEEE
International Parallel and Distributed Processing Symposium (IPDPS),
pp. 1184–1193, IEEE, 2017.
[14] N. Shahidi andM. T. Kandemir, “Cachedgc: Cache-assisted garbage collection
in modern solid state drives,” in 2018 IEEE 26th International Symposium
on Modeling, Analysis, and Simulation of Computer and Telecommunication
Systems (MASCOTS), pp. 79–86, IEEE, 2018.
[15] W. Kang and S. Yoo, “Dynamic management of key states for reinforcement
learning-assisted garbage collection to reduce long tail latency in
ssd,” in 2018 55th ACM/ESDA/IEEE Design Automation Conference
(DAC), pp. 1–6, IEEE, 2018.
[16] W. Kang, D. Shin, and S. Yoo, “Reinforcement learning-assisted garbage
collection to mitigate long-tail latency in ssd,” ACM Transactions on Embedded
Computing Systems (TECS), vol. 16, no. 5s, p. 134, 2017.
[17] Q. Zhang, X. Li, L. Wang, T. Zhang, Y. Wang, and Z. Shao, “Lazy-rtgc: A
real-time lazy garbage collection mechanism with jointly optimizing average
and worst performance for nand flash memory storage systems,” ACM
Transactions on Design Automation of Electronic Systems (TODAES),
vol. 20, no. 3, p. 43, 2015
[18] S. Wu, B. Mao, Y. Lin, and H. Jiang, “Improving performance for flashbased
storage systems through gc-aware cache management,” vol. 28,
pp. 2852–2865, IEEE, 2017.
[19] L.-P. Chang, Y.-S. Liu, and W.-H. Lin, “Stable greedy: Adaptive garbage
collection for durable page-mapping multichannel ssds,” vol. 15, p. 13,
ACM, 2016.
[20] F. Wu, J. Zhou, S. Wang, Y. Du, C. Yang, and C. Xie, “Fastgc: accelerate
garbage collection via an efficient copyback-based data migration in ssds,”
in Proceedings of the 55th Annual Design Automation Conference, p. 7,
ACM, 2018.
[21] J. Cui, Y. Zhang, J. Huang, W. Wu, and J. Yang, “Shadowgc: Cooperative
garbage collection with multi-level buffer for performance improvement
in nand flash-based ssds,” in 2018 Design, Automation & Test in Europe
Conference & Exhibition (DATE), pp. 1247–1252, IEEE, 2018.
[22] S. Kim, J. Bae, H. Jang, W. Jin, J. Gong, S. Lee, T. J. Ham, and J. W.
Lee, “Practical erase suspension for modern low-latency ssds,” in 2019
{USENIX} Annual Technical Conference ({USENIX}{ATC} 19), pp. 813–
820, 2019.
[23] B. Jun and D. Shin, “Workload-aware budget compensation scheduling for
nvme solid state drives,” in 2015 IEEE Non-Volatile Memory System and
Applications Symposium (NVMSA), pp. 1–6, IEEE, 2015.
[24] S.-M. Huang and L.-P. Chang, “Providing slo compliance on nvme ssds
through parallelism reservation,” vol. 23, p. 28, ACM, 2018.
[25] A. Tavakkol, M. Sadrosadati, S. Ghose, J. Kim, Y. Luo, Y. Wang, N. M.
Ghiasi, L. Orosa, J. G´omez-Luna, and O. Mutlu, “Flin: Enabling fairness
and enhancing performance in modern nvme solid state drives,” in 2018
ACM/IEEE 45th Annual International Symposium on Computer Architecture
(ISCA), pp. 397–410, IEEE, 2018.
[26] J. Bhimani, Z. Yang, N. Mi, J. Yang, Q. Xu, M. Awasthi, R. Pandurangan,
and V. Balakrishnan, “Docker container scheduler for i/o intensive applications
running on nvme ssds,” vol. 4, pp. 313–326, IEEE, 2018.
[27] “Nvm expresstm revision 1.4.” https://nvmexpress.org/
wp-content/uploads/NVM-Express-1_4-2019.06.10-Ratified.
pdf.
[28] J. Lee, Y. Kim, G. M. Shipman, S. Oral, F. Wang, and J. Kim, “A semipreemptive
garbage collector for solid state drives,” in (IEEE ISPASS)
IEEE International Symposium on Performance Analysis of Systems and
Software, pp. 12–21, IEEE, 2011.
[29] Y. Hu, H. Jiang, D. Feng, L. Tian, H. Luo, and C. Ren, “Exploring and
exploiting themultilevel parallelism inside ssds for improved performance
and endurance,” vol. 62, pp. 1141–1155, IEEE, 2011
[30] “Microsoft production server traces.” http://iotta.snia.org/
traces/list/BlockIO.
[31] “Umass trace repository.” http://traces.cs.umass.edu/index.
php/Storage/Storage.
[32] J. Axboe, “Flexible i/o tester rev. 3.15.” https://fio.readthedocs.io/
en/latest/fio_doc.html, 2018.

無法下載圖示 全文公開日期 2024/08/28 (校內網路)
全文公開日期 本全文未授權公開 (校外網路)
全文公開日期 本全文未授權公開 (國家圖書館:臺灣博碩士論文系統)
QR CODE