Aller au contenu

Introduction au ‘calcul parallèle’ ou ‘Parallélisme’

Page 1 sur 15Lecteur de document UniversityLib

Introduction au ‘calcul parallèle’ ou ‘Parallélisme’

Computer Science · course

Fiche de révisionFiche de cours

Fiche de cours – Introduction au ‘calcul parallèle’ ou ‘Parallélisme’

Rédigée à partir de ce document, puis vérifiée avant publication.

Parallélisme en informatique

Le parallélisme en informatique désigne l'utilisation d'un ensemble d'éléments de calcul capables de communiquer et de coopérer pour accélérer la résolution d'un seul problème. Ce concept est fondamental dans le domaine du calcul à hautes performances, où la demande croissante d'applications nécessite des solutions efficaces. Cet article explore les définitions, les raisons d'utiliser le parallélisme, son importance, et des exemples concrets d'applications.

Qu'est-ce que le parallélisme ?

Définition

Le parallélisme est le fait d’utiliser un ensemble d’éléments de calcul capables de communiquer et de coopérer dans le but d’accélérer la résolution d’un seul problème. Cela soulève plusieurs questions importantes :

  • Combien d'éléments de calcul sont nécessaires ?
  • S'agit-il de processeurs ou d'une partie d'un processeur ?
  • Quelle est leur puissance ?
  • Que peuvent-ils réaliser ?
  • Quelle est la taille de leur mémoire associée ?
  • Quelle en est l'organisation ?
  • Comment les entrées/sorties sont-elles réalisées ?

Communication entre les éléments de calcul

Les éléments de calcul doivent être capables de communiquer entre eux. Cela soulève des questions telles que :

  • Comment sont-ils reliés les uns aux autres ?
  • Que peuvent-ils échanger ?
  • Quel est leur protocole d'échange d'informations ?

Coopération des éléments de calcul

La coopération entre les éléments de calcul est essentielle. Les questions à considérer incluent :

  • Comment synchronisent-ils leurs efforts ?
  • Quel est leur degré d'autonomie ?
  • Comment sont-ils pris en compte par le système d'exploitation ?

Objectif du parallélisme

Le but du parallélisme est d'accélérer la résolution d'un seul problème. Les questions pertinentes sont :

  • Quels sont les problèmes à fort potentiel de parallélisme ?
  • Quel est le modèle de calcul utilisé ?
  • Quel est le degré de spécialisation des machines pour un problème donné ?
  • Comment choisir les algorithmes ?
  • Quelle efficacité peut-on espérer ?
  • Comment ces machines se programment-elles ?
  • Quels langages faut-il utiliser ?
  • Comment exprimer le parallélisme ?

Pourquoi le parallélisme ?

La puissance de calcul des premiers ordinateurs séquentiels a considérablement augmenté, mais elle ne suffit pas à satisfaire la demande croissante d'applications dans divers domaines, tels que :

  • La simulation et la modélisation.
  • L’ingénierie.
  • La recherche de ressources énergétiques.
  • La recherche médicale ou militaire.

Le parallélisme est une réponse à cette problématique. Il est apparu dans les processeurs en faisant exécuter plusieurs opérations en même temps, puis dans les ordinateurs par duplication des éléments de calcul. Le parallélisme permet :

  • L’amélioration des performances de calcul.
  • L’accroissement de la taille des problèmes à résoudre.
  • De produire des machines ayant un bon rapport coût/performance.

Le parallélisme est-il vraiment nécessaire ?

La puissance des ordinateurs séquentiels augmente régulièrement (elle double tous les 18 mois selon la Loi de Moore). On pourrait croire que cette puissance sera toujours suffisante et que les machines parallèles sont inutiles. Cependant, cela est faux pour plusieurs raisons :

  • Les améliorations futures des vitesses de calcul des processeurs sont limitées par des contraintes physiques, telles que la vitesse de la lumière.
  • Les coûts très élevés de fabrication des processeurs.
  • La demande croissante en puissance de calcul.

Un certain nombre d’applications sont classées « grand challenge » et nécessitent des puissances de traitement supérieures à celles qu’un ordinateur séquentiel peut fournir. Ces applications, appelées « applications 3T », nécessitent pour leur exécution :

  • 1 Téraflops
  • 1 Téraoctet de mémoire centrale
  • 1 Téraoctet par seconde de bande passante

Ces applications ne peuvent être réalisées qu’en ayant recours au parallélisme massif. Actuellement, on parle même de Pétaflops et Pétaoctets.

Ordres de grandeur

Voici quelques ordres de grandeur :

  • 1 TéraFlops = 10^12 opérations flottantes par seconde.
  • 1 PetaByte équivaut à une vidéo de 2300 ans ou 1 milliard de livres.
  • Les superordinateurs des années 90 atteignaient à peine quelques centaines de Mégaflops.
  • Actuellement, la machine la plus puissante au monde est SUMMIT-IBM avec 148.600 TéraFlops.

Parallélisme à hautes performances

Motivation

Les applications « Grand Challenge » posent des problèmes fondamentaux ayant un grand impact sur l’industrie, la science ou la société. La solution passe par l’utilisation du calcul à hautes performances, nécessitant d'importants besoins en puissance de calcul et en mémoire.

Exemples de « Grands challenges »

Voici quelques exemples d’applications nécessitant le parallélisme :

  • Modélisation et simulation : conception aéronautique, dynamique automobile, prévision météorologique, analyse sismique, prospection pétrolière.
  • Ingénierie : génie nucléaire, génie chimique, robotique, microélectronique.
  • Calculs symboliques : reconnaissance de la parole, vision par ordinateur, compréhension du langage naturel, raisonnement automatique.

Points clés à retenir

  • Le parallélisme permet d'accélérer la résolution de problèmes complexes.
  • Il est essentiel pour répondre à la demande croissante en puissance de calcul.
  • Les applications nécessitant un parallélisme massif sont en forte augmentation.

Glossaire

  • Parallélisme : Utilisation simultanée de plusieurs éléments de calcul.
  • Téraflops : Unité de mesure de la puissance de calcul.
  • Pétaoctet : Unité de mesure de la capacité de stockage.
  • Applications 3T : Applications nécessitant des ressources de calcul élevées.

Questions fréquentes

Qu'est-ce que le parallélisme en informatique ?

Le parallélisme en informatique est l'utilisation simultanée de plusieurs éléments de calcul pour résoudre un problème plus rapidement. Cela implique la communication et la coopération entre ces éléments.

Pourquoi le parallélisme est-il nécessaire ?

Le parallélisme est nécessaire en raison de la demande croissante en puissance de calcul, qui ne peut être satisfaite par des ordinateurs séquentiels. Des applications complexes nécessitent des ressources que seul le parallélisme peut fournir.

Quels sont les exemples d'applications utilisant le parallélisme ?

Des exemples d'applications utilisant le parallélisme incluent la modélisation aéronautique, la prévision météorologique, et la robotique. Ces domaines nécessitent des calculs intensifs et des ressources importantes.

Comment fonctionne le parallélisme ?

Le parallélisme fonctionne en divisant un problème en sous-problèmes qui peuvent être résolus simultanément par plusieurs éléments de calcul. Cela nécessite une bonne communication et synchronisation entre ces éléments.

Quels sont les avantages du parallélisme ?

Les avantages du parallélisme incluent une amélioration significative des performances de calcul, la capacité de résoudre des problèmes plus grands et complexes, et un meilleur rapport coût/performance dans la conception de systèmes informatiques.

Toutes les révisions