SolarisTM
Resource Management
Peter Baer Galvin
With SolarisTM 9, Sun is bundling the previously unbundled Solaris
Resource Manager. How does it work, and how well does it work? This month, the
Solaris Companion takes it for a spin.
Before Solaris 9, some rudimentary resource management was included in Solaris.
For example, the psrset command controls processor sets. This command
has been available since Solaris 2.6. With this command, you can create and
delete processor sets (which are identified groups of processors), assign CPUs
to those sets, assign threads to those sets, and display information about the
system's processor sets. In this manner, certain tasks can be run on certain
CPUs, and those tasks can be limited to not using other CPUs. This base functionality
can be useful in a small number of situations, but for fine-grained management
of threads on a system, memory, I/O, disk use, and more flexible CPU control
are all required. Enter Solaris Resource Manager.
The Solaris Resource Manager (SRM) was an unbundled product before Solaris
9, and is now included at no cost in the Solaris 9 release from Sun. This review
covers that free version (as implemented in the 12/02 release). It is included
as part of the full operating system installation, so no extra effort is needed
to make it available on an S9 system.
Concepts
SRM consists of two rather disparate functions -- resource limitations and
fair share scheduling. Think of the first as an extension to the standard "limits"
that are settable within Solaris. The second is a new scheduler that manages
CPU scheduling based on allocated shares, rather than the usual use-the-most-CPU-cycles
kind of scheduling.
|