• Aucun résultat trouvé

Évaluation des algorithmes de migrations de processus

CHAPITRE 2 MIGRATION DE PROCESSUS

2.3 Migration de processus dans des machines homogènes

2.3.3 Évaluation des algorithmes de migrations de processus

Dans cette section, nous allons présenter les évaluations des algorithmes précédemment décrits.

Évaluation Qualitative

Dans l'algorithme de copie totale, le temps mort est égal à la durée de la migration totale. D'une part, on s'attend à ce que le temps mort de l'algorithme de copie totale soit le plus élevé de tous les algorithmes car toutes les informations de processus sont transférées au cours de

cette période. D'autre part, il est prévu que le temps de la migration totale de l'algorithme de copie totale soit le plus bas parce que ses informations doivent être transférées seulement une fois. Par ailleurs, l'algorithme de copie totale n'utilise ni temps de préparation, ni temps de post-traitement.

Contrairement à l'algorithme de copie totale, celui de pré-copie exploite le temps de préparation pour transférer les informations avant le départ réel du processus. Ceci réduit la quantité de données transférées pendant le temps mort. Par conséquent, avec l'algorithme de pré-copie, le temps mort est beaucoup plus court par rapport à celui de copie totale, mais certainement plus élevé que celui de post-copie ou celui de post-copie assistée. Cela dépend du nombre de pages qui doivent être transférées.

Une comparaison de la durée de la migration totale est difficile à obtenir car elle est fortement affectée par le temps de préparation et le nombre de transferts de page multiples. Si le processus de migration modifie un grand nombre de pages, on s'attend à ce que le temps de migration totale de l'algorithme de pré-copie soit le plus élevé de tous les algorithmes de migration. Par rapport à l'algorithme de pré-copie, celui de pré-copie de file en attente réduit le nombre de transferts de page multiples et donc le temps de migration totale. Par ailleurs, on s'attend à ce que le temps mort de l'algorithme de pré-copie de file en attente soit légèrement inférieur au temps mort de celui pré-copie.

Il est prévu que l'algorithme de post-copie ait un temps mort significativement plus court parce qu'il envoie seulement un minimum d’état de processus durant cette période. Pendant le temps de post-traitement, le processus migré demande les pages à l'hôte source. Ainsi, l'exécution du processus migré est significativement retardée. Il en résulte qu’un temps de migration totale plus long comparé à l'algorithme de copie-totale.

L’algorithme de post-copie assistée donnera probablement le temps mort le plus court parce qu'il transfère un état du processus plus réduit à l'hôte de destination. L'algorithme utilise à la fois le temps de préparation et le post-traitement mais chaque période est plus courte par

rapport aux algorithmes pré-copie et post-copie. En outre, on s'attend aussi que l'algorithme de post-copie assistée aboutisse à un temps de migration totale le plus élevé.

Cette évaluation qualitative présente des hypothèses. Pour les confirmer, il faut mesurer les différentes périodes dans un système qui implémente ces algorithmes.

Évaluation Quantitative

Le tableau 2.1 présente les caractéristiques des algorithmes précédemment décrits. Pour chaque algorithme, ce tableau indique si l’algorithme utilise le temps de préparation, le temps mort (suspendu) et le post-traitement. De plus, il présente les dépendances résiduelles et les systèmes où l'algorithme particulier a été implémenté.

Tableau 2.1 Caractéristiques des algorithmes de migration de processus Période Algorithme Temps de préparation Temps

mort post-traitement Temps de

Dépendances résiduelles

Systèmes

Copie totale non oui non non RHODOS

Charlotte Mach

Page à la demande non oui oui oui,

de l’hôte source RHODOS MOSIX Mach Accent

Serveur de fichiers non oui oui oui,

du serveur de fichiers

Sprite

Pré-copie oui oui non non Système V

Mach Pré-copie de file en

attente oui oui non non Linux

Post-copie non oui oui non Linux

Gel libre non oui oui oui,

du serveur de fichiers

Choices

Post-copie assistée oui oui oui non Linux

Le tableau 2.1 montre que la plupart des algorithmes exploitent deux périodes et certains d'entre eux ont besoin d'une troisième entité pour éviter les dépendances résiduelles de l'hôte source. La plupart des algorithmes ont été mis en œuvre sur différents systèmes, par conséquent une comparaison quantitative directe est difficile à obtenir.

Lors de la migration, la suspension de l’exécution du processus et l'interruption de communication avec le monde extérieur joue un rôle essentiel. Le temps mort d'un processus est donc la période la plus importante pour évaluer la performance d'un algorithme. L’autre métrique importante est le temps de migration totale. En plus des périodes, le retard d'exécution reste un élément déterminant sur la performance de la migration de processus.

Un certain nombre de travaux publiés sur la performance du processus de migration ont mesuré le temps mort d'un processus de référence de 100 kilooctets [Noack, 2003] [Roush, 1995] [De paoli, 1994] [Finkel et Artsy, 1989] [Steketee et al., 1994]. Le tableau 2.2 présente l'année, l'environnement de test et les algorithmes employés. Le tableau 2.3 présente les résultats de processus de référence avec une bande passante de 10 Mo/s sur l'environnement Smile [Noack, 2003].

Tableau 2.2 Systèmes de migration de processus et le temps mort Système

d’exploitation Année Plateforme Réseau Mb/s Temps mort (ms) Algorithme

Système V 1985 Sun 10MHz68010 Ethernet 10 680 Pré-Copie

Accent 1987 Perq workstation Ethernet 10 13 000 Page à la demande

Charlotte 1989 VAX 11/750 Pronet 750 Copie totale

Sprite 1991 SPARCstation1 Ethernet 10 330 Serveur de fichiers

Mach OMS 1993 Intel80486 33MHz Ethernet 10 250 Page à la demande

Choices 1995 SPARCstation2 Ethernet 10 14 Gel libre

RHODOS 1997 SUN 3/50 Ethernet 10 118

351 Page à la demande Copie totale

Linux 2003 Dual Pentium 450 /

Dual Athlon 1800 Ethernet 10 89 33

5

Copie totale Post-copie assistée

Post-copie Tableau 2.3 Périodes du processus de référence utilisant 10 Mo/s

Période Algorithme Temps de préparation (ms) Temps mort (ms) post-traitement Temps de (ms) Temps total (ms) Copie totale 0 88.5 0 88.5 Pré-copie 52.4 36.5 0 88.9

Pré-copie en file d’attente 37.1 51.4 0 88.5

Post-copie 0 4.9 93.4 98.3

Post-copie assistée 52.4 33.4 3.5 89.3

Les algorithmes de transfert d'un processus se distinguent, d'une part, selon la répartition de l'opération de transfert dans le temps, et d'autre part, selon les ressources mises en œuvre pour

le transfert. Il est donc important de réduire le temps mort sans toutefois augmenter le temps total de transfert.