Guide d'administration système : Gestion des ressources des conteneurs et des zones Oracle Solaris

Exemples de parts de CPU

Supposons que vous disposiez d'un système avec deux CPU exécutant deux charges de travail en parallèle appelées respectivement A et B. Chaque charge de travail est exécutée dans un projet indépendant. Les projets ont été configurés de manière à allouer SA parts au projet A et S B parts au projet B.

En moyenne, avec l'ordonnanceur TS habituel, chacune des charges de travail s'exécutant sur le système aurait droit à la même quantité de ressources de la CPU, c'est-à-dire 50 % de la capacité du système.

Lorsque vous les exécutez sous le contrôle de l'ordonnanceur FSS sur la même base (SA=SB ), ces projets obtiennent approximativement les mêmes quantités de ressources de la CPU. En revanche, si le nombre de parts accordé à ces projets est différent, les allocations des ressources de la CPU ne seront pas identiques.

Les trois exemples qui suivent illustrent le principe de fonctionnement des parts dans différentes configurations. Ces exemples démontrent que le raisonnement mathématique des parts n'a de sens que si la demande atteint ou dépasse les ressources disponibles.

Exemple 1 : deux processus tirant parti de la CPU dans chaque projet

Si A et B disposent tous deux de deux processus ayant besoin de la puissance de traitement de la CPU et que S A = 1 et S B = 3, le nombre total de parts est alors 1 + 3 = 4. Dans cette configuration, à condition que la demande de la CPU soit suffisante, 25 et 75 % des ressources de la CPU sont attribués respectivement aux projets A et B.

Illustration. Le contexte décrit le graphique.

Exemple 2 : aucune compétition entre les projets

Si A et B ne disposent chacun que d'un processus ayant besoin de la puissance de traitement de la CPU et que S A = 1 et S B = 100, le nombre total de part est alors 101. Chaque projet ne peut utiliser plus d'une CPU car chacun n'a qu'un processus en cours d'exécution. Comme il n'existe aucun conflit de partage des ressources de la CPU dans cette configuration, les projets A et B se voient attribuer chacun 50 % de toutes les ressources de la CPU. Les parts de CPU n'ont donc aucune importance dans ce cas. Les allocations des projets seraient identiques (50/50), même si vous leur aviez attribué zéro part .

Illustration. Le contexte décrit le graphique.

Exemple 3 : un projet dans l'incapacité de s'exécuter

Si A et B disposent chacun de deux processus ayant besoin de la puissance de traitement de la CPU et si 1 part est attribuée au projet A et 0 part au projet B, toutes les ressources sont allouées au projet A et aucune ressource au projet B. Les processus du projet B seront systématiquement définis au niveau de priorité 0, ce qui signifie qu'il sera impossible de les exécuter dans la mesure où le projet A possède en permanence le niveau de priorité supérieur.

Illustration. Le contexte décrit le graphique.