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