Edinburgh Research Archive

Mapping parallel programs to heterogeneous multi-core systems

dc.contributor.advisor
O'Boyle, Michael
en
dc.contributor.advisor
Franke, Bjoern
en
dc.contributor.author
Grewe, Dominik
en
dc.contributor.sponsor
Engineering and Physical Sciences Research Council (EPSRC)
en
dc.date.accessioned
2014-05-26T15:14:48Z
dc.date.available
2014-05-26T15:14:48Z
dc.date.issued
2014-06-27
dc.description.abstract
Heterogeneous computer systems are ubiquitous in all areas of computing, from mobile to high-performance computing. They promise to deliver increased performance at lower energy cost than purely homogeneous, CPU-based systems. In recent years GPU-based heterogeneous systems have become increasingly popular. They combine a programmable GPU with a multi-core CPU. GPUs have become flexible enough to not only handle graphics workloads but also various kinds of general-purpose algorithms. They are thus used as a coprocessor or accelerator alongside the CPU. Developing applications for GPU-based heterogeneous systems involves several challenges. Firstly, not all algorithms are equally suited for GPU computing. It is thus important to carefully map the tasks of an application to the most suitable processor in a system. Secondly, current frameworks for heterogeneous computing, such as OpenCL, are low-level, requiring a thorough understanding of the hardware by the programmer. This high barrier to entry could be lowered by automatically generating and tuning this code from a high-level and thus more user-friendly programming language. Both challenges are addressed in this thesis. For the task mapping problem a machine learning-based approach is presented in this thesis. It combines static features of the program code with runtime information on input sizes to predict the optimal mapping of OpenCL kernels. This approach is further extended to also take contention on the GPU into account. Both methods are able to outperform competing mapping approaches by a significant margin. Furthermore, this thesis develops a method for targeting GPU-based heterogeneous systems from OpenMP, a directive-based framework for parallel computing. OpenMP programs are translated to OpenCL and optimized for GPU performance. At runtime a predictive model decides whether to execute the original OpenMP code on the CPU or the generated OpenCL code on the GPU. This approach is shown to outperform both a competing approach as well as hand-tuned code.
en
dc.identifier.uri
http://hdl.handle.net/1842/8852
dc.language.iso
en
dc.publisher
The University of Edinburgh
en
dc.relation.hasversion
Dominik Grewe, Zheng Wang and Michael F.P. O’Boyle. “A Workload-Aware Mapping Approach For Data-Parallel Programs”. In 6th International Conference on High-Performance and Embedded Architectures and Compilers, January 2011.
en
dc.relation.hasversion
Dominik Grewe and Anton Lokhmotov. “Automatically Generating and Tuning GPU Code for Sparse Matrix-Vector Multiplication from a High-Level Representation”. In 4th Workshop on General Purpose Processing on Graphics Processing Units, March 2011.
en
dc.relation.hasversion
Dominik Grewe and Michael F.P. O’Boyle. “A Static Task Partitioning Approach for Heterogeneous Systems Using OpenCL”. In 20th International Conference on Compiler Construction, March 2011.
en
dc.relation.hasversion
Dominik Grewe, Zheng Wang and Michael F.P. O’Boyle. “Portable Mapping of Data Parallel Programs to OpenCL for Heterogeneous Systems”. In International Symposium on Code Generation and Optimization, February 2013.
en
dc.relation.hasversion
Dominik Grewe, Zheng Wang and Michael F.P. O’Boyle. “OpenCL Task Partitioning in the Presence of GPU Contention”. In 26th International Workshop on Languages and Compilers for Parallel Computing, September 2013.
en
dc.subject
heterogeneous computing
en
dc.subject
parallel computing
en
dc.subject
GPU
en
dc.subject
OpenCL
en
dc.subject
predictive modeling
en
dc.title
Mapping parallel programs to heterogeneous multi-core systems
en
dc.type
Thesis or Dissertation
en
dc.type.qualificationlevel
Doctoral
en
dc.type.qualificationname
PhD Doctor of Philosophy
en

Files

Original bundle

Now showing 1 - 1 of 1
Name:
Grewe2014.pdf
Size:
1.2 MB
Format:
Adobe Portable Document Format
Description:

This item appears in the following Collection(s)