Skip to content
KEP Brain

KEP-4800keps/sig-node/4800-cpumanager-split-uncorecache

Split UnCoreCache Toplogy Awareness in CPU Manager

implementablestablesig-nodelatest v1.362 open findings
This KEP proposes to introduce a new CPU Manager static policy option, "prefer-align-cpus-by-uncorecache", that groups CPU resources by uncore cache where possible. An uncore cache, also known as the last-level-cache, refers to the cache that exists at a shared level among CPU cores, unlike low-level caches which are dedicated per individual core. The opt-in… Full summary

This KEP proposes to introduce a new CPU Manager static policy option, "prefer-align-cpus-by-uncorecache", that groups CPU resources by uncore cache where possible. An uncore cache, also known as the last-level-cache, refers to the cache that exists at a shared level among CPU cores, unlike low-level caches which are dedicated per individual core. The opt-in feature changes the CPU assignment algorithm to recognize and sort CPUs by uncore cache, and then allocate CPUs aligned to the fewest uncore caches as possible. This is primarily beneficial for CPU architectures that utilize multiple uncore caches, or split uncore caches, within the processor. In cases where the number of CPUs requested exceeds the number of CPUs grouped in a uncore cache, the algorithm attempts to align allocations at a best-effort policy to reduce assignments of CPUs across minimal uncore caches. If the CPU Manager cannot align optimally, it will still admit the workload as before. Uncore cache assignment will be preferred but not a strict requirement for this feature.

Facts

Reviewers
@kannon92@kad
PRR approvers
@soltyshalpha@soltyshbeta@soltyshstable
Tracking issue
#4800(opens GitHub in a new tab) closedcompletedclosed 2025-01-31 21:11 UTCsig/nodestage/beta
Milestones
alpha v1.32beta v1.34stable v1.36
Participating SIGs
none
Feature gates
CPUManagerPolicyBetaOptions, CPUManagerPolicyAlphaOptions, CPUManagerPolicyOptions
Created / last updated
2024-08-23 / none
Loading decisions and status history

Keyboard shortcuts

Everywhere

?
Show or hide this list
/
Focus the question box on Ask, otherwise the page search
Ctrl Kor⌘ K
Focus the KEP search in the top bar
t
Switch the theme (system, light, dark)
Esc
Close a dialog, a search list or a menu

Go to a page

Press g, then the letter

g h
Home
g a
Ask
g e
Explore
g u
Audit
g m
Memory
g b
About

Ask

Enter
Send the question
Shift Enter
New line in the question
Esc
Cancel the running question

Search lists

KEP search and Explore search

↓or↑
Move through the results
HomeorEnd
First or last result (Explore)
Enter
Open the highlighted result, or KEP-n when the query is a number

KEP page

o
Open the KEP on GitHub
y
Open kep.yaml on GitHub
a
Ask about this KEP
←or→
Previous or next tab, when a tab is focused

Findings table

With a finding row focused (Tab into the table or click a row)

jork
Next or previous finding
EnterorSpace
Expand or collapse the finding
o
Open the finding's KEP page
d
Draft the fix as an issue text (nothing is posted)
]or[
Next or previous page of findings

Shortcuts pause while you type in a field. Press ? or Esc to close.