Extension for GPU of CONS compiler infrastructure
Project/Area Number |
25330089
|
Research Category |
Grant-in-Aid for Scientific Research (C)
|
Allocation Type | Multi-year Fund |
Section | 一般 |
Research Field |
Software
|
Research Institution | Tokyo University of Science |
Principal Investigator |
|
Project Period (FY) |
2013-04-01 – 2016-03-31
|
Project Status |
Completed (Fiscal Year 2015)
|
Budget Amount *help |
¥4,810,000 (Direct Cost: ¥3,700,000、Indirect Cost: ¥1,110,000)
Fiscal Year 2015: ¥1,430,000 (Direct Cost: ¥1,100,000、Indirect Cost: ¥330,000)
Fiscal Year 2014: ¥1,690,000 (Direct Cost: ¥1,300,000、Indirect Cost: ¥390,000)
Fiscal Year 2013: ¥1,690,000 (Direct Cost: ¥1,300,000、Indirect Cost: ¥390,000)
|
Keywords | コンパイラ / コード最適化 / 並列化 / GPU / キャッシュ効率化 / 要求駆動型データフロー解析 / 静的単一代入形式 / 網羅型データフロー解析 / LLVM / コンパイラ共通基盤 / GPGPU / CUDA / OpenCL |
Outline of Final Research Achievements |
In order to implement a new compiler infrastructure where optimizers for GPU can be easily implemented on simple intermediate representation LIR of COINS infrastructure, I have implemented a transformer between LIR and another intermediate representation LLVM-IR of LLVM, which can generate the code for GPU. Furthermore, to illustrate optimizations for GPU, I have proposed and implemented general optimizers effective for GPU, and GPU specific optimizers. As general optimizers, I have implemented a technique that enhances cache-hits through preceedingly aggregating the same array references with more same indexes in higher dimensions. Also, I have implemented a technique that achieves scalar replacement for loops with any structures based on question propagation. As GPU specific optimizers, I have implemented a technique for effectively suppressing branch divergence caused on GPU through code fusion or code factoring of branch paths based on data dependencies.
|
Report
(4 results)
Research Products
(11 results)