JavaScript is required to for searching.
Skip Navigation Links
Exit Print View
Oracle VM Server for SPARC 2.1 Administration Guide     Oracle VM Server for SPARC
search filter icon
search icon

Document Information

Preface

Part I Oracle VM Server for SPARC 2.1 Software

1.  Overview of the Oracle VM Server for SPARC Software

2.  Installing and Enabling Software

3.  Security

4.  Setting Up Services and the Control Domain

5.  Setting Up Guest Domains

6.  Setting Up I/O Domains

7.  Using Virtual Disks

8.  Using Virtual Networks

9.  Migrating Domains

10.  Managing Resources

Resource Reconfiguration

Dynamic Reconfiguration

Delayed Reconfiguration

Resource Allocation

CPU Allocation

Enabling the Whole-Core Constraint

Disabling the Whole-Core Constraint

Allocating CPUs to the Control Domain

Interactions Between the Whole-Core Constraint and Other Domain Features

CPU Dynamic Reconfiguration

Dynamic Resource Management

Domain Migration

Power Management

Using Memory Dynamic Reconfiguration

Adding Memory

Removing Memory

Tracking the Progress of a Memory DR Request

Canceling a Memory DR Request

Partial Memory DR Requests

Memory Reconfiguration of the Control Domain

Decrease the Control Domain's Memory

Dynamic and Delayed Reconfiguration

Memory Alignment

Memory Alignment for Active Domains

Memory Alignment for Bound Domains

Memory Alignment for Inactive Domains

Adding Unaligned Memory

Memory DR Examples

Using Power Management

Listing Power-Managed CPU Strands and Virtual CPUs

List Power-Managed CPU Strands

List Power-Managed CPUs

Using Dynamic Resource Management

Listing Domain Resources

Machine-Readable Output

Show Syntax Usage for ldm Subcommands

Flag Definitions

Utilization Statistic Definition

Viewing Various Lists

Show Software Versions (-V)

Generate a Short List

Generate a Long List (-l)

Generate an Extended List (-e)

Generate a Parseable, Machine-Readable List (-p)

Generate a Subset of a Long List (-o format)

List a Variable

List Bindings

List Configurations

List Devices

List Available Memory

List Services

Listing Constraints

List Constraints for One Domain

List Constraints in XML Format

List Constraints in a Machine-Readable Format

11.  Managing Configurations

12.  Performing Other Administration Tasks

Part II Optional Oracle VM Server for SPARC Software

13.  Oracle VM Server for SPARC Physical-to-Virtual Conversion Tool

14.  Oracle VM Server for SPARC Configuration Assistant

15.  Using the Oracle VM Server for SPARC Management Information Base Software

16.  Logical Domains Manager Discovery

17.  Using the XML Interface With the Logical Domains Manager

Glossary

Index

CPU Allocation

The CPU allocation mechanism uses the following constraints and hint for CPU resources:


Note - The whole-core constraint and the core affinity hint only address the location of a virtual CPU on cores. They do not address the location of a core on chips or of a chip on sockets.


Enabling the Whole-Core Constraint

The whole-core constraint is automatically enabled when you specify the number of cores to assign to a domain. By default, you specify the virtual CPUs to assign to a domain. You can only enable the whole-core constraint on an inactive domain, not on a domain that is bound or active. Before you enable the whole-core constraint on the control domain, you must first initiate a delayed reconfiguration.

Use the ldm add-vcpu -c number, ldm set-vcpu -c number, or ldm remove-vcpu -c number command to assign or remove CPU cores to and from a domain. number specifies the number of CPU cores and enables the whole-core constraint. For more information, see the ldm(1M) man page.

You can use the ldm add-vcpu -c number or ldm remove-vcpu -c number command on a domain that was previously configured with virtual CPUs. In that case, the existing number of virtual CPUs is automatically converted to the corresponding number of cores. This conversion is possible only if the existing number of virtual CPUs is a multiple of the number of virtual CPUs per core. If not, the conversion cannot be performed, and the command fails.


Note - If you use these commands to enable the whole-core constraint on an inactive domain or on the control domain in delayed reconfiguration mode, the maximum number of cores is also set. The maximum number of cores is not affected when you use these commands on a bound or active domain.


For example, a core is comprised of eight virtual CPUs. If a domain has seven virtual CPUs assigned, an ldm add-vcpu -c or ldm remove-vcpu -c command could not meet the whole-core constraint. Instead, you could use the set-vcpu -c command to specify the number of cores and to enable the whole-core constraint.

The following example enables the whole-core constraint on the inactive ldg1 domain. The ldm list command verifies that the whole-core constraint is enabled.

primary# ldm add-vcpu -c 1 ldg1
primary# ldm list -o resmgmt ldg1
NAME
ldg1
CONSTRAINT
   whole-core
   max-cores=1

Note - When the whole-core constraint is enabled on a domain, the cryptographic units that are associated with those cores are unaffected by core additions. So, the system does not automatically add the associated cryptographic units to the domain. However, a cryptographic unit is automatically removed only when the last virtual CPU of the core is being removed. This action prevents a cryptographic unit from being unassociated with a virtual CPU.


Disabling the Whole-Core Constraint

When a domain is assigned virtual CPUs instead of cores, the whole-core constraint is disabled. You can only disable the whole-core constraint on an inactive domain, not on a domain that is bound or active. Before you disable the whole-core constraint on the control domain, you must first initiate a delayed reconfiguration.

Use the ldm add-vcpu number, ldm set-vcpu number, or ldm remove-vcpu number command to assign or remove virtual CPUs to and from a domain. number specifies the number of virtual CPUs and disables the whole-core constraint. For more information, see the ldm(1M) man page.

You can use the ldm add-vcpu number or ldm rm-vcpu number command on a domain that was previously configured with CPU cores. In that case, the existing number of CPU cores is automatically converted to the corresponding number of virtual CPUs.


Note - When you disable the whole-core constraint, the maximum core constraint is also automatically disabled.


The following example disables the whole-core constraint on the inactive ldg1 domain:

primary# ldm set-vcpu 1 ldg1

Allocating CPUs to the Control Domain

To enable the whole-core constraint on the control domain, the control domain must be in delayed reconfiguration mode. Enabling the whole-core constraint on the control domain only succeeds if sufficient CPU cores are available to meet the requested constraint. That is, unused cores, cores that are already used by the control domain, or cores that are partially used by the control domain must be available. Otherwise, the CPU allocation on the control domain remains unchanged.


Note - When the control domain is in delayed reconfiguration mode, the whole-core constraint and the setting of the number of cores also specifies the maximum number of cores.


The following example enables the whole-core constraint on the control domain (primary). First, initiate a delayed reconfiguration on the control domain. Next, assign one whole core to the control domain, and then reboot the domain to make the changes take effect.

primary# ldm start-reconf primary
Initiating a delayed reconfiguration operation on the primary domain.
All configuration changes for other domains are disabled until the
primary domain reboots, at which time the new configuration for the
primary domain also takes effect.

primary# ldm add-vcpu -c 1 primary
primary# reboot

Interactions Between the Whole-Core Constraint and Other Domain Features

This section describes the interactions between the whole-core constraint and the following features:

CPU Dynamic Reconfiguration

The whole-core constraint is fully compatible with CPU dynamic reconfiguration (DR). When a domain is defined with the whole-core constraint, you can use the ldm add-vcpu -c, ldm set-vcpu -c, or remove-vcpu -c command to change the number of cores on an active domain.

However, if a bound or active domain is not in delayed reconfiguration mode, its number of cores cannot exceed the maximum number of cores. This maximum is set with the maximum core constraint, which is automatically enabled when the whole-core constraint is enabled. Any CPU DR operation that does not satisfy the maximum core constraint fails.

Dynamic Resource Management

The whole-core constraint is not compatible with dynamic resource management (DRM). When a DRM policy is enabled on a domain that uses the whole-core constraint, the policy is automatically disabled. The whole-core constraint remains enabled.

Even though a DRM policy cannot be enabled when the whole-core constraint is in effect, you can still define a DRM policy for the domain. Note that when a policy is automatically disabled, it still remains active. The policy is automatically re-enabled if the domain is restarted without the whole-core constraint.

The following are the expected interactions between the whole-core constraint and DRM:

Domain Migration

CPU whole-core configuration is incompatible with domain migration. However, you can still migrate a domain that is configured with CPU whole cores. To restore the whole-core constraint after such a migration, stop the domain and reconfigure it for whole-core allocation.

Power Management

The whole-core constraint is fully compatible with the power management (PM) performance and elastic modes. When elastic mode is enabled, the PM subsystem can add or remove CPU cores to or from domains that are configured with the whole-core constraint. In that case, the whole-core constraint continues to be honored, and domains that use that constraint remain configured only with whole cores.