Compilation statique pour le Python Scientifique
Serge Guelton
30 January 2014, 10h30 - 30 January 2014, 11h30 Salle/Bat : 465/PCRI-N
Contact :
Activités de recherche : Compilation et optimisation des programmes
Résumé :
L'adoption du langage Python par la communauté scientifique
offre la possibilité de s'intéresser à la compilation d'un langage très
dynamique pour en retirer les bénéfices que l'on attend généralement de langages compilés, principalement en termes de performances. Si
l'intuition nous fait dire que les techniques de compilations
traditionnelles ne s'appliquent pas à un langage dynamiquement typé
comme Python, une étude plus fine montre que de nombreuses
transformations de code et analyse peuvent s'appliquer sur un sous
ensemble du langage qui reste suffisant dans le domaine du calcul
scientifique, et qu'il est possible de traduire des modules exprimés
dans un langage de haut niveau en modules natifs parallèles efficaces.
Le compilateur Pythran, capable de traduire un sous-ensemble du langage Python implicitement statiquement typé en méta-programme C++, est utilisé en support de ses travaux. Il reprend des idées issues des langages tableaux à travers le support pour le module numpy, ainsi que des optimisations généralement appliquées aux langages fonctionnels.