IBM Support

Usage of Dynamic Platform Optimizer along with flex_latency.

How To


Summary

Dynamic Platform Optimizer (DPO) is hypervisor function which rearranges logical partition processors and memory allocated among the different logical partition of the system and It is not recommend to use DPO with operating system restricted tuneable flex_latency.

The flex_latency or latency sensitive process/thread support is mechanism by which time it takes for a thread to be dispatched onto a
CPU after being made runnable is reduced and if the latency sensitive thread's current run queue is not idle, then search for sibling thread
is performed and latency sensitive thread is placed on sibling cpu which is idle.

This facility is enabled in logical partitions using “schedo” command and application use this facility once it is enabled.
The flex_latency tuneable was introduced as part of a larger line item that did not make plan and thus was not
completed nor tested by our test organizations.

It is recommended that DPO and flex_latency should not be used the same time as the logical partition undergoes dynamic platform optimisation and flex_latency might hit the synchronisation issues.

The "flex_latency" is a restricted tuneable and This is not advisable in Customer environment specially in when DPO is enabled.


Checking the enablement of DPO:

From the HMC command line, type the following command to list the DPO operation that is currently running:

lsmemopt -m managed-system

Example :

hscroot@p8-hmc:~> lsmemopt -m alpfp040

in_progress=1,status=In progress,type=affinity,opt_id=1,progress=30,requested_lpar_names=alp040p2,requested_lpar_ids=2,protected_lpar_ids=none,impacted_lpar_ids=none

The above output indicates that logical partition alp040p2 from the system alpfp040 is enabled with DPO.


Checking the enablement of flex_latency:

We have to use schedo command to check enablement of flex_latency

# schedo -h flex_latency
Help for tunable flex_latency:
Purpose:
Enable boost latency dispatch policy.
Values:
Default: 0
Range: 0, 1
Type: Dynamic
Unit: boolean
Tuning:
A value of 0 indicates no boost latency support.
A value of 1 indicates boost latency support.

(0)

# schedo -L flex_latency
NAME CUR DEF BOOT MIN MAX UNIT TYPE
DEPENDENCIES
--------------------------------------------------------------------------------
flex_latency 1 0 0 0 1 boolean D
--------------------------------------------------------------------------------

(0)

If you have already enabled with DPO or going to enable DPO in a system, then we have to check the “flex_latency” for each participating LPAR belonging to that system. If it is enabled , it should be disabled as shown below.

# schedo -o flex_latency=0
Setting flex_latency to 0
Warning: a restricted tunable has been modified

(0) root @ alp040-lp2: /aso_sleep_update_test3
# schedo -L flex_latency
NAME CUR DEF BOOT MIN MAX UNIT TYPE
DEPENDENCIES
--------------------------------------------------------------------------------
flex_latency 0 0 0 0 1 boolean D
--------------------------------------------------------------------------------

(0)


Note : Customer should consult IBM support team before the enablement of the flex_latency as it is a restricted tunable.


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Author: Chetan Gaonkar
Operating System: AIX and VIOS
Hardware: Power
Feedback: aix_feedback@wwpdl.vnet.ibm.com, cgaonkar@in.ibm.com
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~



Document Location

Worldwide

[{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SWG10","label":"AIX"},"ARM Category":[{"code":"a8m0z0000001fMuAAI","label":"AIX General Support"}],"ARM Case Number":"","Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"All Version(s)","Line of Business":{"code":"LOB08","label":"Cognitive Systems"}}]

Document Information

Modified date:
11 July 2020

UID

ibm16210261