SLPC - DYNAMIC FREQUENCY MANAGEMENT(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’œ SLPC β€” Dynamic Frequency management πŸ’œ

ok so bestie, welcome to the Kernel API Manual, section 9 β€” this is the glow-up era of your GPU knowledge, and this page is literally the cheat sheet for SLPC. no cap, it's a good one. πŸ¦‹

Single Loop Power Control (SLPC) is a GuC algorithm that manages GT frequency based on busyness and how KMD initializes it. and here's the main character energy part: after initialization, SLPC is almost completely in control β€” like, it runs the whole group chat β€” except for a few little scenarios mentioned below. πŸ™ˆ


✨ the scenarios (aka the exceptions) ✨

  • waitboost β€” KMD uses the concept of waitboost to ramp frequency to RP0 when there are pending submissions for a context. it pulls this off by sending GuC a request to update the min frequency to RP0. and when the request retires? waitboost gets disabled. bye bestie πŸ‘‹
  • per-context hints β€” another form of frequency control, and it's giving personalization πŸ’…. a context can be marked as low latency during creation, which ensures that SLPC uses an aggressive frequency ramp when that context is active. she's extra when she needs to be, and honestly? iconic.
  • power profiles β€” these add another whole level of control on top of those mechanisms. when the power saving profile is chosen, SLPC will use conservative thresholds to ramp frequency, thus saving power. KMD will disable waitboosts as well, which achieves further power savings. meanwhile the base profile is the default and ensures balanced performance for any workload. slay, balanced queen πŸ‘‘
  • sysfs β€” lastly, users have some level of control through sysfs, where min/max frequency values can be altered and the use of efficient freq can be toggled. you get a lil seat at the table, as a treat 🫢
ngl, the vibes here are "SLPC is driving, you're in the passenger seat with a few buttons." respect the driver. πŸš—

πŸ‘€ SEE ALSO πŸ‘€

the kernel file that's the whole source of truth, fr fr:

./drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c

and the besties you should also go read (all section 9, iykyk):


and that's the page!! πŸ’– this lil section 9 gem lives in ./drivers/gpu/drm/i915/gt/uc, dated October 2026, and it's brought to you by the Kernel API Manual. go forth and toggl(e) your freq, bestie. periodt. πŸŽ€πŸŒˆβ­

πŸ“¦ where this page comes from