| 研究生: |
蘇勇達 Su, Yong-Da |
|---|---|
| 論文名稱: |
儲存裝置內運算架構設計 Design of an In-storage Processing Architecture |
| 指導教授: |
侯廷偉
Hou, Ting-Wei |
| 學位類別: |
碩士 Master |
| 系所名稱: |
工學院 - 工程科學系 Department of Engineering Science |
| 論文出版年: | 2024 |
| 畢業學年度: | 112 |
| 語文別: | 中文 |
| 論文頁數: | 71 |
| 中文關鍵詞: | 儲存裝置內運算 、運算儲存裝置 、人臉辨識 |
| 外文關鍵詞: | In-storage Processing, Computing Storage Device, Facial Recognition |
| 相關次數: | 點閱:120 下載:0 |
| 分享至: |
| 查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報 |
在資料搬移密集型的應用中,主機端與儲存裝置間頻繁的資料搬移常常導致顯著的效能瓶頸。本研究旨在一儲存裝置內運算(In-Storage Processing, ISP)的雛型系統中,設計與實作系統軟體架構,以減少主機端與儲存裝置之間在高度資料搬移需求應用中的資料搬移時間與次數,進而提升系統的整體運算速度。本研究採用人臉辨識技術作為案例應用,以驗證本研究所提出之ISP系統軟體架構的實用性與效能。透過與傳統主機加上儲存裝置組合的運算架構進行比較,若使用市售USB隨身碟作為儲存裝置,且主機端主記憶體尚未讀取過檔案的狀態,本文使用之ISP運算架構可以提升2.6倍的速度,但仍與主機端使用市售PCIe SSD硬碟作為儲存裝置,或者主機端主記憶體已經讀取過相同檔案,檔案已進入快取的狀態下有所差距。
In data movement-intensive applications, frequent data transfers between the host and storage devices often lead to significant performance bottlenecks. This thesis aims to design and implement an In-storage Processing (ISP) system software architecture on a prototype hardware platform to reduce the data transfer size and frequency between the host and storage devices in applications with high data movement demands, thereby enhancing the overall system performance. A facial recognition application is used as a test case to verify the practicality and performance of the proposed ISP architecture. By comparing it with the traditional host and storage device combination architecture, if a USB flash drive is used as the storage device and the host's main memory has not yet cache the file, the ISP architecture used in this thesis can achieve a speed increase of 2.6 times. However, there is still a gap compared to the host using PCIe SSD as the storage device or the host's main memory having already cached the same files.
[1] M. Torabzadehkashi, S. Rezaei, V. Alves and N. Bagherzadeh, "CompStor: An In-storage Computation Platform for Scalable Distributed Processing," in IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW), Vancouver, BC, Canada, May 2018, pp. 1260-1267.
[2] M. Torabzadehkashi, S. Rezaei, A. Heydarigorji, H. Bobarshad, V. Alves and N. Bagherzadeh, "Catalina: In-Storage Processing Acceleration for Scalable Big Data Analytics," in 27th Euromicro International Conference on Parallel, Distributed and Network-Based Processing (PDP), Pavia, Italy, 2019, pp. 430-437.
[3] A. HeydariGorji, M. Torabzadehkashi, S. Rezaei, H. Bobarshad, V. Alves and P. H. Chou, "Stannis: Low-Power Acceleration of DNN Training Using Computational Storage Devices," in 57th ACM/IEEE Design Automation Conference (DAC), San Francisco, CA, USA, 2020, pp. 1-6.
[4] A. HeydariGorji, S. Rezaei, M. Torabzadehkashi, H. Bobarshad, V. Alves and P. H. Chou, "HyperTune: Dynamic Hyperparameter Tuning for Efficient Distribution of DNN Training Over Heterogeneous Systems," in IEEE/ACM International Conference On Computer Aided Design (ICCAD), San Diego, CA, USA, 2020, pp. 1-8.
[5] A. HeydariGorji, M. Torabzadehkashi, S. Rezaei, H. Bobarshad, V. Alves and P. H. Chou, "In-storage Processing of I/O Intensive Applications on Computational Storage Drives," in International Symposium on Quality Electronic Design (ISQED), Santa Clara, CA, USA, 2022, pp. 1-6.
[6] M. Wilkening, U. Gupta, S. Hsia, C. Trippel, C.-J. Wu, D. Brooks and G.-Y. Wei, "RecSSD: near data processing for solid state drive based recommendation inference," in ACM International Conference on Architectural Support for Programming Languages and Operating Systems, New York, NY, USA, 2021, pp. 717 - 729.
[7] B. Gu, A. S. Yoon, D.-H. Bae, I. Jo, J. Lee, J. Yoon, J.-U. Kang, M. Kwon, C. Yoon, S. Cho, J. Jeong and D. Chang, "Biscuit: A Framework for Near-Data Processing of Big Data Workloads," in ACM/IEEE 43rd Annual International Symposium on Computer Architecture (ISCA), Seoul, Korea (South), 2016, pp. 153-165.
[8] A. Barbalace and J. Do, "Computational Storage: Where Are We Today?," in Innovative Data Systems Research, Virtual Confernece, Jane, 2021, pp. 1-6.
[9] Y. Zheng, J. Fixelle, N. Challapalle, P. Huo, Z. Shen, Z. Shao, M. Stan and V. Narayanan, "ISKEVA: in-SSD key-value database engine for video analytics applications," in 23rd ACM SIGPLAN/SIGBED International Conference on Languages, Compilers, and Tools for Embedded Systems, New York, NY, USA, June 2022, pp. 50-60.
[10] Y. Zheng, J. Fixelle, P. Huo, M. Stan, M. Mesnier and V. Narayanan, "ISVABI: In-Storage Video Analytics Engine with Block Interface," in 24th ACM SIGPLAN/SIGBED International Conference on Languages, Compilers, and Tools for Embedded Systems (LCTES 2023), New York, NY, USA, June 2023, pp. 111-121.
[11] J. Gómez-Luna, I. El Hajj, I. Fernandez, C. Giannoula, G. F. Oliveira and O. Mutlu, "Benchmarking Memory-Centric Computing Systems: Analysis of Real Processing-In-Memory Hardware," in 12th International Green and Sustainable Computing Conference (IGSC), Pullman, WA, USA, 2021, pp. 1-7.
[12] S.-W. Jun, M. Liu, S. Lee, J. Hicks, J. Ankcorn, M. King, S. Xu and A. , "BlueDBM: An appliance for Big Data analytics," in 42nd Annual International Symposium on Computer Architecture (ISCA), Portland, OR, USA, 2015, pp. 1-13.
[13] C.-H. Wu, Design and implement a face recognition system combining embedded device and mobile phone application, M.S. thesis, Department of Engineering Science, National Cheng Kung University, Tainan, Taiwan, 2022.
[14] T.-Y. Lai, Design and Implementation of an Embedded System-Based In-Storage Processing Prototype, M.S. thesis, Department of Engineering Science, National Cheng Kung University, Tainan, Taiwan, 2024.
[15] C.-Y. Yu, A Parallel Programming Interface for In-storage Processing, M.S. thesis, Department of Engineering Science, National Cheng Kung University, Tainan, Taiwan, 2024.
[16] Winbond, "W25N04KV Datasheet," [Online]. Available: https://www.winbond.com/hq/product/code-storage-flash-memory/qspinand-flash/?__locale=zh_TW&partNo=W25N04KV. [Accessed 10 July 2024].
[17] Mobatek, "MobaXterm," [Online]. Available: https://mobaxterm.mobatek.net/download.html. [Accessed 10 July 2024].
[18] Nuvoton, "OpenNuvoton Github," [Online]. Available: https://github.com/OpenNuvoton/MPU-Family. [Accessed 10 July 2024].
[19] Buildroot, "The Buildroot user manual," [Online]. Available: https://buildroot.org/downloads/manual/manual.html. [Accessed 10 July 2024].
[20] Nuvoton, "MA35 Series NuWriter User Manual," [Online]. Available: MA35 Series NuWriter. [Accessed 10 July 2024].
[21] Nuvoton, "Interworking of MA35D1 RTP and Linux," [Online]. Available: https://www.nuvoton.com/export/resource-files/en-us--AN_0064_MA35D1_Linux_RTP_EN.pdf. [Accessed 10 July 2024].
[22] Nuvoton, "NuEclipse IDE & Nu-Link Driver," [Online]. Available: https://www.nuvoton.com/tool-and-software/ide-and-compiler/. [Accessed 10 July 2024].
[23] Nuvoton, "MA35D1 Overview," [Online]. Available: https://www.nuvoton.com/products/microprocessors/arm-cortex-a35-mpus/ma35d1-high-performance-edge-iiot-series/. [Accessed 10 July 2024].
[24] ADATA, "UV320," [Online]. Available: https://www.adata.com/hk/faq/506. [Accessed 10 July 2024].
[25] XPG, "XPG GAMMIX S70 PRO," [Online]. Available: https://www.xpg.com/tw/xpg/solid-state-drives-gammix-s70-pro. [Accessed 10 July 2024].
[26] R. P. Weicker, "benchmark-dhrystone," Sifive, [Online]. Available: https://github.com/sifive/benchmark-dhrystone. [Accessed 15 July 2024].
[27] kaggle, "aisanfaces Dataset," [Online]. Available: https://www.kaggle.com/datasets/lukexng/aisanfaces?resource=download. [Accessed 10 July 2024].
[28] OpenCV, "haarcascade_frontalface_default.xml," [Online]. Available: https://github.com/opencv/opencv/blob/4.x/data/haarcascades/haarcascade_frontalface_default.xml. [Accessed 10 July 2024].