5.4. Shared Dedicated Capacity

With shared processor LPARs, unused processor shares of the guaranteed entitlement are returned to the shared processor pool (hypervisor). The latter can then assign these additionally available processor shares to other shared processor LPARs if they need additional processor shares. No processor capacity is wasted.

In the case of LPARs with dedicated processors, the processors are assigned exclusively by default, processor shares that are not used are simply not used. As the graphic in figure 5.10 shows, these unused processor shares can be of considerable size.

Processor utilization of an LPAR with dedicated processors
Figure 5.10: Processor utilization of an LPAR with dedicated processors.

The graphic shows the CPU utilization of a dedicated LPAR. The utilization of the CPUs in user mode and kernel mode is shown in green (% usr) and red (% sys). The percentage at which the CPUs have nothing to do is shown in blue (% idle). On average, this is around 28% for the period shown. That means 28% of the available processor capacity of the dedicated processors of the LPAR are wasted, not performing any work.

The processor sharing mode can also be configured for LPARs with dedicated processors (proc_mode=ded) so that unused processor capacities of dedicated LPARs can be used by shared processor LPARs. The sharing_mode attribute can have one of the following 4 values for dedicated LPARs:

keep_idle_procs – Processors that are not used are not made available for sharing. The LPAR keeps processors that are “idle“.

share_idle_procs – Unused processor shares are only made available if the dedicated LPAR is inactive. When the dedicated LPAR is active, no shares will be made available.

share_idle_procs_active – Unused processor shares are made available when the dedicated LPAR is active. If the dedicated LPAR is inactive, no shares will be made available!

share_idle_procs_always – Unused processor parts are always made available, regardless of whether the dedicated LPAR is active or inactive.

The sharing mode can be changed at any time with the command “lpar chproc“:

$ lpar chproc aix02 sharing_mode=share_idle_procs_always

Note: If a dedicated LPAR shares unused processor time, this can have a negative impact on the performance of the LPAR. It is guaranteed to receives all processor shares at any time if needed and does not have to compete with other LPARs for these processor shares. But of course other LPARs use the different caches and e.g. the TLB (Translation Lookaside Buffer). This means that the dedicated LPAR will produce more cache misses, which can have a negative impact on performance.