DocumentCode
3664236
Title
Heterogeneous Habanero-C (H2C): A Portable Programming Model for Heterogeneous Processors
Author
Deepak Majeti;Vivek Sarkar
fYear
2015
fDate
5/1/2015 12:00:00 AM
Firstpage
708
Lastpage
717
Abstract
Heterogeneous architectures with their diverse architectural features impose significant programmability challenges. Existing programming systems involve non-trivial learning and are not productive, not portable, and are challenging to tune for performance. In this paper, we introduce Heterogeneous Habanero-C (H2C), which is an implementation of the Habanero execution model for modern heterogeneous (CPU + GPU) architectures. The H2C language provides high-level constructs to specify the computation, communication, and synchronization in a given application. H2C also implements novel constructs for task partitioning and locality. The H2C (source-to-source) compiler and runtime framework efficiently map these high-level constructs onto the underlying heterogeneous platform, which can include multiple CPU cores and multiple GPU devices, possibly from different vendors. Experimental evaluations of four applications show significant improvements in productivity, portability, and performance.
Keywords
"Runtime","Graphics processing units","Computer architecture","Optimization","Kernel","Programming"
Publisher
ieee
Conference_Titel
Parallel and Distributed Processing Symposium Workshop (IPDPSW), 2015 IEEE International
Type
conf
DOI
10.1109/IPDPSW.2015.81
Filename
7284378
Link To Document