Une moyenne de charge est une mesure de la surcharge d'un cœur de processeur en termes de nombre de processus souhaitant l'utiliser simultanément.
Les éléments suivants supposent un processeur à cœur unique (un seul thread):
0,0
Le CPU ne fait rien du tout. Si un processus devait commencer à utiliser le CPU, ce serait le seul à l'utiliser.
Un processeur inactif ne signifie pas qu'aucun processus n'est en cours d'exécution. Par exemple, les services d'arrière-plan et le noyau sont toujours en cours d'exécution et occupent toujours de la mémoire. Ils n'utilisent tout simplement aucun processeur, car ils ne font rien.
1.0
Le processeur est à son utilisation maximale, mais il n'y a aucun conflit entre les processus d'utilisation du processeur. Autrement dit, un seul processus est en cours d'exécution, il est donc capable de réclamer 100% du temps CPU pour lui-même. Alternativement, plusieurs processus sont en cours d'exécution mais aucun ne revendique 100% de CPU, et leur utilisation combinée de CPU s'élève à 100%. Ils fonctionnent tous aussi vite qu'ils le feraient même s'ils avaient le processeur pour eux.
Supérieur à 1,0
Le processeur est à son utilisation maximale, et plusieurs processus souhaitent l'utiliser simultanément afin qu'ils s'exécutent effectivement plus lentement qu'ils ne pourraient autrement fonctionner sur un processeur inactif. Par exemple, une moyenne de charge de 3,0 indique que les processus s'exécutent à un tiers de la vitesse qu'ils souhaitent exécuter. Une moyenne de charge de 50,0 indique que les processus s'exécutent à 1/50 de la vitesse qu'ils souhaitent exécuter, en raison de tous les autres processus en cours d'exécution. Autrement dit, des chiffres supérieurs à 1,0 indiquent que le processeur disponible est étiré entre de plus en plus de processus.
Avoir un processeur multi-cœur ne change pas la signification des chiffres mais peut changer leur interprétation. Par exemple, si vous avez un processeur à 4 cœurs, une charge de 1,0 équivaut toujours à un processus utilisant 100% de processeur sur un cœur, mais il y a trois autres cœurs. Ainsi, sur un processeur à 4 cœurs, le point d'efficacité maximale est 4,0, et non 1,0 - et le point auquel tout fonctionne à 1/3 est 12,0, et non 3,0. Pour ajouter à la complexité, un seul processus peut avoir plus d'un thread réclamant chacun son propre processeur. Un seul processus peut donc utiliser 100% des 4 cœurs s'il est multithread.
Note importante
L'utilisation du processeur n'est qu'une ressource qui peut limiter les performances d'un processus. Les E / S en sont un autre et ne sont pas prises en compte dans la charge du processeur. Un processus utilisant une certaine quantité de CPU ne pourra pas nécessairement en utiliser davantage sur une machine plus légère, car il pourrait frapper d'autres goulots d'étranglement.
Quelle est la meilleure moyenne de charge
Cela dépend vraiment de ce que vous faites et si vous préférez la réactivité, ou que le processeur travaille le plus dur possible.
Pour quelque chose qui doit faire autant que possible, la moyenne de charge doit être égale ou légèrement supérieure au nombre de cœurs. Tout ce qui est beaucoup plus grand que cela indique que vous pourriez faire plus, plus rapidement, si vous sépariez les tâches sur plus d'ordinateurs / serveurs.
Pour quelque chose qui doit être aussi réactif que possible (réagir rapidement), la moyenne de la charge doit être une marge confortable inférieure au nombre de cœurs, comme la moitié ou le tiers, ce qui permet une certaine variation intermittente avant tout ralentissement.
Pour un invité de virtualisation (par exemple KVM), plus la moyenne de charge est faible, mieux c'est, car vous partagez en fait le processeur avec d'autres invités sur le même hôte.