Présentation
Auteur(s)
-
Franck CAPPELLO : Chargé de recherche au CNRS - Laboratoire de recherche en informatique LRI - Université Paris Sud, Orsay
-
Jean-Paul SANSONNET : Directeur de recherche au CNRS - Laboratoire d’informatique pour la mécanique et les sciences de l’ingénieur LIMSI - Université Paris Sud, Orsay
Lire cet article issu d'une ressource documentaire complète, actualisée et validée par des comités scientifiques.
Lire l’articleINTRODUCTION
L’architecture des ordinateurs, qu’il s’agisse de microprocesseurs ou de supercalculateurs, est fortement influencée par l’exploitation d’une propriété fondamentale des applications : le parallélisme. Un grand nombre d’architectures présentes dans les sites informatiques sont parallèles. Ce type d’architecture touche une large gamme de machines depuis les PC biprocesseurs jusqu’aux supercalculateurs. Aujourd’hui, la plupart des serveurs sont des machines parallèles (des multiprocesseurs).
L’objectif de notre exposé est d’introduire la notion de parallélisme, de discuter la nécessité de l’exploiter pour atteindre de hautes performances et de présenter les différentes formes d’architectures d’ordinateurs parallèles.
Tout au cours de notre étude, nous évoquons plusieurs domaines d’applications pour lesquels l’exploitation du parallélisme est fondamentale : le traitement numérique, les bases de données, le traitement d’images, la comparaison de séquences ADN, etc. Pour traiter ces applications, les architectures parallèles peuvent être généralistes (c’est-à-dire capables de répondre aux besoins d’une grande diversité d’applications) ou spécialisées. Les architectures spécialisées sont destinées à exploiter les caractéristiques spécifiques d’une catégorie d’applications ou même d’une seule application. Nous présentons ces deux types d’architectures parallèles.
Bien souvent, il faut avoir recours à une conception et à un développement parallèle de l’application pour exploiter le parallélisme de façon intéressante. Les langages de programmation parallèles sont une composante essentielle dans la chaîne de conception d’une application. Nous présentons les principaux.
Enfin, l’intérêt des architectures parallèles réside dans les performances qu’elles permettent d’atteindre. Nous examinons donc les métriques utilisés pour rendre compte des performances et les grandes lois qui les gouvernent.
VERSIONS
- Version courante de août 2017 par Franck CAPPELLO, Daniel ETIEMBLE
DOI (Digital Object Identifier)
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(240 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive
Présentation
6. Lois, modèles et métriques des performances des architectures parallèles
L’une des principales motivations pour l’exécution parallèle est le gain en performance. Dans cette partie nous allons donc étudier différents aspects de la performance des architectures parallèles. Voici les questions auxquelles ce paragraphe est sensé répondre :
-
quels sont les différents types de performances d’une architecture parallèle ?
-
existe-t-il des lois théoriques générales qui permettent d’estimer le gain de performance de l’approche parallèle par rapport à l’approche séquentielle ?
-
existe-t-il des modèles plus précis permettant de prédire les performances d’un programme ?
-
quelles sont les mesures pertinentes de la performance ?
6.1 Performance
Ce paragraphe introduit différentes mesures de la performance : performance crête, accélération.
La performance la plus simple à calculer mais aussi la moins utile pour prédire les performances d’une architecture parallèle est la performance crête. Elle est simplement obtenue par la multiplication de la performance crête individuelle de toutes les unités de traitement par leur nombre dans l’architecture.
la performance crête d’un Pentium Pro est de 200 mégaFlops (200 106 Flops). La machine Intel la plus performante, construite dans le cadre du programme ASCI, possède 9200 Pentium Pro. Sa performance crête est donc de 1,8 téraFlops.
Une définition très utilisée de la performance crête est : la performance que le constructeur vous garantit que vous ne pourrez pas dépasser !
Une information plus pertinente est le temps de calcul d’une application (ou temps d’exécution). On peut en dériver le débit de calcul sur des nombres flottants ou des nombres entiers. La formule suivante donne le débit de traitement en fonction du temps de calcul :
P = nombre opérations / temps du traitementLe dividende représente le nombre d’opérations que l’application nécessite pour son calcul.
le nombre d’opérations flottantes pour le produit de matrices carrées est 2 n 3 si n est la taille du côté de la matrice....
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(240 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive
Lois, modèles et métriques des performances des architectures parallèles
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(240 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive