Uprev Platform App - app-kubernetes-power-manager

Story: 2011069
Task: 49755

Change-Id: Ic81425411796b2a98dc32302a9d7e86063eb82be
Signed-off-by: Ngairangbam Mili <ngairangbam.mili@windriver.com>
This commit is contained in:
Ngairangbam Mili 2024-05-30 07:31:27 +00:00
parent 297649d3e0
commit fd280ee882

View File

@ -81,12 +81,18 @@ application.
intel-power-operator
* - Role
- operator-custom-resource-definitions-role
* - RoleBinding
- operator-custom-resource-definitions-role-binding
* - Cluster Role
- operator-nodes
manager-role
node-agent-cluster-resources
* - Cluster Role Binding
- operator-nodes-binding
node-agent-cluster-resources-binding
* - Custom Resource Definition
- cstates.power.intel.com
@ -220,8 +226,7 @@ and select all CPU cores available except the platform cores that use the
.. note::
The CPU p-state of the platform cores will not be managed by Power Manager
and will continue to use the settings defined as tuned.
The CPU p-state of the platform cores is managed by the use of the ``reservedProfile`` parameter.
.. rubric:: **Node Agent Pod**
@ -280,6 +285,9 @@ min:
reservedCPUs:
List of CPU cores to not apply the profile (platform cores)
reservedProfile:
The profile to apply to platform cores
.. rubric:: **c-states Profile [section cstatesProfile]:**
sharedPoolCStates:
@ -288,11 +296,11 @@ sharedPoolCStates:
individualCoreCStates:
List of all platform CPU cores:
- setList of CPU c-states for each application core and their status (on/off)
- List of CPU c-states for each application core and their status (on/off)
See the example below to to configure host controller-0. This setting will
See the example below to configure host controller-0. This setting will
override the CPU governor and maximum CPU frequency in Shared Profile and
disable C2 state for the platform cores (0,32) and enable C2 state for all
disable C6 state for the platform cores (0,96) and enable C6 state for all
application cores through the c-state Profile.
.. code-block:: none
@ -306,11 +314,11 @@ application cores through the c-state Profile.
controller-0:
individualCoreCStates:
"0":
C2: false
"32":
C2: false
C6: false
"96":
C6: false
sharedPoolCStates:
C2: true
C6: true
Applying these ``user_overrides`` will generate a new configuration
(``combined_overrides``) by merging and overriding the auto-generated
@ -323,62 +331,70 @@ in the ``system_overrides`` section and the user configuration in
(keystone_admin)]$ system helm-override-show kubernetes-power-manager kubernetes-power-manager intel-power
+--------------------+--------------------------------------------------------------------+
| Property | Value |
+--------------------+--------------------------------------------------------------------+
| attributes | enabled: true |
| | |
| combined_overrides | cstatesProfile: |
| | controller-0: |
| | individualCoreCStates: |
| | "0": |
| | C1: true |
| | C2: false |
| | "32": |
| | C1: true |
| | C2: false |
| | sharedPoolCStates: |
| | C1: true |
| | C2: true |
| | sharedProfile: |
| | controller-0: |
| | governor: powersave |
| | max: 2000 |
| | min: 800 |
| | reservedCPUs: |
| | - 0 |
| | - 32 |
| | |
| name | kubernetes-power-manager |
| namespace | intel-power |
| system_overrides | cstatesProfile: |
| | controller-0: |
| | individualCoreCStates: |
| | '0': {C1: true, C2: true} |
| | '32': {C1: true, C2: true} |
| | sharedPoolCStates: {C1: true, C2: false} |
| | sharedProfile: |
| | controller-0: |
| | governor: performance |
| | max: 3000 |
| | min: 800 |
| | reservedCPUs: [0, 96] |
| | |
| user_overrides | cstatesProfile: |
| | controller-0: |
| | individualCoreCStates: |
| | "0": |
| | C2: false |
| | "32": |
| | C2: false |
| | sharedPoolCStates: |
| | C2: true |
| | sharedProfile: |
| | controller-0: |
| | governor: powersave |
| | max: 2000 |
| | |
+--------------------+--------------------------------------------------------------------+
+--------------------+---------------------------------------------------------------------+
| Property | Value |
+--------------------+---------------------------------------------------------------------+
| attributes | enabled: true |
| | |
| combined_overrides | cstatesProfile: |
| | controller-0: |
| | individualCoreCStates: |
| | "0": |
| | C1: true |
| | C1E: true |
| | C6: false |
| | C6: false |
| | POLL: true |
| | "96": |
| | C1: true |
| | C1E: true |
| | C6: false |
| | POLL: true |
| | sharedPoolCStates: |
| | C1: true |
| | C1E: false |
| | C6: true |
| | POLL: true |
| | sharedProfile |
| | controller-0: |
| | governor: powersave |
| | max: 2000 |
| | min: 800 |
| | reservedCPUs: '[0, 96]' |
| | reservedProfile: performance |
| | shared: true |
| | |
| | |
| name | kubernetes-power-manager |
| namespace | intel-power |
| system_overrides | cstatesProfile: |
| | controller-0: |
| | individualCoreCStates: |
| | '0': {C1: true, C1E: true, C6: true, POLL: true} |
| | '96': {C1: true, C1E: true, C6: true, POLL: true} |
| | sharedPoolCStates: {C1: true, C1E: false, C6: false, POLL: true}|
| | sharedProfile: |
| | controller-0: |
| | governor: performance |
| | max: 3000 |
| | min: 800 |
| | reservedCPUs: [0, 96] |
| | reservedProfile: performance, shared: true} |
| user_overrides | cstatesProfile: |
| | controller-0: |
| | individualCoreCStates: |
| | "0": |
| | C6: false |
| | "96": |
| | C6: false |
| | sharedPoolCStates: |
| | C6: true |
| | sharedProfile: |
| | controller-0: |
| | governor: powersave |
| | max: 2000 |
| | |
+--------------------+---------------------------------------------------------------------+
This final configuration will be published into Kubernetes as a Shared Profile
and c-state Profile when you reapply the application.
@ -396,20 +412,20 @@ including c-states for performance profile:
sharedProfile:
controller-0:
governor: powersave
max: 2000
max: 2000
cstatesProfile:
controller-0:
individualCoreCStates:
"0":
C2: false
"32":
C2: false
C6: false
"96":
C6: false
sharedPoolCStates:
C2: true
C6: true
exclusivePoolCstates:
performance:
C2: true
C6: true
There are other features available in the Power Manager, such as Uncore