GUC SCHEDULING POLICIES KLVS(9)
π GuC SCHEDULING POLICIES KLVs π
okay bestie so this is a page straight out of the Kernel API Manual (section 9, we're fancy like that β¨) and it's all about the scheduling policy KLVs for the GuC. tiny page, but honestly? iconic. let's get into it π«Ά
πΈ NAME πΈ
GuC Scheduling Policies KLVs β literally what it says on the tin, bestie π
β¨ DESCRIPTION β¨
these are the GuC KLV_ keys you can use with UPDATE_SCHEDULING_POLICIES_KLV. that's it. that's the whole vibe. but wait, there's one key and it's kind of a big deal π
π THE KLV KEYS π
GUC_KLV_SCHEDULING_POLICIES_RENDER_COMPUTE_YIELD:0x1001β okay so here's the tea π΅: some platforms will not let RCS and CCS workloads from different address spaces run at the same time. and by default, the GuC is out here prioritizing RCS submissions over CCS ones, which means CCS workloads can get significantly (or, like, completely π) starved of execution time. not cute.
so this KLV lets the driver hand over a quantum (in ms) and a ratio (a percentage value between 0 and 100), and the GuC will prioritize the CCS for that percentage of each quantum.
lowkey obsessed with the example: if you specify 100ms and 30%, the GuC prioritizes the CCS for 30ms of every 100ms. slay π
β οΈ but ngl, don't get it twisted β this does not necessarily mean the RCS and CCS engines will only be active for their percentage of the quantum. the restriction only kicks in if both classes are fully busy with non-compatible address spaces. iykyk. like, if one engine is idle or running the same address space, a pending job on the other engine will still be submitted to the HW no matter what the ratio is. periodt π
π SEE ALSO π
- Kernel file
./drivers/gpu/drm/xe/abi/guc_klvs_abi.h GuC KLV(9)GuC Global Config KLVs(9)GuC Self Config KLVs(9)GuC Opt In Feature KLVs(9)GuC VGT Policy KLVs(9)GuC VF Configuration KLVs(9)GuC Reserved KLVs(9)
and that's the whole page, bestie π¦ shoutout to ./drivers/gpu/drm/xe/abi for holding it down, and mark your calendars for October 2026 because that's the version date π mwah, go read the other KLV pages, ily, bye πβ¨π
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms