Skip to content

Commit 088dc41

Browse files
authored
Merge pull request #55893 from ahardin-rh/cpu-manager-audit
OSDOCS-4323: Using CPU Manager and Using Topology Manager updates
2 parents 7f6e62d + 55b444f commit 088dc41

File tree

7 files changed

+25
-56
lines changed

7 files changed

+25
-56
lines changed

_topic_maps/_topic_map.yml

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2497,11 +2497,9 @@ Topics:
24972497
- Name: Using the Node Tuning Operator
24982498
File: using-node-tuning-operator
24992499
Distros: openshift-origin,openshift-enterprise
2500-
- Name: Using CPU Manager
2500+
- Name: Using CPU Manager and Topology Manager
25012501
File: using-cpu-manager
25022502
Distros: openshift-origin,openshift-enterprise
2503-
- Name: Using Topology Manager
2504-
File: using-topology-manager
25052503
- Name: Scheduling NUMA-aware workloads
25062504
File: cnf-numa-aware-scheduling
25072505
Distros: openshift-origin,openshift-enterprise

modules/pod-interactions-with-topology-manager.adoc

Lines changed: 4 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,7 @@
77

88
The example `Pod` specs below help illustrate pod interactions with Topology Manager.
99

10-
The following pod runs in the `BestEffort` QoS class because no resource requests or
11-
limits are specified.
10+
The following pod runs in the `BestEffort` QoS class because no resource requests or limits are specified.
1211

1312
[source,yaml]
1413
----
@@ -33,8 +32,7 @@ spec:
3332
memory: "100Mi"
3433
----
3534

36-
If the selected policy is anything other than `none`, Topology Manager would
37-
not consider either of these `Pod` specifications.
35+
If the selected policy is anything other than `none`, Topology Manager would not consider either of these `Pod` specifications.
3836

3937
The last example pod below runs in the Guaranteed QoS class because requests are equal to limits.
4038

@@ -55,11 +53,6 @@ spec:
5553
example.com/device: "1"
5654
----
5755

58-
Topology Manager would consider this pod. The Topology Manager consults the
59-
CPU Manager static policy, which returns the topology of available CPUs. Topology
60-
Manager also consults Device Manager to discover the topology of available devices
61-
for example.com/device.
56+
Topology Manager would consider this pod. The Topology Manager would consult the hint providers, which are CPU Manager and Device Manager, to get topology hints for the pod.
6257

63-
Topology Manager will use this information to store the best Topology for this
64-
container. In the case of this pod, CPU Manager and Device Manager will use this stored
65-
information at the resource allocation stage.
58+
Topology Manager will use this information to store the best topology for this container. In the case of this pod, CPU Manager and Device Manager will use this stored information at the resource allocation stage.

modules/setting-up-cpu-manager.adoc

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -51,10 +51,10 @@ spec:
5151
cpuManagerReconcilePeriod: 5s <2>
5252
----
5353
<1> Specify a policy:
54-
* `none`. This policy explicitly enables the existing default CPU affinity scheme, providing no affinity beyond what the scheduler does automatically.
55-
* `static`. This policy allows pods with certain resource characteristics to be granted increased CPU affinity and exclusivity on the node. If `static`, you must use a lowercase `s`.
54+
* `none`. This policy explicitly enables the existing default CPU affinity scheme, providing no affinity beyond what the scheduler does automatically. This is the default policy.
55+
* `static`. This policy allows containers in guaranteed pods with integer CPU requests. It also limits access to exclusive CPUs on the node. If `static`, you must use a lowercase `s`.
5656
<2> Optional. Specify the CPU Manager reconcile frequency. The default is `5s`.
57-
57+
5858
. Create the dynamic kubelet config:
5959
+
6060
[source,terminal]

modules/setting-up-topology-manager.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ To use Topology Manager, you must configure an allocation policy in the `cpumana
1111

1212
.Prequisites
1313

14-
* Configure the CPU Manager policy to be `static`. See the Using CPU Manager in the Scalability and Performance section.
14+
* Configure the CPU Manager policy to be `static`.
1515
1616
.Procedure
1717

modules/topology-manager-policies.adoc

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,6 @@
88

99
Topology Manager aligns `Pod` resources of all Quality of Service (QoS) classes by collecting topology hints from Hint Providers, such as CPU Manager and Device Manager, and using the collected hints to align the `Pod` resources.
1010

11-
[NOTE]
12-
====
13-
To align CPU resources with other requested resources in a `Pod` spec, the CPU Manager must be enabled with the `static` CPU Manager policy.
14-
====
15-
1611
Topology Manager supports four allocation policies, which you assign in the `cpumanager-enabled` custom resource (CR):
1712

1813
`none` policy::

scalability_and_performance/using-cpu-manager.adoc

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
:_content-type: ASSEMBLY
22
[id='using-cpu-manager']
3-
= Using CPU Manager
3+
= Using CPU Manager and Topology Manager
44
include::_attributes/common-attributes.adoc[]
5-
:context: using-cpu-manager
5+
:context: using-cpu-manager-and-topology_manager
66

77
toc::[]
88

@@ -16,4 +16,18 @@ CPU Manager is useful for workloads that have some of these attributes:
1616
* Coordinate with other processes and benefit from sharing a single processor
1717
cache.
1818
19+
Topology Manager collects hints from the CPU Manager, Device Manager, and other Hint Providers to align pod resources, such as CPU, SR-IOV VFs, and other device resources, for all Quality of Service (QoS) classes on the same non-uniform memory access (NUMA) node.
20+
21+
Topology Manager uses topology information from the collected hints to decide if a pod can be accepted or rejected on a node, based on the configured Topology Manager policy and pod resources requested.
22+
23+
Topology Manager is useful for workloads that use hardware accelerators to support latency-critical execution and high throughput parallel computation.
24+
25+
To use Topology Manager you must configure CPU Manager with the `static` policy.
26+
1927
include::modules/setting-up-cpu-manager.adoc[leveloffset=+1]
28+
29+
include::modules/topology-manager-policies.adoc[leveloffset=+1]
30+
31+
include::modules/setting-up-topology-manager.adoc[leveloffset=+1]
32+
33+
include::modules/pod-interactions-with-topology-manager.adoc[leveloffset=+1]

scalability_and_performance/using-topology-manager.adoc

Lines changed: 0 additions & 31 deletions
This file was deleted.

0 commit comments

Comments
 (0)