電機資訊學院: 資訊工程學研究所指導教授: 徐慰中李弘宇Lee, Hong-YuHong-YuLee2017-03-032018-07-052017-03-032018-07-052016http://ntur.lib.ntu.edu.tw//handle/246246/275463Heterogeneous System Architecture (HSA) is an architecture standard developed by the non-profit HSA foundation aiming to make it easier to program for heterogeneous computing. A single HSA system may include an assortment of devices with distinct instruction set architectures (ISAs). HSA Intermediate Language (HSAIL) is an intermediate language defined by the foundation to abstract away the heterogeneity in the HSA computing environment. A programmer builds code using HSAIL in order to allow it to be executed on a wide range of devices, such as CPU, GPU, DSP, etc. An HSA implementation encompasses the hardware components and an HSA runtime including the finalizer. A finalizer translates HSAIL modules into a given ISA. This work investigates the issues of indirect finalization, kernel code optimization and performance on an HSA compliant system with an AMD Carrizo APU targeting its GPU architecture. To finalize the HSAIL code indirectly, a HSAIL frontend is developed to translate HSAIL codes to LLVM modules, which is then integrated with the LLVM AMDGPU backend. The author develops eight OpenCL benchmarks whose kernel codes are from AMD APP SDK. The work also shows the impact of three LLVM optimizaton passes, one of which is written by the author, on indirect finalization.1218872 bytesapplication/pdf論文公開時間: 2017/8/24論文使用權限: 同意無償授權異質系統架構圖形處理器HSAFinalizerGPU在HSA系統上以間接Finalizer進行程式碼最佳化Code Optimization in an Indirect Finalizer for an HSA-based Systemthesis10.6342/NTU201601752http://ntur.lib.ntu.edu.tw/bitstream/246246/275463/1/ntu-105-R03922003-1.pdf