Outil : pfor

Bibliothèque C++ active de parallélisation automatique de boucles

La bibliothèque pfor utilise la métaprogrammation template, et plus spécifiquement la technique des patrons d'expression, pour fournir un EDSL permettant la description de boucles et l'acquisition de leur AST à la compilation. Cet AST est alors analysé pour déterminer quelles variables sont utilisées dans une boucle et comment elles le sont. Le résultat de cette analyse permet de regrouper les instructions interdépendantes, et de déterminer pour chaque groupe si elles peuvent être exécutées en parallèle. Les nouvelles instructions correspondantes sont alors générées pour remplacer le code écrit par le développeur.



https://phd.pereda.fr/dev/pfor

Auteurs : Alexis PEREDA, Bruno BACHELET, Claude MAZEL, David HILL