Sciweavers

ASPLOS
2011
ACM

Sponge: portable stream programming on graphics engines

12 years 8 months ago
Sponge: portable stream programming on graphics engines
Graphics processing units (GPUs) provide a low cost platform for accelerating high performance computations. The introduction of new programming languages, such as CUDA and OpenCL, makes GPU programming attractive to a wide variety of programmers. However, programming GPUs is still a cumbersome task for two primary reasons: tedious performance optimizations and lack of portability. First, optimizing an algorithm for a specific GPU is a time-consuming task that requires a thorough understanding of both the algorithm and the underlying hardware. Unoptimized CUDA programs typically only achieve a small fraction of the peak GPU performance. Second, GPU code lacks efficient portability as code written for one GPU can be inefficient when executed on another. Moving code from one GPU to another while maintaining the desired performance is a non-trivial task often requiring significant modifications to account for the hardware differences. In this work, we propose Sponge, a compilation f...
Amir Hormati, Mehrzad Samadi, Mark Woh, Trevor N.
Added 24 Aug 2011
Updated 24 Aug 2011
Type Journal
Year 2011
Where ASPLOS
Authors Amir Hormati, Mehrzad Samadi, Mark Woh, Trevor N. Mudge, Scott A. Mahlke
Comments (0)