Surveiller l'utilisation du processeur du processus avec une belle et cpulimit [Linux].

Peu importe à quelle vitesse est votre machine Linux, il y aura toujours des tâches consommatrices de temps processeur. Tout d'encodage vidéo à l'exécution de modèles mathématiques, peut provoquer la CPU de fonctionner à 100%. Ceci est très bien si la machine ne fait rien d'autre. Mais si votre bureau principal ou utilisé comme serveur, puis exécutez une tâche qui maximise votre machine CPU sera lente et difficile à utiliser. La beauté d'un système d'exploitation multi-tâches est que la machine ne gèle pas, car il sera toujours programmé le temps de la CPU pour d'autres tâches et des choses comme le bureau continuera de fonctionner, mais beaucoup plus lentement. Le programmeur n'a aucun moyen de savoir que vous voulez que la tâche intensive du processeur à exécuter avec une priorité inférieure ou limiter son temps CPU. Cependant, il existe des outils qui peuvent être utilisés pour contrôler l'utilisation de traitement CPU pour ces tâches gourmandes en ressources.

Pour émuler une unité centrale de traitement des tâches intensives, nous pouvons utiliser un outil appelé génération de matho-prime une liste des nombres premiers. Si on lui demandait de générer une liste assez grande, d'optimiser les performances du processeur lors de l'exécution. Matho-prime pour installer Ubuntu ou dans un Raspberry Pi:

Sudo apt-get install-mathomatic nombres premiers

Commençons la tâche et voir l'utilisation du processeur:

 Matho-0 99999999999999 & nombres premiers gt; p.txt & amp; 

& Gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; .

Cela indique les nombres premiers de Matho à générer une liste de nombres premiers de zéro à 9990 et 909000000 99999! La sortie est redirigé vers le fichier p.txt. L'esperluette à la fin indique au shell pour exécuter le programme en arrière-plan, ce qui signifie qu'il va revenir à la ligne de commande immédiatement après le démarrage de la tâche.

Maintenant, exécutez la commande haut et observer la quantité de CPU utilisé par le générateur de nombres premiers.

Maintenant, nous tuons cette tâche et voir comment nous pouvons le lancer avec une priorité inférieure. Laissez le haut en appuyant sur q, puis tapez fg pour mettre des appâts mathématiques au premier plan, puis appuyez sur « Ctrl + C » pour forcer le programme.

Maintenant, lancez à nouveau le programme, mais au début de la commande ajouter le mot gentil:

 Nice matho-0 999999999999 & nombres premiers gt; p.txt & amp; 

Nice est un outil qui indique à Linux pour planifier cette tâche avec une priorité inférieure. Kindness varie de -20 (programmation le plus favorable) et 19 (le moins favorable). Par défaut, bien planifier la tâche avec une précision de 10. Par défaut, les tâches normales commencent par zéro précision. Cela signifie qu'une tâche avec un 10 amical sera considérée comme une priorité plus faible et sera donné moins de ressources CPU.

Maintenant, nous pouvons commencer une deuxième de ces générateurs nombres premiers à imiter d'autres tâches que vous voulez faire sur votre machine (comme surfer sur le web ou écrire un document). Cela aura une gentillesse normale, car l'utilisation du bureau devrait être une priorité plus élevée que l'exécution des numéros primaires du générateur.

 Matho-0 999999999999 & nombres premiers gt; p2.txt & amp; 

Notez que cette sortie de fichier est redirigé vers p2.txt. La sortie de ci-dessus va ressembler à quelque chose comme ceci:

Comme vous pouvez le voir, le processus avec la plus grande gentillesse reçoit moins de temps CPU. Cela signifie que si vous démarrez une unité centrale de traitement de tâches intensives avec une belle, votre machine ne se sentira pas lent, ni répondra lentement.

cpulimit

Il y a une autre commande appelée « cpulimit » que, plutôt que changer la priorité d'ordonnancement, arrête temporairement un processus pour vous assurer qu'il ne dépasse pas l'utilisation du CPU.

Pour installer le type:

Sudo apt-get install cpulimit

Maintenant, exécutez le générateur à nouveau nombres premiers UC et notez le numéro de PID en utilisant cette commande:

 Ps 

grep matho-prime

La première colonne est la sortie PID. Maintenant limiter l'utilisation du processeur du processus de cette façon:

 

Sudo cpulimit 50 -b -l -p 16299

Où 16299 est le PID du processus de nombres premiers de Matho. Un regard vers le haut affichera quelque chose comme ceci:

Aller au-delà

Il y a une belle accompagnement appelé renice changer la convivialité d'une commande de processus existant. Essayer d'utiliser top ou ps avec grep pour obtenir le PID d'un processus et d'utiliser renice +19 16299 pour définir la priorité à un minimum (où 16299 est le PID du processus).

Ne hésitez pas à ajouter à la discussion dans les commentaires ci-dessous. |

Maintenant que tu as fini de lire Surveiller l'utilisation du processeur du processus avec une belle et cpulimit [Linux]., nous t'invitons à explorer davantage la catégorie Linux. Tu y trouveras d'autres articles intéressants qui élargiront tes connaissances et te tiendront informé. Ne cesse pas de lire et de découvrir plus!

Index
  1. cpulimit

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Go up