You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: modules/cnf-managing-device-interrupt-processing-for-guaranteed-pod-isolated-cpus.adoc
+23-2Lines changed: 23 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -14,6 +14,28 @@ In the performance profile, `globallyDisableIrqLoadBalancing` is used to manage
14
14
15
15
To achieve low latency for workloads, some (but not all) pods require the CPUs they are running on to not process device interrupts. A pod annotation, `irq-load-balancing.crio.io`, is used to define whether device interrupts are processed or not. When configured, CRI-O disables device interrupts only as long as the pod is running.
16
16
17
+
[id="disabling-cpu-cfs-quota_{context}"]
18
+
== Disabling CPU CFS quota
19
+
20
+
To reduce CPU throttling for individual guaranteed pods, create a pod specification with the annotation `cpu-quota.crio.io: "disable"`. This annotation disables the CPU completely fair scheduler (CFS) quota at the pod run time. The following pod specification contains this annotation:
21
+
22
+
[source,yaml]
23
+
----
24
+
apiVersion: performance.openshift.io/v2
25
+
kind: Pod
26
+
metadata:
27
+
annotations:
28
+
cpu-quota.crio.io: "disable"
29
+
spec:
30
+
runtimeClassName: performance-<profile_name>
31
+
...
32
+
----
33
+
34
+
[NOTE]
35
+
====
36
+
Only disable CPU CFS quota when the CPU manager static policy is enabled and for pods with guaranteed QoS that use whole CPUs. Otherwise, disabling CPU CFS quota can affect the performance of other containers in the cluster.
== Disabling interrupt processing for individual pods
37
59
38
-
To disable interrupt processing for individual pods, ensure that `globallyDisableIrqLoadBalancing` is set to `false` in the performance profile. Then, in the pod specification, set the `irq-load-balancing.crio.io` and `cpu-load-balancing.crio.io` pod annotations to `disable`. An example pod specification snippet that illustrates this is below:
60
+
To disable interrupt processing for individual pods, ensure that `globallyDisableIrqLoadBalancing` is set to `false` in the performance profile. Then, in the pod specification, set the `irq-load-balancing.crio.io` pod annotation to `disable`. The following pod specification contains this annotation:
0 commit comments