À titre de précision, la charge n'est pas directement liée au processeur. C'est l'une des idées fausses les plus courantes sur la charge. Le fait que vous mentionniez le disque semble reconnaître que vous en êtes conscient, mais je voulais juste le mentionner car je vois des commentaires qui indiquent que certains croient le contraire.
La charge est définie comme le nombre de processus en attente sur les ressources système. Il s'agit généralement d'un processeur, d'un disque ou d'un réseau, mais il peut s'agir de tout matériel.
Un "processus" n'est pas nécessairement un processus complet non plus. Un thread est défini comme un "processus léger" et chaque thread en attente augmente le nombre de charges.
Pour déterminer quels processus posent problème:
Exécuter top -H
(le -H
permet d'afficher les threads)
Les raccourcis clavier varient selon la version.
Avec un toit plus récent (3.3 et ultérieur):
Appuyez sur fpour afficher les options de champ.
Utilisez les touches fléchées pour aller à S = Process Status
et appuyez sur s.
Appuyez sur qpour revenir à la page principale.
Appuyez sur Shift+ Rpour inverser le tri.
Avec un haut plus ancien (avant 3.3):
Appuyez sur Shift+ opour afficher les options de tri.
Ensuite, wpour trier par état du processus.
Alors Enterpour revenir à la page principale.
Puis Shift+ Rpour inverser le tri.
Ensuite, dans la S
colonne, recherchez les processus qui ont D
ou R
(ils devraient maintenant être en haut). Ce seront des processus contribuant à la charge du système.
Si le processus montre un D
, cela signifie "sommeil ininterrompu". Habituellement, cela se produit lorsque le processus attend sur les E / S (disque, réseau, etc.).
Si le processus affiche un R
, cela signifie qu'il effectue simplement un calcul normal.
Pour en savoir plus sur ce que font ces processus:
Avec un toit plus récent (3.3 et ultérieur):
Appuyez sur fpour afficher les options de champ.
Utilisez les touches fléchées pour aller à WCHAN = Sleeping in Function
et appuyez sur dpour l'activer.
Alors qpour revenir à la page principale.
Avec un haut plus ancien (avant 3.3):
Appuyez sur fpuis ypour activer le WCHAN
champ.
Si votre système dispose des options de noyau nécessaires et que le fichier wchan est présent sur votre système (j'oublie où il se trouve et comment il s'appelle) , le WCHAN
champ devrait vous indiquer quelle fonction du noyau le processus exécute actuellement (si le champ affiche simplement un -
ou un ?
sur tout, vous n'avez pas de support).
Un peu de google ici et vous devriez être sur votre chemin.
Si vous n'avez pas de support, vous pouvez toujours essayer strace
les processus pour savoir ce qu'ils font, mais c'est la voie difficile.