Cette question est ancienne, mais à mon avis la réponse est incorrecte. ps et top calculent l'utilisation du processeur en utilisant différentes méthodes.
du haut de l'homme :
- %CPU -- CPU UsageLa part de la tâche dans le temps CPU écoulé depuis la dernière mise à jour de l'écran , exprimé en pourcentage du temps CPU total.
de l'homme ps :
L'utilisation du processeur est actuellement exprimée en pourcentage de temps passé à s'exécuter pendant toute la durée de vie d'un processus .
Donc, disons que vous avez un processus qui a été lancé il y a une semaine et pendant ce temps, il a utilisé en moyenne 2,2 % du temps CPU. Si tout à coup cela devenait gourmand en CPU (consommant constamment 100 %) - en regardant ps, vous observeriez les mêmes 2,2 % pendant les premières heures.
La raison la plus probable est que top
affiche les valeurs de pourcentage sous forme de pourcentage d'un simple CPU tandis que ps
affiche le pourcentage de la puissance CPU totale disponible. Essayez d'exécuter top et appuyez sur Maj Je pendant son exécution pour afficher le pourcentage de tous les cœurs.
S'il s'agit d'un cluster de serveurs avec beaucoup de processeurs, ce que vous décrivez est un comportement normal. Voir aussi ici.