A Dynamic to Static DSL Compiler for Image Processing Applications - Mines Paris
Communication Dans Un Congrès Année : 2016

A Dynamic to Static DSL Compiler for Image Processing Applications

Pierre Guillou
Benoît Pin
  • Fonction : Auteur
  • PersonId : 4246
  • IdHAL : benoitpin
Fabien Coelho
François Irigoin

Résumé

Computer vision is a thriving field of research , and Python is an instrument of choice for developing image processing software applications. Used in conjunction with specialized libraries written in C or C++, performance can be enhanced to match native code. The SMIL library [1] is a new C++ image processing library offering ease of programming with a Python wrapper. However, SMIL applications also have to be executed on embedded platforms such as FPGAs on which a Python interpreter is not available. The generic answer to such an issue is to re-code the original Python applications in C or C++, which will be then optimized for every hardware target, or to try to compile Python into native code using tools such as Cython [2]. The approach taken by the FREIA project [3, 4] is to ease portability of applications written in a DSL embedded in C (the FREIA API) by using specific optimizations such as image expressions evaluation, removal of temporary variables or image tiling. Is it possible for SMIL Python applications to benefit from the FREIA compilation toolchain in order to increase their portability onto specialized hardware targets? We present in this paper (1) a methodology to convert a dynamic DSL into a static one that preserves programmability, (2) a working implementation which takes care of types, memory allocation, polymorphism and API adaptation between SMIL and FREIA, (3) and experimental results on portability and performance.
Fichier principal
Vignette du fichier
A-640.pdf (220.6 Ko) Télécharger le fichier
Origine Fichiers produits par l'(les) auteur(s)
Loading...

Dates et versions

hal-01352808 , version 1 (09-08-2016)

Identifiants

  • HAL Id : hal-01352808 , version 1

Citer

Pierre Guillou, Benoît Pin, Fabien Coelho, François Irigoin. A Dynamic to Static DSL Compiler for Image Processing Applications. 19th Workshop on Compilers for Parallel Computing, Jul 2016, Valladolid, Spain. ⟨hal-01352808⟩
435 Consultations
615 Téléchargements

Partager

More