API Compilation for Image Hardware Accelerators - Archive ouverte HAL Accéder directement au contenu
Article Dans Une Revue ACM Transactions on Architecture and Code Optimization Année : 2013

API Compilation for Image Hardware Accelerators

Fabien Coelho
François Irigoin

Résumé

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. We demonstrate that such a strategy is profitable for both development cost and overall performance, especially as it takes advantage of optimization opportunities across library calls otherwise beyond reach. 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 have adapted standard compilation techniques to perform these compilation and code generation tasks automatically. Our strategy is implemented in\IfAnon{ an existing}{ PIPS, a} source-to-source compiler which greatly reduces the development cost as standard phases are reused and parameterized. We carried out experiments with applications on hardware functional simulators and GPUs. 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 also discuss the conditions required to extend this approach to other application domains.

Domaines

Dates et versions

hal-00829650 , version 1 (03-06-2013)

Identifiants

Citer

Fabien Coelho, François Irigoin. API Compilation for Image Hardware Accelerators. ACM Transactions on Architecture and Code Optimization, 2013, Volume 9 (Issue 4), pp.1-25. ⟨10.1145/2400682.2400708⟩. ⟨hal-00829650⟩
70 Consultations
0 Téléchargements

Altmetric

Partager

Gmail Facebook X LinkedIn More