Programmation multi-accélérateurs unifiée en OpenCL
Résumé
Le standard OpenCL propose une interface de programmation adaptable à différents types d'accélérateurs (GPU, CPU, CELL. . . ). Pour chaque architecture, il revient aux applications d'effectuer explicitement les partitionnements et les transferts de données ainsi que les placements des tâches sur les accélérateurs disponibles, ce qui est très difficile. Néanmoins, nous montrons que le standard OpenCL peut également être utilisé avec une implémentation qui masque les différents accélérateurs aux applications et ne lui en présente qu'un seul (virtuel). Les transferts de données et les placements des tâches sont alors réalisés par l'implémentation. Nous montrons que ce modèle de programmation permet d'exploiter efficacement et de façon unifiée des architectures hétérogènes.
Origine | Fichiers produits par l'(les) auteur(s) |
---|
Loading...