• DocumentCode
    2052990
  • Title

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

  • Author

    Cornwall, Jay L T ; Beckmann, Olav ; Kelly, Paul H J

  • Author_Institution
    Dept. of Comput., Imperial Coll. London
  • fYear
    2006
  • fDate
    25-29 April 2006
  • Abstract
    This paper presents work-in-progress towards a C++ source-to-source translator that automatically seeks parallelizable 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 parallelization techniques. We show that our approach has potential and explain some of the remaining challenges in building an effective tool
  • Keywords
    C++ language; computer graphic equipment; coprocessors; image processing; program compilers; program interpreters; programming language semantics; software libraries; C++ image processing library; C++ language; C++ source-to-source translator; GPU code generation; ROSE source-to-source transformation library; domain-specific knowledge; erosion filter; graphics coprocessor; image blending; industrial image processing library; library semantics; parallel analysis; parallelizable code fragment; parallelization technique; source transformation; Application software; Concurrent computing; Coprocessors; Educational institutions; Graphics; Image processing; Libraries; Parallel processing; Performance analysis; Programming profession;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Parallel and Distributed Processing Symposium, 2006. IPDPS 2006. 20th International
  • Conference_Location
    Rhodes Island
  • Print_ISBN
    1-4244-0054-6
  • Type

    conf

  • DOI
    10.1109/IPDPS.2006.1639716
  • Filename
    1639716