Skip navigation

DSpace

機構典藏 DSpace 系統致力於保存各式數位資料(如:文字、圖片、PDF)並使其易於取用。

點此認識 DSpace
DSpace logo
English
中文
  • 瀏覽論文
    • 校院系所
    • 出版年
    • 作者
    • 標題
    • 關鍵字
  • 搜尋 TDR
  • 授權 Q&A
    • 我的頁面
    • 接受 E-mail 通知
    • 編輯個人資料
  1. NTU Theses and Dissertations Repository
  2. 電機資訊學院
  3. 資訊工程學系
請用此 Handle URI 來引用此文件: http://tdr.lib.ntu.edu.tw/jspui/handle/123456789/43805
標題: Affine calculator程式平行化計算器實作於GCC編譯器
Affine calculator in GCC
作者: Ying-Jie Wang
王穎杰
指導教授: 廖世偉
關鍵字: 自動平行化,編譯器,
Auto parallelization,Compiler,GCC,Affine partitioning,OpenMP,
出版年 : 2009
學位: 碩士
摘要: 雖然多核心處理器架構越來越普遍,但是在這種架構上撰寫程式並有效發揮每個處理單元的運算能力仍然是一件困難的事情。數個研究主題目標在於解決此類問題,自動平行化即是其中強而有力但同時也是相當困難的解決方法之一。
Affine partitioning 提供了一種有系統的方法,能夠在多核心處理器的架構上找到近似於最佳的計算與資料分解法。 Affine partitioning 是一個強大的統一常論,它的架構融合了許多高階的優化方法,例如: 迴圈調換,迴圈反轉,迴圈融合,迴圈分離等許多方法。基於這個統一的架構,能夠在一個由仿射資料參考所組成的巢狀迴圈中找到最大的平行度同時將程式中的通訊降到最小。
在這篇論文中,我們提出一個GCC編譯器中的分析過程,我們稱為” affine calculator pass”,這個分析過程將affine partitioning 演算法和GCC編譯器整合,達到了自動平型化的目標。我們成功的編譯了數個以C語言撰寫的程式,這些程式由包含不同型態的陣列存取以及不同類型的資料相依的巢狀迴圈所組成。完成編譯後輸出的是一個執行檔,每個執行檔都使用了GOMP 函式庫來達到充分利用處理器的每個運算處理單元。
Multicore processors have become pervasive in these days. But, it is still difficult to program these architectures to effectively utilize the computation power of multiple processing units. There are several research topics addressing this issue, one of the strong and at the same time very hard approaches is automatic parallelization.
Affine partitioning provides a systematic framework to find asymptotically optimal computation and data decomposition for multicore processors. Affine partitioning is a powerful unifying theory, the framework uniformly models a large class of high level optimizations such as loop interchange, reversal, skewing, fusion, fission, re-indexing, scaling. Based on this unified framework, that maximize parallelism while minimizing communication in programs with arbitrary loop nestings and affine data accesses.
In this papaer, we proposed a compiler pass in GCC called “affine calculator pass” which integrates affine partitioning framework and GCC to achieve the goal of automatic parallelization. We have successfully compiled some programs in C language which composed of different types of array access dependencies in arbitrary nested loop. And the outputs of the compilation are executables. Each of these executables can execute in parallel using GOMP library to utilize the processing units of multicore processor.
URI: http://tdr.lib.ntu.edu.tw/jspui/handle/123456789/43805
全文授權: 有償授權
顯示於系所單位:資訊工程學系

文件中的檔案:
檔案 大小格式 
ntu-98-1.pdf
  目前未授權公開取用
626.25 kBAdobe PDF
顯示文件完整紀錄


系統中的文件,除了特別指名其著作權條款之外,均受到著作權保護,並且保留所有的權利。

社群連結
聯絡資訊
10617臺北市大安區羅斯福路四段1號
No.1 Sec.4, Roosevelt Rd., Taipei, Taiwan, R.O.C. 106
Tel: (02)33662353
Email: ntuetds@ntu.edu.tw
意見箱
相關連結
館藏目錄
國內圖書館整合查詢 MetaCat
臺大學術典藏 NTU Scholars
臺大圖書館數位典藏館
本站聲明
© NTU Library All Rights Reserved