SUMMARY: Controlling processor usage on dual-processor

From: Dan Penrod (
Date: Tue Aug 05 1997 - 18:18:52 CDT

Many thanks to the managers for some terrific answers.
Here's what I found out...

mpstat will show you load statistics for all processors
currently on-line. The most interesting parameters are
probably the last 4; %User, %System, %I/O Wait, and %Idle
        #mpstat 5
        will display system params for all processors
        updating the display every 5 seconds.

psrinfo will show you how many processors you have, processor
speeds, on-line status, and how long on-line.
        # psrinfo -v

        Status of processor 0 as of: 08/05/97 18:55:30
          Processor has been on-line since 07/30/97 11:45:17.
          The sparc processor operates at 200 MHz,
                and has a sparc floating point processor.
        Status of processor 1 as of: 08/05/97 18:55:30
          Processor has been on-line since 08/05/97 17:16:49.
          The sparc processor operates at 200 MHz,
                and has a sparc floating point processor.

psradm allows you to set CPUs on-line or off-line.
        # psradm -f -v 1
                sets processor #1 off-line verbosely

priocntl displays and sets scheduling parameters. Apparently
it's an SVR4 extension of the old BSD renice priorities used
mostly for real-time applications. You can use this to set
priorities of processes on processors. There's more in the
man page than most want to know.

pbind allows you to "bind", "unbind", and "query binding" of
any process by its PID. It can make a process bind exlusively
to a CPU but it can't make a CPU exclusive to a process.

        # pbind -b 1 8239
        process id 8239: was not bound, now 1

                just bound process 8239 to CPU #1

        # pbind -q 8239
        process id 8239: 1

                just verified that process 8239 was bound to #1

        # pbind -u 8239
        process id 8239: was 1, now not bound

                just unbound process 8239 from CPU #1

The concensus was that it's not usually a good idea to manually
bind processes to CPUs unless you really think you can handle
the responsibility of Symmetric Multi-Processing better than
Solaris. The OS generally does a fabulous job of extracting the
greatest efficiencies from the CPUs available.

My interest was as to whether or not I could isolate Oracle
processes to a single CPU since Oracle charges licensing by CPU.

The CPU performance meter xcpustate was recommended.
It's pretty cool. It shows all CPUs.

Thanks to:

John DiMarco <> (Marc S. Gibian (Kevin Sheehan {Consulting Poster Child})
"Brion Leary" <>
Michael Hill <>
Jim Harmon <>
Medizinische Hochschule Hannover, Abteilung Nuklearmedizin
Ian TCollins <>
Casper Dik <casper@holland.Sun.COM>
Glenn Satchell - Uniq Professional Services <>
Francis Liu <>

| Dan Penrod - Systems Administrator                  |
| Image Technologies / World Color New Media          |
| 2502 Rocky Point Dr. Suite 200, Tampa, FL 33716     |
| vox:813/636-9266 fax:636-0431 |

This archive was generated by hypermail 2.1.2 : Fri Sep 28 2001 - 23:12:00 CDT