Merge "Add support for OVS DPDK pmd auto balance parameters."

This commit is contained in:
Zuul 2021-06-18 17:33:20 +00:00 committed by Gerrit Code Review
commit 688e97f4b4
2 changed files with 53 additions and 0 deletions

View File

@ -101,6 +101,43 @@ parameters:
type: boolean type: boolean
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: |
@ -134,6 +171,9 @@ resources:
revalidator: OvsRevalidatorCores revalidator: OvsRevalidatorCores
handler: OvsHandlerCores handler: OvsHandlerCores
pmd_auto_lb: OvsPmdAutoLb pmd_auto_lb: OvsPmdAutoLb
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}
@ -146,6 +186,9 @@ resources:
OvsRevalidatorCores: {get_param: OvsRevalidatorCores} OvsRevalidatorCores: {get_param: OvsRevalidatorCores}
OvsHandlerCores: {get_param: OvsHandlerCores} OvsHandlerCores: {get_param: OvsHandlerCores}
OvsPmdAutoLb: {get_param: OvsPmdAutoLb} OvsPmdAutoLb: {get_param: OvsPmdAutoLb}
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
@ -175,6 +218,9 @@ outputs:
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_auto_lb: {get_attr: [RoleParametersDpdk, value, pmd_auto_lb]} tripleo_ovs_dpdk_pmd_auto_lb: {get_attr: [RoleParametersDpdk, value, pmd_auto_lb]}
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:
- {get_param: OvsDisableEMC} - {get_param: OvsDisableEMC}

View File

@ -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.