Algorithmic Skeletons Using Template Metaprogramming
Résumé
Algorithmic skeletons, introduced by Cole, were designed to ease the development of parallel software. This article presents a way to represent and implement algorithmic skeletons using bones - atomic elements - to build structures, and data flow graphs to link the structures. We design and implement a library relying on Template Metaprogramming (TMP) to describe and use both skeletons and links to produce automatically either a sequential or a parallel implementation of the algorithm, aiming slight to no run-time overhead compared to handwritten implementations. Performance results of this library, applied to metaheuristics in Operations Research (OR), are presented to show that this approach induces negligible run-time overhead.
Origine | Fichiers produits par l'(les) auteur(s) |
---|