探討在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...

Full description

Bibliographic Details
Main Authors: Wang, Yu-Chen, 王鈺晟
Other Authors: Lee, Jenq-Kuen
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