Le multitraitement symétrique et asymétrique sont les deux principales classifications du multitraitement, car tous deux incluent l’utilisation de plusieurs processeurs pour le fonctionnement du système. La différence significative entre les multiprocesseurs symétriques et asymétriques réside dans la manière dont plusieurs processeurs sont utilisés par le système ou, nous pouvons dire, dans la manière dont plusieurs processeurs fonctionnent au sein du système.
Dans les systèmes multitraitements symétriques, tous les processeurs présents au sein du système sont de nature identique et exécutent des programmes.
Par contre, dans le multitraitement asymétrique, les processeurs présents dans le système ne sont pas de nature identique, l’un des processeurs demandant aux autres processeurs du système d’exécuter la tâche souhaitée.
Avant de passer en revue l’idée détaillée du multitraitement symétrique ou asymétrique. Comprenons-nous-
Qu’est-ce que le multitraitement ?
Le terme multitraitement correspond à l’utilisation de deux ou plusieurs unités centrales de traitement au sein d’un même système informatique afin d’exécuter des tâches en parallèle. Fondamentalement, le multitraitement permet au système d’exécuter diverses processus parallèles au sein d’un système et cela se fait en incorporant plusieurs processeurs dans un seul système informatique. Cependant, il n’est pas nécessaire qu’un système dispose toujours de plus d’un processeur, car il existe parfois également des processeurs uniques au sein du système.
Ainsi, il n’est pas faux de dire qu’un système peut ou non être un système multiprocesseur. Cependant, si un système dispose de plusieurs processeurs, chaque processeur peut exécuter des processus indépendants.
Il convient de noter ici que la CPU est responsable de la gestion des fonctions arithmétiques et logiques ainsi que de l’exécution des opérations d’entrée/sortie. Ainsi, pour effectuer cela, un ou plusieurs processeurs sont nécessaires.
Contenu : Multitraitement symétrique ou asymétrique
- Tableau de comparaison
- Définition
- Différences clés
- Conclusion
Tableau comparatif
Base de comparaison | Multitraitement symétrique | Multitraitement asymétrique |
---|---|---|
Acronyme | SMP | AMP |
Basique | Tous les processeurs sont identiques et établissent une connexion avec une mémoire partagée. | Tous les processeurs ne sont pas identiques puisque l’un se comporte en maître et les autres en esclaves, chacun détenant son propre espace mémoire. |
Approche | File d’attente prête | Maître-Esclave |
Système opérateur | Un seul système d’exploitation est accessible par chaque processeur pour l’exécution des tâches. | Le processeur maître possède le système d’exploitation dans lequel tous les appels système sont exécutés. |
Conception | Facile | Relativement complexe |
Empreinte mémoire | Moins | Comparativement plus |
Capacité d’auto-planification | Exister | N’existe pas |
Frais généraux de communication | Présent | Pas présent |
Architecture du processeur | Chaque processeur individuel a la même architecture. | Les processeurs peuvent avoir ou non une architecture différente. |
Coût global | Haut | Relativement faible |
Convient pour | Noyaux homogènes | Noyaux homogènes ou hétérogènes |
Routines système | Facile | Assez difficile |
Utiliser | Dans les systèmes à usage général | Dans les systèmes embarqués |
Multitraitement symétrique
Le multitraitement symétrique appelé SMP en abrégé est un type d’opération de système multitraitement qui utilise plusieurs processeurs de la même configuration au sein d’un seul système afin d’exécuter plusieurs tâches. Ici tous les processeurs sont de nature identique et sont traités de manière égale.
Dans ce type, un système d’exploitation existe en mémoire et est accessible par tous les processeurs du système mais pas simultanément. Cela signifie qu’il est basé sur une technique de système d’exploitation partagé, appelée méthode du maître flottant. Si plusieurs processeurs sont nécessaires pour exécuter le code du système d’exploitation, celui qui a demandé en premier pourra s’exécuter en premier et jusqu’à ce moment, il restera verrouillé (appelé mutex) pour le reste des processeurs.
Multitraitement asymétrique
Le multitraitement asymétrique en abrégé AMP est un autre type de technique de multitraitement composé de plusieurs processeurs dont l’un se comporte en maître et l’autre en esclave. Le processeur maître est responsable de l’exécution du système d’exploitation.
Cette technique permet l’exécution simultanée de plusieurs tâches sur plusieurs processeurs. Sa mémoire privée contient la structure de données qui contient les détails des processus prêts. Ici, si le processeur maître tombe en panne, l’un des commutateurs esclaves effectuera les opérations du processeur maître.
Différences clés entre le multitraitement symétrique et asymétrique
- Le facteur clé La différence entre le multitraitement symétrique et asymétrique est que le symétrique dispose de processeurs de même configuration assemblés dans le but de gérer les différents processus d’une seule tâche.
Au contraire, l’asymétrique comprend des processeurs de configuration différente qui prennent en charge le fonctionnement maître-esclave. Cela signifie que le processeur maître gère les opérations qui doivent être effectuées par les processeurs esclaves. - En multitraitement symétrique, chaque processeur a la même importance alors que ce n’est pas le cas en multitraitement asymétrique.
- Le multitraitement symétrique est basé sur une file d’attente prête approche où les processus résident dans la mémoire principale et plusieurs processeurs exécutent les processus un par un. Cependant, le multitraitement asymétrique utilise une approche maître-esclave dans laquelle l’un des processeurs se comporte comme un processeur maître qui attribue, contrôle et planifie l’action des processeurs esclaves.
- Un seul système opérateur est accessible par tous les processeurs mais un à la fois et non simultanément. En asymétrique, le processeur maître a accès au système d’exploitation et tous les processeurs esclaves redirigent les appels système vers lui.
- En termes de empreinte mémoirequi correspond à la mémoire principale utilisée par le programme lors de l’exécution, les deux sont différents car AMP a plus d’empreinte mémoire que SMP.
- Symétrique est plus cher que le multitraitement asymétrique car, dans SMP, un seul noyau contrôle les différentes opérations du système et doit donc être plus efficace.
- Les offres SMP sont assez simples structure de conception que les AMP car ils doivent avoir des processeurs identiques et pour y parvenir, un seul processeur efficace est conçu et plusieurs copies de celui-ci sont générées en fonction des besoins. Cependant, les AMP offrent une conception complexe car les processeurs impliqués sont de configurations différentes.
- Prise en charge du multitraitement symétrique auto-planification des tâches car tous les processeurs gèrent de manière égale les activités du système. Bien que l’auto-planification ne soit pas une option dans le multitraitement asymétrique, car le maître contrôle toutes les opérations effectuées par les processeurs esclaves.
- SMP offre une mise en œuvre plus facile de routines système par rapport à l’AMP. En effet, SMP utilise plusieurs processeurs identiques. Ainsi, une séquence de codes peut être implémentée de manière plus simple que AMP qui utilise des processeurs non identiques.
- Frais généraux de communication existe en multitraitement symétrique mais n’est pas présent en multitraitement asymétrique. Fondamentalement, la surcharge correspond à la communication activée entre les différents processeurs travaillant au sein du système. Dans SMP, la mémoire partagée est responsable de la communication entre les processeurs, mais comme la mémoire partagée est absente dans AMP, elle ne prend pas en charge la surcharge.
- Dans SMP, si l’un des les processeurs échouent cela réduit alors la capacité de calcul globale du système. En revanche, en AMP lorsque le le processeur maître tombe en panne alors l’un des processeurs esclaves commence à agir en tant que processeur maître.
Conclusion
D’après la discussion ci-dessus, il est clair que les SMP sont implémentés sur des cœurs homogènes, c’est-à-dire identiques. Alors que les AMP sont implémentés sur des cœurs homogènes ou hétérogènes, c’est-à-dire non identiques. Dans SMP, les fonctions système montrent une dépendance à la répartition de la charge et ne sont donc pas déterministes. Pour cette raison, le multitraitement symétrique n’est pas utilisé dans les systèmes embarqués.