
Sommaire
Modèles mémoire pour les multiprocesseurs à mémoire partagée
Date de création :
02.07.2015Auteur(s) :
Luc MARANGETPrésentation
Informations pratiques
Droits réservés à l'éditeur et aux auteurs. © Inria Paris - Rocquencourt
Description de la ressource
Résumé
La plupart des systèmes qui s'apparentent à des ordinateurs un tant soit peu sophistiqués comprennent plusieurs unités de calcul qui communiquent par l'intermédiaire d'une mémoire partagée. La programmation de ces systèmes est notoirement difficile, en raison de l'explosion de l'espace des états possibles du système. Mais il existe une autre difficulté : ces systèmes ne suivent pas le modèle simple de fils d'exécution exécutant chacun à leur tour des instructions dans l'ordre du programme et agissant instantanément sur la mémoire commune. Cette situation résulte des optimisations matérielles, telles que l'exécution *out-of-order* et spéculative, ainsi que de la présence de tampons et de caches destinés à ne pas contraindre les coeurs d'exécution à avancer au rythme de la mémoire. Ces optimisations matérielles ne changent pas le modèle d'exécution séquentielle, mais deviennent visibles des programmes parallèles. L'exposé portera sur la définition de modèles rigoureux et précis du comportement des machines multiprocesseurs, un préalable nécessaire pour l'écriture de compilateurs, d'outils d'analyse et d'idiome de programmation *lock-free* pour la programmation parallèle. Nous confrontons systématiquement nos modèles aux machines effectivement disponibles. Cette démarche aboutit à la proposition de modèles crédibles et expérimentalement vérifiés pour les machines à base de processeurs Intel x86, IBM Power et ARM. À l'occasion nous avons trouvé quelques bugs dans les implantations matérielles de ces architectures.
"Domaine(s)" et indice(s) Dewey
- Génie informatique : Mémoire (621.397)
Domaine(s)
- Électronique numérique, génie informatique, microprocesseur, microcontrôleur
- Architecture des ordinateurs
- Outils, méthodes, techniques et applications
Intervenants, édition et diffusion
Intervenants
Diffusion
Document(s) annexe(s)
- Cette ressource fait partie de
Fiche technique
- LOMv1.0
- LOMFRv1.0
- Voir la fiche XML