12437

High-level Parallel Programming Support for Heterogeneous Systems

Bo Wu
University of Vienna, Fakultat fur Informatik
University of Vienna, 2013

@phdthesis{wu2013high,

   title={High-level parallel programming support for heterogeneous systems},

   author={Wu, Bo},

   year={2013},

   school={uniwien}

}

Download Download (PDF)   View View   Source Source   

669

views

This master thesis focuses on several high-level parallel programming models for heterogeneous systems that have been becoming increasingly popular in the field of high-performance computing. Heterogeneous systems are an inexpensive and effective way for further performance improvements. A powerful combination of graphics processing units (GPUs) and central processing units (CPUs) is one of the most common types of heterogeneous systems. Currently, three of the world’s ten fastest supercomputers are based on heterogeneous designs. The preponderance of using these systems is not only a marked increase in performance, but also more energy-efficient and cost-effective. For software developers, programming on such platforms is a new challenge because of the more complex architecture. Despite two recently developed programming models, CUDA and OpenCL, programming of heterogeneous architectures is still much more difficult than programming of homogeneous architectures. Both of them are very low-level approaches. Programmers need to have in-depth knowledge of the hardware characteristics. Other challenges are the localization of parallelism, as well as the complex memory model and execution model. A further problem is that existing programs developed for homogeneous multicore processors cannot be easily ported to heterogeneous systems, and therefore, a rewriting of such programs is required. Hence, high-level programming approaches are of great importance to mitigate the problems of low-level programming. The purpose of the thesis is to outline the current development of high-level programming models for heterogeneous systems. The thesis explores different representative high-level programming models. By analyzing the characteristics of such approaches for applications in computational science, programmability, performance and portability are evaluated, compared and discussed. Different scientific codes have been implemented with PGI Accelerator, HMPP Workbench and OpenMPC, and experiments have been performed as well.
No votes yet.
Please wait...

* * *

* * *

HGPU group © 2010-2017 hgpu.org

All rights belong to the respective authors

Contact us: