研究生: |
林上傑 Lin, Shang-Chieh |
---|---|
論文名稱: |
A GPU Runtime Demonstrated on an Encrypted File System 實作GPU執行框架並演示於加密檔案系統 |
指導教授: |
許雅三
Hsu, Yarsun |
口試委員: |
李政崑
Lee, Jenq-Kuen 邱瀞德 Chiu, Ching-Te |
學位類別: |
碩士 Master |
系所名稱: |
電機資訊學院 - 電機工程學系 Department of Electrical Engineering |
論文出版年: | 2013 |
畢業學年度: | 102 |
語文別: | 英文 |
論文頁數: | 55 |
中文關鍵詞: | 顯示卡 、平行運算 、異質運算 、檔案系統 、進階加密標準 |
外文關鍵詞: | GPGPU, CUDA, OpenCL, Filesystem, AES |
相關次數: | 點閱:2 下載:0 |
分享至: |
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報 |
在此論文中,我們實作了一個異質系統架構執行框架,使開發者能夠有效率地整合多個運算資源,如顯示卡、計算加速卡、協同處理器等等。在此架構下,應用程式能夠管理任務的執行以及設計任務的排程方法,使系統能夠根據任務的特性,選擇最適合的硬體來完成運算,或是同時利用多個硬體來加速任務執行,提昇整體系統的使用效率。並且,亦針對計算加速卡的運算程序進行最佳化,徹底發揮硬體的最大效能。結果顯示在資料傳送的部份,能夠帶來40%的速度提昇,而整體之效能,則根據應用程式特性不同,額外帶來若干倍不等的加速。
另一方面,此論文亦整合上述之執行框架,修改了之前所提出之檔案可靠度架構並以GPU協同加速之檔案系統,使之能夠整合更多計算資源,包含CUDA與OpenCL等平台。在原先之檔案系統,我們提供了使用者彈性的設置,允許對各個檔案設置不同的可靠度級別,再依此進行不同程度的可靠度編碼。我們依此概念增強了檔案系統,加入檔案安全性的設置,讓使用者能夠為不同檔案設定不同程度的安全級別,再即時為檔案做加密運算。其中可靠度演算法採用柯西里德所羅門(Cauchy Reed-Solomon)編碼,而加密演算法則採用進階加密標準(Advanced Encryption Standard)。結果顯示,配備計算加速卡協同加速之系統,加密運算能夠達到104.57倍之效能提昇。
This work revised the original GPU-accelerated file system to enhance not only reliability but also security. It is designed to have a flexible configuration on both reliability and encryption schemes. Different encoding levels and encryption mode are provided to configure for each file. Moreover, a runtime framework is proposed, which provides a unified interface for applications to easily take advantage of the various computation powers on a heterogeneous environment. Multiple devices and platforms, such as CUDA and OpenCL can be utilized at the same time to achieve a better performance.
The system is implemented with Cauchy Reed-Solomon (CRS) encoding/decoding operations for reliability and Advanced Encryption Standard (AES) encryptions for security. Both of the operations are accelerated by CUDA and OpenCL. Besides, the file system is integrated with FUSE (File system in User space) and run as a stacked file system. It can be easily ported to other platforms that support POSIX and can be mount on any other file systems.
Finally, The runtime framework and the system were evaluated and compared with different hardware environments. The results show that the system runs efficiently and has a performance gain up to 104.57x on AES operations.
[1] C. Tseng, S. Lin, and Y. Hsu, “A file system using gpu-accelerated file-wise reliability scheme,” 2012.
[2] A. Gharaibeh, S. Al-Kiswany, and M. Ripeanu, “Crystalgpu: Transparent and efficient utilization of gpu power,” arXiv preprint arXiv:1005.1695, 2010.
[3] C. Augonnet, S. Thibault, R. Namyst, and P.-A. Wacrenier, “Starpu: a unified plat- form for task scheduling on heterogeneous multicore architectures,” Concurrency and Computation: Practice and Experience, vol. 23, no. 2, pp. 187–198, 2011.
[4] “Aparapi: Api for data parallel java. allows suitable code to be executed on gpu via opencl.” [Online]. Available: https://code.google.com/p/aparapi/
[5] M. A. Halcrow, “ecryptfs: An enterprise-class encrypted filesystem for linux,” in Proceedings of the 2005 Linux Symposium, vol. 1, 2005, pp. 201–218.
[6] W. Sun, R. Ricci, and M. L. Curry, “Gpustore: harnessing gpu computing for storage systems in the os kernel,” in Proceedings of the 5th Annual International Systems and
Storage Conference. ACM, 2012, p. 6.
[7] D. Le, J. Chang, X. Gou, A. Zhang, and C. Lu, “Parallel aes algorithm for fast data encryption on gpu,” in Computer Engineering and Technology (ICCET), 2010 2nd International Conference on, vol. 6. IEEE, 2010, pp. V6–1.
[8] K. Iwai, T. Kurokawa, and N. Nisikawa, “Aes encryption implementation on cuda gpu and its analysis,” in Networking and Computing (ICNC), 2010 First International Conference on. IEEE, 2010, pp. 209–214.
[9] N. Corporation, “Nvidia kepler gk110 architecture whitepaper,” 2012.
[10] I. Advanced Micro Devices, “Amd graphics cores next (gcn) architecture whitepaper,” 2012.
[11] J. Daemen and V. Rijmen, The Design of Rijndael. Secaucus, NJ, USA: Springer-Verlag New York, Inc., 2002.
[12] “Fuse: Filesystem in userspace.” [Online]. Available: http://fuse.sourceforge.net/
[13] A. Murat Fiskiran and R. B. Lee, “Fast parallel table lookups to accelerate symmetric-key cryptography,” in Information Technology: Coding and Computing, 2005. ITCC 2005. International Conference on, vol. 1. IEEE, 2005, pp. 526–531.
[14] J. Blo ̈mer, M. Kalfane, M. Karpinski, R. M. Karp, M. Luby, and D. Zuckerman, “An xor-based erasure-resilient coding scheme,” ICSI, Tech. Rep. TR-95-048, August 1995.
[15] P. Bzoch and J. Safarik, “Security and reliability of distributed file systems,” in Intel ligent Data Acquisition and Advanced Computing Systems (IDAACS), 2011 IEEE 6th International Conference on, vol. 2. IEEE, 2011, pp. 764–769.
[16] S. Ryoo, C. I. Rodrigues, S. S. Baghsorkhi, S. S. Stone, D. B. Kirk, and W.-m. W. Hwu, “Optimization principles and application performance evaluation of a multithreaded gpu using cuda,” in Proceedings of the 13th ACM SIGPLAN Symposium on Principles and practice of parallel programming, ser. PPoPP ’08. New York, NY, USA: ACM, 2008, pp. 73–82. [Online]. Available: http://doi.acm.org/10.1145/1345206.1345220
[17] N. Corporation, “Cuda toolkit documentation.” [Online]. Available: http://docs. nvidia.com/cuda/index.html
[18] D. B. Kirk and W.-m. W. Hwu, Programming Massively Parallel Processors: A Hands-on Approach, 1st ed. San Francisco, CA, USA: Morgan Kaufmann Publishers Inc., 2010.
[19] W. Krier and E. Liska, “FUSE Design Document,” Sun Microsystems, Tech. Rep., 2009.