psrset(1M)
NAME
psrset - creation and management of processor sets
SYNOPSIS
psrset -a processor_set_id processor_id...
psrset -b processor_set_id pid...
psrset -c [processor_id...]
psrset -d processor_set_id
psrset -e processor_set_id command [argument(s)]
psrset -f processor_set_id
psrset [-i] [processor_set_id...]
psrset -n processor_set_id
psrset -p [processor_id...]
psrset -q [pid...]
psrset -r processor_id...
psrset -u pid...
DESCRIPTION
The psrset utility controls the management of processor
sets. Processor sets allow the binding of processes to
groups of processors, rather than just a single processor.
Processors assigned to processor sets can run only LWPs that
have been bound to that processor set.
OPTIONS
The following options are supported:
-a Assign the specified processors to the specified pro-
cessor set.
This option is restricted to use by the super-user.
-b Bind all the LWPs of the specified processes to the
specified processor set.
LWPs bound to a processor set are restricted to run
only on the processors in that set. Processes can only
be bound to non-empty processor sets, that is, proces-
sor sets that have had processors assigned to them.
Bindings are inherited, so new LWPs and processes
created by a bound LWP have the same binding. Binding
an interactive shell to a processor, for example,
binds all commands executed by the shell.
This option is restricted to use by the super-user.
-c Create a new processor set and displays the new pro-
cessor set ID.
If a list of processors is given, it also attempts to
assign those processors to the processor set. If this
succeeds, the processors are idle until LWPs are bound
to the processor set. This option is restricted to use
by the super-user.
Only a limited number of processor sets can be active
(created and not destroyed) at a given time. This
limit is always be greater than the number of proces-
sors in the system. If the -c option is used when the
maximum number of processor sets is already active,
the command fails.
The following format is used for the first line of
output of the -c option when the LC_MESSAGES locale
category specifies the "C" locale. In other locales,
the strings created, processor, and set can be
replaced with more appropriate strings corresponding
to the locale.
"created processor set %d\n" processor set ID
-d Remove the specified processor set, releasing all pro-
cessors and processes associated with it.
This option is restricted to use by the super-user.
-e Execute a command (with optional arguments) in the
specified processor set.
The command process and any child processes are exe-
cuted only by processors in the processor set.
This option is restricted to use by the super-user.
-f Disables interrupts for all processors within the
specified processor set. See psradm(1M).
If some processors in the set cannot have their inter-
rupts disabled, the other processors still have their
interrupts disabled, and the command reports an error
and return non-zero exit status.
This option is restricted to use by the super-user.
-i Display a list of processors assigned to each named
processor set. If no argument is given, a list of all
processor sets and the processors assigned to them is
displayed. This is also the default operation if the
psrset command is not given an option.
-n Enable interrupts for all processors within the speci-
fied processor set. See psradm(1M).
This option is restricted to use by the super-user.
-p Display the processor set assignments for the speci-
fied list of processors. If no argument is given, the
processor set assignments for all processors in the
system is given.
-q Display the processor set bindings of the specified
processes. If a process is composed of multiple LWPs,
which have different bindings, the bindings of only
one of the bound LWPs is shown. If no argument is
given, the processor set bindings of all processes in
the system is displayed.
-r Remove a list of processors from their current proces-
sor sets. Processors that are removed return to the
general pool of processors.
Processors with LWPs bound to them using pbind(1M)
cannot be assigned to or removed from processor sets.
This option is restricted to use by the super-user.
-u Remove the processor set bindings from all the LWPs of
the specified processes, allowing them to be executed
on any on-line processor if they are not bound to
individual processors through pbind.
The super-user can unbind any process from any active
processor set. Other users can unbind processes from
processor sets that do not have the PSET_NOESCAPE
attribute set. In addition, the user must have per-
mission to control the affected processes; the real or
effective user ID of the user must match the real or
saved user ID of the target processes.
OPERANDS
The following operands are supported:
pid Specify pid as a process ID.
processor_id
Specify processor_id as an individual processor number
(for example, 3), multiple processor numbers separated
by spaces (for example, 1 2 3), or a range of proces-
sor numbers (for example, 1-4). It is also possible to
combine ranges and (individual or multiple)
processor_ids (for example, 1-3 5 7-8 9).
processor_set_id
Specify processor_set_id as a processor set ID.
EXIT STATUS
The following exit values are returned:
0 Successful completion.
non-0 An error occurred.
ATTRIBUTES
See attributes(5) for descriptions of the following attri-
butes:
____________________________________________________________
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
|_____________________________|_____________________________|
| Availability | SUNWcsu |
|_____________________________|_____________________________|
| Stability Level | Stable |
|_____________________________|_____________________________|
SEE ALSO
pbind(1M), psradm(1M), psrinfo(1M), processor_bind(2),
processor_info(2), pset_bind(2), pset_create(2),
pset_info(2), sysconf(3C), attributes(5)
DIAGNOSTICS
psrset: cannot query pid 31: No such process
The process specified did not exist or has exited.
psrset: cannot bind pid 31: Not owner
The user does not have permission to bind the process.
psrset: cannot assign processor 4: Not owner
The user does not have permission to assign the pro-
cessor.
psrset: cannot assign processor 8: Invalid argument
The specified processor is not on-line, or the speci-
fied processor does not exist.
psrset: cannot bind pid 67: Device busy
An LWP in the specified process is bound to a proces-
sor and cannot be bound to a processor set that does
not include that processor.
psrset: cannot assign processor 7: Device busy
The specified processor could not be added to the pro-
cessor set. This can be due to bound LWPs on that pro-
cessor, or because that processor cannot be combined
in the same processor set with other processors in
that set, or because the processor is the last one in
its current processor set.
psrset: cannot execute in processor set 8: Invalid argument
The specified processor set does not exist.
psrset: cannot create processor set: Not enough space
The maximum number of processor sets allowed in the
system is already active.
Man(1) output converted with
man2html