API-Compiling for Image Hardware Accelerators
CRI, Maths & Systems, MINES ParisTech, France
CRI Technical Report – MINES ParisTech A/500/CRI, 2012
@article{coelho2012api,
title={API-Compiling for Image Hardware Accelerators Technical Report–MINES ParisTech A/500/CRI},
author={Coelho, F. and Irigoin, F.},
year={2012}
}
We present an API-based compilation strategy to optimize image applications, developed using a high level image processing library, onto three different image processing hardware accelerators. The library API provides the semantics of the image computations. The three image accelerator targets are quite distinct: the first one uses a vector architecture; the second one presents a SIMD architecture; the last one runs both on GPGPU and multi-cores through OpenCL. We adapted standard compilation techniques to perform these compilation and code generation tasks automatically. Our strategy is implemented in PIPS, a source-to-source compiler which greatly reduces the development cost as standard phases are reused and parameterized. Experiments were run on hardware functional simulators, covering 1276 cases, from elementary tests to full applications, with very good results. Our contributions include: 1) a general low-cost compilation strategy for image processing applications, based on the semantics provided by library calls, which improves locality by an order of magnitude; 2) specific heuristics to minimize execution time on the target accelerators; 3) numerous experiments that show the effectiveness of our strategies. We demonstrate that our API-based compilation strategy is a viable approach for both development cost and overall performance, and discuss the conditions required to apply this approach to other application domains.
July 2, 2012 by hgpu