Conception et implémentation d’une librairie de conteneurs réguliers méta-programmés pour les architectures parallèles, applicable aux systèmes numériques multidimensionnels
Loading...
Date
2017-11-13
Journal Title
Journal ISSN
Volume Title
Publisher
Abstract
Résumé (Français et/ou Anglais) :
Résumé :
Cette thèse présente une nouvelle conception de conteneurs de données multidimensionnels et multiplateforme, particulièrement adaptée pour l’écosystème OPENCL, qui a permis l’élaboration d’une nouvelle librairie que nous baptisons CL_ARRAY. Outre, la simplicité d’utilisation, une sécurité intégrée et une sémantique à typage statique qui caractérisent les conteneurs du CL_ARRAY, nous proposons un concept similaire au ARRAY_VIEW du C++AMP pour formaliser le modèle d’exécution et ou le modèle dépendances à faible grains , par ailleurs et même si les autres librairies qui proposent des conteneurs évolués , ne sont pas adaptées pour l’écosystème OPENCL, nos résultats ont démontré une performance supérieure et une économie mémoire conséquente comparativement à trois librairies de conteneurs les plus populaires auprès de la communauté des développeurs dans le contexte d’applications de l’algèbre multilinéaire.
Abstract:
This doctoral thesis presents a new metaprogramming library, CL_ARRAY, which offers multiplatform and generic multidimensional data containers for C++ specifically adapted for parallel programming. The CL_ARRAY containers are built around a new formalism for representing the multidimensional nature of data as well as the semantics of multidimensional pointers and contiguous data structures. We also present OCL_ARRAY_VIEW, a concept based on metaprogrammed enveloped objects that supports multidimensional transformations and multidimensional iterators designed to simplify and formalize the interfacing process between OpenCL APIs, standard template library (STL) algorithms and CL_ARRAY containers. Our results demonstrate improved performance and energy savings over the three most popular container libraries available to the developer community for use in the context of multi-linear algebraic applications.
Description
Doctorat en sciences
