JavaScript is required to for searching.
Skip Navigation Links
Exit Print View
Resource Management and Oracle Solaris Zones Developer's Guide     Oracle Solaris 11 Information Library
search filter icon
search icon

Document Information

Preface

1.  Resource Management in the Oracle Solaris Operating System

2.  Projects and Tasks

3.  Using the C Interface to Extended Accounting

4.  Using the Perl Interface to Extended Accounting

5.  Resource Controls

6.  Resource Pools

Overview of Resource Pools

Scheduling Class

Dynamic Resource Pool Constraints and Objectives

System Properties

Pools Properties

Processor Set Properties

Using libpool to Manipulate Pool Configurations

Manipulate psets

Resource Pools API Functions

Functions for Operating on Resource Pools and Associated Elements

Functions for Querying Resource Pools and Associated Elements

Resource Pool Code Examples

Ascertain the Number of CPUs in the Resource Pool

List All Resource Pools

Report Pool Statistics for a Given Pool

Set pool.comment Property and Add New Property

Programming Issues Associated With Resource Pools

zonestat Utility for Monitoring Resource Pools in Oracle Solaris Zones

7.  Design Considerations for Resource Management Applications in Oracle Solaris Zones

8.  Configuration Examples

Index

Overview of Resource Pools

Resource pools provide a framework for managing processor sets and thread scheduling classes. Resource pools are used for partitioning machine resources. Resource pools enable you to separate workloads so that workload consumption of certain resources does not overlap. The resource reservation helps to achieve predictable performance on systems with mixed workloads.

For an overview of resource pools and example commands for administering resource pools, see Chapter 12, Resource Pools (Overview), in Oracle Solaris Administration: Oracle Solaris Zones, Oracle Solaris 10 Zones, and Resource Management and Chapter 13, Creating and Administering Resource Pools (Tasks), in Oracle Solaris Administration: Oracle Solaris Zones, Oracle Solaris 10 Zones, and Resource Management.

A processor set groups the CPUs on a system into a bounded entity, on which a process or processes can run exclusively. Processes cannot extend beyond the processor set, nor can other processes extend into the processor set. A processor set enables tasks of similar characteristics to be grouped together and a hard upper boundary for CPU use to be set.

The resource pool framework allows the definition of a soft processor set with a maximum and minimum CPU count requirement. Additionally, the framework provides a hard-defined scheduling class for that processor set.

A zone can be bound to a resource pool through the pool property of the zone configuration. The zone is bound to the specified pool upon creation of the zone. The pool configuration can be changed only from the global zone. Zones cannot span multiple pools. All processes in a zone run in the same pool. However, multiple zones can bind to the same resource pool.

A resource pool defines:

Scheduling Class

Scheduling classes provide different CPU access characteristics to threads that are based on algorithmic logic. The scheduling classes include:

For an overview of fair share scheduler and example commands for administering the fair share scheduler, see Chapter 8, Fair Share Scheduler (Overview), in Oracle Solaris Administration: Oracle Solaris Zones, Oracle Solaris 10 Zones, and Resource Management and Chapter 9, Administering the Fair Share Scheduler (Tasks), in Oracle Solaris Administration: Oracle Solaris Zones, Oracle Solaris 10 Zones, and Resource Management.

Do not mix scheduling classes in a set of CPUs. If scheduling classes are mixed in a CPU set, system performance might become erratic and unpredictable. Use processor sets to segregate applications by their characteristics. Assign scheduling classes under which the application best performs. For more information about the characteristics of an individual scheduling class, see priocntl(1).

For an overview of resource pools and a discussion of when to use pools, see Chapter 6, Resource Pools.