NAME | SYNOPSIS | DESCRIPTION | OPTIONS | OPERANDS | EXIT STATUS | ATTRIBUTES | SEE ALSO | DIAGNOSTICS
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.
The following options are supported:
Assign the specified processors to the specified processor set.
This option is restricted to use by the super-user.
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, processor 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.
Create a new processor set and displays the new processor 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 processors 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 |
Remove the specified processor set, releasing all processors and processes associated with it.
This option is restricted to use by the super-user.
Execute a command (with optional arguments) in the specified processor set.
The command process and any child processes are executed only by processors in the processor set.
This option is restricted to use by the super-user.
Disables interrupts for all processors within the specified processor set. See psradm(1M).
If some processors in the set cannot have their interrupts 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.
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.
Enable interrupts for all processors within the specified processor set. See psradm(1M).
This option is restricted to use by the super-user.
Display the processor set assignments for the specified list of processors. If no argument is given, the processor set assignments for all processors in the system is given.
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.
Remove a list of processors from their current processor 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.
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 permission 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.
The following operands are supported:
Specify pid as a process 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 processor 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).
Specify processor_set_id as a processor set ID.
See attributes(5) for descriptions of the following attributes:
ATTRIBUTE TYPE |
ATTRIBUTE VALUE |
---|---|
Availability |
SUNWcsu |
Stability Level |
Stable |
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)
The process specified did not exist or has exited.
The user does not have permission to bind the process.
The user does not have permission to assign the processor.
The specified processor is not on-line, or the specified processor does not exist.
An LWP in the specified process is bound to a processor and cannot be bound to a processor set that does not include that processor.
The specified processor could not be added to the processor set. This can be due to bound LWPs on that processor, 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.
The specified processor set does not exist.
The maximum number of processor sets allowed in the system is already active.
NAME | SYNOPSIS | DESCRIPTION | OPTIONS | OPERANDS | EXIT STATUS | ATTRIBUTES | SEE ALSO | DIAGNOSTICS