support for OVS DPDK pmd auto balance parameters.
This patch adds 3 new role specific THT parameters to configure OVS DPDK
pmd auto balance feature, OvsPmdLoadThreshold (PMD load threshold)
OvsPmdImprovementThreshold (variance in PMD improvement threshold)
OvsPmdRebalInterval (minimum time between 2 consecutive
PMD auto load balancing iterations).
Depends-On: https://review.opendev.org/c/openstack/tripleo-ansible/+/790251
Signed-off-by: yogananth subramanian <ysubrama@redhat.com>
Change-Id: Id74ba956cf29241c93849602ab05c21c1ccb2b06
(cherry picked from commit ec444622dc
)
This commit is contained in:
parent
faa3fc74cf
commit
c746dfa0ba
@ -97,6 +97,43 @@ parameters:
|
|||||||
default: ""
|
default: ""
|
||||||
tags:
|
tags:
|
||||||
- role_specific
|
- role_specific
|
||||||
|
OvsPmdLoadThreshold:
|
||||||
|
description: >
|
||||||
|
Minimum PMD thread load threshold. Its a string with a number
|
||||||
|
in range 0 to 100, specifies the minimum PMD thread load threshold
|
||||||
|
(% of used cycles) of any non-isolated PMD threads when a PMD Auto Load
|
||||||
|
Balance may be triggered.
|
||||||
|
constraints:
|
||||||
|
- allowed_pattern: "[0-9]*"
|
||||||
|
type: string
|
||||||
|
default: ""
|
||||||
|
tags:
|
||||||
|
- role_specific
|
||||||
|
OvsPmdImprovementThreshold:
|
||||||
|
description: >
|
||||||
|
PMD load variance improvement threshold. Its a string with a number
|
||||||
|
in range 0 to 100, specifies the minimum evaluated % improvement in
|
||||||
|
load distribution across the non-isolated PMD threads that will allow a
|
||||||
|
PMD Auto Load Balance to occur.
|
||||||
|
Note, setting this parameter to 0 will always allow an auto load balance
|
||||||
|
to occur regardless of estimated improvement or not.
|
||||||
|
constraints:
|
||||||
|
- allowed_pattern: "[0-9]*"
|
||||||
|
type: string
|
||||||
|
default: ""
|
||||||
|
tags:
|
||||||
|
- role_specific
|
||||||
|
OvsPmdRebalInterval:
|
||||||
|
description: >
|
||||||
|
PMD auto load balancing interval, Its a string with a number in range
|
||||||
|
0 to 20,000, specifies the minimum time (in minutes) between 2
|
||||||
|
consecutive PMD Auto Load Balancing iterations.
|
||||||
|
constraints:
|
||||||
|
- allowed_pattern: "[0-9]*"
|
||||||
|
type: string
|
||||||
|
default: ""
|
||||||
|
tags:
|
||||||
|
- role_specific
|
||||||
OvsDisableEMC:
|
OvsDisableEMC:
|
||||||
default: false
|
default: false
|
||||||
description: |
|
description: |
|
||||||
@ -133,6 +170,9 @@ resources:
|
|||||||
enable_tso: OvsDpdkEnableTSO
|
enable_tso: OvsDpdkEnableTSO
|
||||||
revalidator: OvsRevalidatorCores
|
revalidator: OvsRevalidatorCores
|
||||||
handler: OvsHandlerCores
|
handler: OvsHandlerCores
|
||||||
|
pmd_load_threshold: OvsPmdLoadThreshold
|
||||||
|
pmd_improvement_threshold: OvsPmdImprovementThreshold
|
||||||
|
pmd_rebal_interval: OvsPmdRebalInterval
|
||||||
- values: {get_param: [RoleParameters]}
|
- values: {get_param: [RoleParameters]}
|
||||||
- values:
|
- values:
|
||||||
OvsDpdkCoreList: {get_param: OvsDpdkCoreList}
|
OvsDpdkCoreList: {get_param: OvsDpdkCoreList}
|
||||||
@ -144,6 +184,9 @@ resources:
|
|||||||
OvsDpdkEnableTSO: {get_param: OvsDpdkEnableTSO}
|
OvsDpdkEnableTSO: {get_param: OvsDpdkEnableTSO}
|
||||||
OvsRevalidatorCores: {get_param: OvsRevalidatorCores}
|
OvsRevalidatorCores: {get_param: OvsRevalidatorCores}
|
||||||
OvsHandlerCores: {get_param: OvsHandlerCores}
|
OvsHandlerCores: {get_param: OvsHandlerCores}
|
||||||
|
OvsPmdLoadThreshold: {get_param: OvsPmdLoadThreshold}
|
||||||
|
OvsPmdImprovementThreshold: {get_param: OvsPmdImprovementThreshold}
|
||||||
|
OvsPmdRebalInterval: {get_param: OvsPmdRebalInterval}
|
||||||
|
|
||||||
BootParams:
|
BootParams:
|
||||||
type: ./../kernel/kernel-boot-params-baremetal-ansible.yaml
|
type: ./../kernel/kernel-boot-params-baremetal-ansible.yaml
|
||||||
@ -173,6 +216,9 @@ outputs:
|
|||||||
tripleo_ovs_dpdk_socket_memory: {get_attr: [RoleParametersDpdk, value, socket_mem]}
|
tripleo_ovs_dpdk_socket_memory: {get_attr: [RoleParametersDpdk, value, socket_mem]}
|
||||||
tripleo_ovs_dpdk_revalidator_cores: {get_attr: [RoleParametersDpdk, value, revalidator]}
|
tripleo_ovs_dpdk_revalidator_cores: {get_attr: [RoleParametersDpdk, value, revalidator]}
|
||||||
tripleo_ovs_dpdk_handler_cores: {get_attr: [RoleParametersDpdk, value, handler]}
|
tripleo_ovs_dpdk_handler_cores: {get_attr: [RoleParametersDpdk, value, handler]}
|
||||||
|
tripleo_ovs_dpdk_pmd_load_threshold: {get_attr: [RoleParametersDpdk, value, pmd_load_threshold]}
|
||||||
|
tripleo_ovs_dpdk_pmd_improvement_threshold: {get_attr: [RoleParametersDpdk, value, pmd_improvement_threshold]}
|
||||||
|
tripleo_ovs_dpdk_pmd_rebal_interval: {get_attr: [RoleParametersDpdk, value, pmd_rebal_interval]}
|
||||||
tripleo_ovs_dpdk_emc_insertion_probablity:
|
tripleo_ovs_dpdk_emc_insertion_probablity:
|
||||||
if:
|
if:
|
||||||
- emc_disable
|
- emc_disable
|
||||||
|
@ -0,0 +1,7 @@
|
|||||||
|
---
|
||||||
|
features:
|
||||||
|
- Add support for OVS DPDK pmd auto balance parameters.
|
||||||
|
This feature adds 3 new role specific THT parameters to set
|
||||||
|
pmd-auto-lb-load-threshold, pmd-auto-lb-improvement-threshold,
|
||||||
|
and pmd-auto-lb-rebal-interval in OVS through OvsPmdLoadThreshold,
|
||||||
|
OvsPmdImprovementThreshold and OvsPmdRebalInterval respectively.
|
Loading…
Reference in New Issue
Block a user