Withdraw
Loading…
Using the High Productivity Language Chapel to Target GPGPU Architectures
Sidelnik, Albert; Chamberlain, Bradford L.; Garzaran, Maria J.; Padua, David
Loading…
Permalink
https://hdl.handle.net/2142/18874
Description
- Title
- Using the High Productivity Language Chapel to Target GPGPU Architectures
- Author(s)
- Sidelnik, Albert
- Chamberlain, Bradford L.
- Garzaran, Maria J.
- Padua, David
- Issue Date
- 2011-04-25
- Keyword(s)
- Chapel, HPC, GPGPU, Cuda, PGAS, Languages, Compilers
- Abstract
- It has been widely shown that GPGPU architectures offer large performance gains compared to their traditional CPU counterparts for many applications. The downside to these architectures is that the current programming models present numerous challenges to the programmer: lower-level languages, explicit data movement, loss of portability, and challenges in performance optimization. In this paper, we present novel methods and compiler transformations that increase productivity by enabling users to easily program GPGPU architectures using the high productivity programming language Chapel. Rather than resorting to different parallel libraries or annotations for a given parallel platform, we leverage a language that has been designed from first principles to address the challenge of programming for parallelism and locality. This also has the advantage of being portable across distinct classes of parallel architectures, including desktop multicores, distributed memory clusters, large-scale shared memory, and now CPU-GPU hybrids. We present experimental results from the Parboil benchmark suite which demonstrate that codes written in Chapel achieve performance comparable to the original versions implemented in CUDA.
- Type of Resource
- text
- Language
- en
- Permalink
- http://hdl.handle.net/2142/18874
- Sponsor(s)/Grant Number(s)
- NSF CCF 0702260
- Cray Inc. Cray-SRA-2010-01696
- 2010-2011 Nvidia Research Fellowship
Owning Collections
Manage Files
Loading…
Edit Collection Membership
Loading…
Edit Metadata
Loading…
Edit Properties
Loading…
Embargoes
Loading…