Sciweavers

IPPS
2006
IEEE

Automatically translating a general purpose C++ image processing library for GPUs

14 years 6 months ago
Automatically translating a general purpose C++ image processing library for GPUs
— This paper presents work-in-progress towards a C++ source-to-source translator that automatically seeks parallelisable code fragments and replaces them with code for a graphics co-processor. We report on our experience with accelerating an industrial image processing library. To increase the effectiveness of our approach, we exploit some domain-specific knowledge of the library’s semantics. We outline the architecture of our translator and how it uses the ROSE source-to-source transformation library to overcome complexities in the C++ language. Techniques for parallel analysis and source transformation are presented in light of their uses in GPU code generation. We conclude with results from a performance evaluation of two examples, image blending and an erosion filter, hand-translated with our parallelisation techniques. We show that our approach has potential and explain some of the remaining challenges in building an effective tool.
Jay L. T. Cornwall, Olav Beckmann, Paul H. J. Kell
Added 12 Jun 2010
Updated 12 Jun 2010
Type Conference
Year 2006
Where IPPS
Authors Jay L. T. Cornwall, Olav Beckmann, Paul H. J. Kelly
Comments (0)