探討在CPU與GPU上之多面體轉換最佳化
碩士 === 國立清華大學 === 資訊工程學系 === 101 === The polyhedral model which is a powerful mathematical framework for loop nested optimization and parallelization has been developed for decades. It becomes popular because of the abundant mathematical theory background. There are many frameworks developed based o...
Main Authors: | , |
---|---|
Other Authors: | |
Format: | Others |
Language: | en_US |
Published: |
2013
|
Online Access: | http://ndltd.ncl.edu.tw/handle/29310177853435901970 |
id |
ndltd-TW-101NTHU5392056 |
---|---|
record_format |
oai_dc |
spelling |
ndltd-TW-101NTHU53920562015-10-13T22:29:58Z http://ndltd.ncl.edu.tw/handle/29310177853435901970 探討在CPU與GPU上之多面體轉換最佳化 Investigation of Polyhedral Transformations on CPU and GPU Wang, Yu-Chen 王鈺晟 碩士 國立清華大學 資訊工程學系 101 The polyhedral model which is a powerful mathematical framework for loop nested optimization and parallelization has been developed for decades. It becomes popular because of the abundant mathematical theory background. There are many frameworks developed based on the polyhedral model, and these frameworks could be combined with compiler techniques for transformations of loop nested program codes and analysis. In this thesis, we aim to investigate how polyhedral transformations could be applied on different heterogeneous multi-core platforms. To discover more potential applicability of polyhedral transformations, we choose RenderScript on Android platform and OpenCL which have less research about polyhedral model as our target. RenderScript is a component of Android operating system, it provides low-level APIs for heterogeneous computing. We perform kernel level optimization with polyhedral transformation by integrating LLVM Polly into RenderScript online JIT compiler (libbcc). In the experiment, we re-program PolyBench benchmark in RenderScript and compare the performance differences after the optimizations on Android 4.1.1 Jelly Bean, average we could speed up 58% in execution time. OpenCL is another framework for writing programs which could be executed on heterogeneous platforms. In this thesis, we have an experimental research about performing polyhedral transformation on OpenCL kernel function. In the experiment, we apply PolyBench/GPU benchmark to evaluate the performance after the optimization. In loop tiling, we get 58% improvement in average. In loop interchange, we get over 2 times speed up. Through the experimental result, polyhedral transformation is more widely applicable than we expect. Lee, Jenq-Kuen 李政崑 2013 學位論文 ; thesis 35 en_US |
collection |
NDLTD |
language |
en_US |
format |
Others
|
sources |
NDLTD |
description |
碩士 === 國立清華大學 === 資訊工程學系 === 101 === The polyhedral model which is a powerful mathematical framework for loop nested optimization and parallelization has been developed for decades. It becomes popular because of the abundant mathematical theory background. There are many frameworks developed based on the polyhedral model, and these frameworks could be combined with compiler techniques for transformations of loop nested program codes and analysis. In this thesis, we aim to investigate how polyhedral transformations could be applied on different heterogeneous multi-core platforms. To discover more potential applicability of polyhedral transformations, we choose RenderScript on Android platform and OpenCL which have less research about polyhedral model as our target.
RenderScript is a component of Android operating system, it provides low-level APIs for heterogeneous computing. We perform kernel level optimization with polyhedral transformation by integrating LLVM Polly into RenderScript online JIT compiler (libbcc). In the experiment, we re-program PolyBench benchmark in RenderScript and compare the performance differences after the optimizations on Android 4.1.1 Jelly Bean, average we could speed up 58% in execution time.
OpenCL is another framework for writing programs which could be executed on heterogeneous platforms. In this thesis, we have an experimental research about performing polyhedral transformation on OpenCL kernel function. In the experiment, we apply PolyBench/GPU benchmark to evaluate the performance after the optimization. In loop tiling, we get 58% improvement in average. In loop interchange, we get over 2 times speed up.
Through the experimental result, polyhedral transformation is more widely applicable than we expect.
|
author2 |
Lee, Jenq-Kuen |
author_facet |
Lee, Jenq-Kuen Wang, Yu-Chen 王鈺晟 |
author |
Wang, Yu-Chen 王鈺晟 |
spellingShingle |
Wang, Yu-Chen 王鈺晟 探討在CPU與GPU上之多面體轉換最佳化 |
author_sort |
Wang, Yu-Chen |
title |
探討在CPU與GPU上之多面體轉換最佳化 |
title_short |
探討在CPU與GPU上之多面體轉換最佳化 |
title_full |
探討在CPU與GPU上之多面體轉換最佳化 |
title_fullStr |
探討在CPU與GPU上之多面體轉換最佳化 |
title_full_unstemmed |
探討在CPU與GPU上之多面體轉換最佳化 |
title_sort |
探討在cpu與gpu上之多面體轉換最佳化 |
publishDate |
2013 |
url |
http://ndltd.ncl.edu.tw/handle/29310177853435901970 |
work_keys_str_mv |
AT wangyuchen tàntǎozàicpuyǔgpushàngzhīduōmiàntǐzhuǎnhuànzuìjiāhuà AT wángyùchéng tàntǎozàicpuyǔgpushàngzhīduōmiàntǐzhuǎnhuànzuìjiāhuà AT wangyuchen investigationofpolyhedraltransformationsoncpuandgpu AT wángyùchéng investigationofpolyhedraltransformationsoncpuandgpu |
_version_ |
1718077382240239616 |