NOM

taskset - Définir ou récupérer l'affinité processeur d'un processus

SYNOPSIS

taskset [options] masque commande [paramètre ...]
 
taskset [options] -p [masque] PID

DESCRIPTION

La commande taskset est généralement utilisé pour récupérer ou définir l'affinité processeur d'un processus en cours d'exécution en donnant son PID ou pour lancer une nouvelle commande avec une affinité processeur fournie. L'affinité processeur est une propriété de l'ordonnanceur qui « lie » un processus à un ensemble de processeurs donné sur un système. L'ordonnanceur de Linux respectera l'affinité processeur et le processus ne s'exécutera sur aucun autre processeur. Notez que l'ordonnanceur Linux gère également l'affinité processeur dite « naturelle » : l'ordonnanceur essaie de maintenir les processus sur le même processeur tant que cela a du sens pour des raisons de performances. Ainsi, forcer une affinité processeur spécifique n'est utile que dans certaines applications.
 
L'affinité du processeur est représentée par un masque binaire, avec le bit de poids le plus faible correspondant au premier processeur logique et le bit de poids le plus fort au dernier processeur logique. Tous les processeurs peuvent ne pas exister dans un système donné, mais un masque peut indiquer plus de processeurs que ceux qui sont présents. Un masque récupéré n'aura que les bits correspondants aux processeurs présents physiquement sur le système. Si un masque erroné est fourni (c'est-à-dire, un masque qui correspond à un processeur absent sur le système actuel) une erreur est alors renvoyée. Les masques peuvent être codés en hexadécimal (avec ou sans un « 0x » en tête) ou sous la forme d'une liste de processeurs avec l'option --cpu-list. Par exemple :
 
0x00000001
correspond au processeur nº 0 ;
 
0x00000003
correspond aux processeurs nº 0 et nº 1 ;
 
0xFFFFFFFF
correspond aus processeurs du nº 0 au nº 31 ;
 
32
correspond aux processeurs nº 1, nº 4 et nº 5 ;
 
--cpu-list 0-2,6
correspond aux processeurs nº 0, nº 1, nº 2 et nº 6 ;
 
--cpu-list 0-10:2
correspond aux processeurs nº 0, nº 2, nº 4, nº 6, nº 8 et nº 10. Le suffixe « :N » spécifie la raison de l'intervalle : par exemple 0-10:3 est interprété comme la liste 0,3,6,9.
 
Lorsque taskset répond, il est garanti que le programme donné a été dirigé vers un processeur existant.

OPTIONS

-a, --all-tasks
Définir ou récupérer l'affinité processeur de toutes les tâches (threads) d'un PID donné.
 
-c, --cpu-list
Interpréter masque comme une liste numérique de processeurs au lieu d'un masque binaire. Les nombres sont séparés par des virgules, et peuvent comprendre des intervalles. Par exemple : 0,5,8-11.
 
-p, --pid
Agir sur un PID existant et ne pas lancer de nouvelle tâche.
 
-h, --help
Afficher l’aide-mémoire puis quitter.
 
-V, --version
Afficher la version puis quitter.

UTILISATION

Le comportement par défaut est d'exécuter une nouvelle commande avec un masque d'affinité donné :
taskset masque commande[paramètres]
 
Vous pouvez également récupérer l'affinité processeur d'une tâche existante :
taskset -p PID
 
ou la modifier :
taskset -p masque PID

PERMISSIONS

Un utilisateur peut modifier l’affinité processeur d’un processus lui appartenant. Un utilisateur doit posséder la capacité CAP_SYS_NICE pour modifier l'affinité processeur d'un processus appartenant à un autre utilisateur. Un utilisateur peut récupérer le masque d'affinité de n’importe quel processus.

AUTEURS

Écrit par Robert M. Love. Copyright 2004 Robert M. Love. C'est un logiciel libre ; consultez les sources pour les conditions de copie. Il n'y a AUCUNE garantie ; même pas de VALEUR MARCHANDE ou d'ADÉQUATION À UNE UTILISATION PARTICULIÈRE.

VOIR AUSSI

chrt(1), nice(1), renice(1), sched_getaffinity(2), sched_setaffinity(2)
 
Consultez sched(7) pour une description de l'organisation de l'ordonnancement de Linux.

SIGNALER DES BOGUES

Pour envoyer un rapport de bogue, utilisez le système de gestion des problèmes à l'adresse <https://github.com/util-linux/util-linux/issues>.

DISPONIBILITÉ

La commande taskset fait partie du paquet util-linux, qui peut être téléchargé de Linux Kernel Archive <https://www.kernel.org/pub/linux/utils/util-linux/>.

TRADUCTION

La traduction française de cette page de manuel a été créée par Christophe Blaess <[email protected]>, Michel Quercia <quercia AT cal DOT enst DOT fr>, Thierry Vignaud <[email protected]>, Frédéric Delanoy <[email protected]>, Thierry Vignaud <[email protected]>, Christophe Sauthier <[email protected]>, Sébastien Blanchet, Jérôme Perzyna <[email protected]>, Aymeric Nys <aymeric AT nnx POINT com>, Alain Portal <[email protected]>, Thomas Huriaux <[email protected]>, Yves Rütschlé <[email protected]>, Jean-Luc Coulon (f5ibh) <[email protected]>, Julien Cristau <[email protected]>, Philippe Piette <[email protected]>, Jean-Baka Domelevo-Entfellner <[email protected]>, Nicolas Haller <[email protected]>, Sylvain Archenault <[email protected]>, Valéry Perrin <[email protected]>, Jade Alglave <[email protected]>, Nicolas François <[email protected]>, Alexandre Kuoch <[email protected]>, Lyes Zemmouche <[email protected]>, Florentin Duneau <[email protected]>, Alexandre Normand <[email protected]>, David Prévot <[email protected]> et Jean-Pierre Giraud <[email protected]>
Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.
Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à [email protected]

Recommended readings

Pages related to taskset you should read also: