diff options
Diffstat (limited to 'schedutils/taskset.1')
-rw-r--r-- | schedutils/taskset.1 | 128 |
1 files changed, 128 insertions, 0 deletions
diff --git a/schedutils/taskset.1 b/schedutils/taskset.1 new file mode 100644 index 0000000..efaa0d2 --- /dev/null +++ b/schedutils/taskset.1 @@ -0,0 +1,128 @@ +.\" taskset(1) manpage +.\" +.\" Copyright (C) 2004 Robert Love +.\" +.\" This is free documentation; you can redistribute it and/or +.\" modify it under the terms of the GNU General Public License as +.\" published by the Free Software Foundation; either version 2 of +.\" the License. +.\" +.\" The GNU General Public License's references to "object code" +.\" and "executables" are to be interpreted as the output of any +.\" document formatting or typesetting system, including +.\" intermediate and printed output. +.\" +.\" This manual is distributed in the hope that it will be useful, +.\" but WITHOUT ANY WARRANTY; without even the implied warranty of +.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +.\" GNU General Public License for more details. +.\" +.\" You should have received a copy of the GNU General Public License along +.\" with this program; if not, write to the Free Software Foundation, Inc., +.\" 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +.\" +.\" 2002-05-11 Robert Love <rml@tech9.net> +.\" Initial version +.\" +.TH TASKSET 1 "April 2003" "util-linux" "User Commands" +.SH NAME +taskset \- retrieve or set a process's CPU affinity +.SH SYNOPSIS +.B taskset +.RI [ options ]\ mask +.IR command\ [ arg ]... +.br +.B taskset +.RI [ options ] +.B \-p +.RI [ mask ]\ pid +.SH DESCRIPTION +.PP +.B taskset +is used to set or retrieve the CPU affinity of a running process given its PID +or to launch a new COMMAND with a given CPU affinity. CPU affinity is a +scheduler property that "bonds" a process to a given set of CPUs on the system. +The Linux scheduler will honor the given CPU affinity and the process will not +run on any other CPUs. Note that the Linux scheduler also supports natural +CPU affinity: the scheduler attempts to keep processes on the same CPU as long +as practical for performance reasons. Therefore, forcing a specific CPU +affinity is useful only in certain applications. +.sp +The CPU affinity is represented as a bitmask, with the lowest order bit +corresponding to the first logical CPU and the highest order bit corresponding +to the last logical CPU. Not all CPUs may exist on a given system but a mask +may specify more CPUs than are present. A retrieved mask will reflect only the +bits that correspond to CPUs physically on the system. If an invalid mask is +given (i.e., one that corresponds to no valid CPUs on the current system) an +error is returned. The masks are typically given in hexadecimal. For example, +.TP +.BR 0x00000001 +is processor #0 +.TP +.BR 0x00000003 +is processors #0 and #1 +.TP +.BR 0xFFFFFFFF +is all processors (#0 through #31). +.PP +When +.BR taskset +returns, it is guaranteed that the given program has been scheduled to a legal +CPU. +.SH OPTIONS +.TP +.BR \-a ,\ \-\-all-tasks +Set or retrieve the CPU affinity of all the tasks (threads) for a given PID. +.TP +.BR \-p ,\ \-\-pid +Operate on an existing PID and do not launch a new task. +.TP +.BR \-c ,\ \-\-cpu-list +Specify a numerical list of processors instead of a bitmask. The numbers +are separated by commas and may include ranges. For example: +.BR 0,5,7,9-11 . +.TP +.BR \-h ,\ \-\-help +Display usage information and exit. +.TP +.BR \-V ,\ \-\-version +Display version information and exit. +.SH USAGE +.TP +The default behavior is to run a new command with a given affinity mask: +.B taskset +.I mask +.IR command\ [ arguments ] +.TP +You can also retrieve the CPU affinity of an existing task: +.B taskset \-p +.I pid +.TP +Or set it: +.B taskset \-p +.I mask pid +.SH PERMISSIONS +A user must possess +.B CAP_SYS_NICE +to change the CPU affinity of a process. Any user can retrieve the affinity +mask. +.SH AUTHOR +Written by Robert M. Love. +.SH COPYRIGHT +Copyright \(co 2004 Robert M. Love +.br +This is free software; see the source for copying conditions. There is NO +warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +.SH "SEE ALSO" +.BR chrt (1), +.BR nice (1), +.BR renice (1), +.BR sched_setaffinity (2), +.BR sched_getaffinity (2) +.sp +See +.BR sched_setscheduler (2) +for a description of the Linux scheduling scheme. +.SH AVAILABILITY +The taskset command is part of the util-linux package and is available from +ftp://ftp.kernel.org/pub/linux/utils/util-linux/. |