Gestion de processeur virtuel dans une partition
Le planificateur de noyau a été amélioré pour augmenter et diminuer dynamiquement l'utilisation des processeurs virtuels en conjonction avec la charge instantanée de la partition, telle que mesurée par l'utilisation physique de la partition.
Chaque seconde, le planificateur de noyau évalue le nombre de processeurs virtuels qui doivent être activés pour s'adapter à l'utilisation physique de la partition. Si le nombre génère une utilisation élevée du processeur virtuel, le nombre de base de processeurs virtuels requis est incrémenté pour permettre à la charge de travail de prendre de l'expansion. Vous pouvez demander des processeurs virtuels supplémentaires à l'aide de la commande schedo . Cette valeur est ensuite utilisée pour déterminer si un processeur virtuel doit être activé ou désactivé, car le planificateur n'ajuste que d'une unité le nombre de processeurs virtuels utilisés chaque seconde. Ainsi, si le nombre calculé est supérieur au nombre de processeurs virtuels actuellement activés, un processeur virtuel est activé. Si le nombre est inférieur au nombre de processeurs virtuels actuellement activés, un processeur virtuel est désactivé.
Lorsque des processeurs virtuels sont désactivés, ils ne sont pas supprimés dynamiquement de la partition comme avec DLPAR. Le processeur virtuel n'est plus candidat à l'exécution ou à la réception de travaux non liés, mais il peut toujours exécuter des travaux liés. Le nombre de processeurs logiques en ligne et de processeurs virtuels en ligne visibles pour l'utilisateur ou les applications ne change pas. Il n'y a aucun impact sur le middleware ou les applications qui s'exécutent sur le système car les processeurs virtuels actifs et inactifs sont internes au système.
La valeur par défaut du paramètre réglable vpm_xvcpus est 0, ce qui signifie que le pliage est activé. Cela signifie que les processeurs virtuels sont gérés. Vous pouvez utiliser la commande schedo pour modifier le paramètre réglable vpm_xvcpus .
# schedo -o vpm_xvcpusPour augmenter le nombre de processeurs virtuels utilisés par 1, vous pouvez utiliser la commande suivante :# schedo -o vpm_xvcpus=1Number of virtual processors needed =
Physical CPU utilization + Number of additional virtual processors to enableSi le nombre de processeurs virtuels requis est inférieur au nombre actuel de processeurs virtuels activés, un processeur virtuel est désactivé. Si le nombre de processeurs virtuels requis est supérieur au nombre actuel de processeurs virtuels activés, un processeur virtuel désactivé est activé. Les unités d'exécution connectées à un processeur virtuel désactivé sont toujours autorisées à l'exécuter.
L'exemple suivant décrit comment calculer le nombre de processeurs virtuels à utiliser :
Physical CPU utilization = 2.5
Number of additional virtual processors to enable (vpm_xvcpus) = 1
Number of virtual processors needed = 2.5 + 1 = 3.5
En arrondissant la valeur calculée au nombre entier supérieur, on obtient 4. Par conséquent, le nombre de processeurs virtuels requis sur le système est 4. Ainsi, si la partition A était en cours d'exécution avec 8 processeurs virtuels, 4 processeurs virtuels sont désactivés et 4 processeurs virtuels restent activés. Si SMT est activé, chaque processeur virtuel génère 2 processeurs logiques. Ainsi, 8 processeurs logiques sont désactivés et 8 processeurs logiques sont activés. Proc0 Proc2 Proc4 Proc6
19.15% 18.94% 18.87% 19.09%
cpu0 cpu1 cpu2 cpu3 cpu4 cpu5 cpu6 cpu7
11.09% 8.07% 10.97% 7.98% 10.93% 7.93% 11.08% 8.00%
Proc0 Proc2 Proc4 Proc6
54.63% 0.01% 0.00% 0.08%
cpu0 cpu1 cpu2 cpu3 cpu4 cpu5 cpu6 cpu7
38.89% 15.75% 0.00% 0.00% 0.00% 0.00% 0.03% 0.05%
Comme vous pouvez le constater à partir des données ci-dessus, la charge de travail bénéficie d'une diminution de l'utilisation et de la maintenance des processeurs auxiliaires, et d'une affinité accrue lorsque le travail est concentré sur un processeur virtuel. Toutefois, lorsque la charge de travail est lourde, la fonction de pliage n'interfère pas avec la capacité d'utiliser toutes les unités centrales virtuelles, si nécessaire.