DPC un Kernel Executive workers operētājsistēmā Windows 11 25H2
Šajā lapā
Īsā atbilde
Section titled “Īsā atbilde”Grupa DpcQueueDepth, worker limits un watchdog-parametru bieži tiek uztverta kā universālu latency tweaks kopums. Patiesībā tie ir kodola iekšējie limiti un aizsardzības mehānismi. To efekts izpaužas tikai pie konkrētas DPC rindas, procesoru skaita, draivera tipa vai worker kļūdas.
Kas tika pārbaudīts
Section titled “Kas tika pārbaudīts”Tika pārbaudīts, kādus DPC, worker threads un watchdog limitus kodols nolasa, kā tiek normalizētas vērtības un kur šie mehānismi patiešām tiek piemēroti.
Pētījuma joma
Section titled “Pētījuma joma”Windows 11 25H2 build 26200.9168, atzari Session Manager\Kernel un Session Manager\Executive. Ar aparatūru saistītas funkcijas un konkrēti draiveri mērījumos netika iekļauti.
Metodika
Section titled “Metodika”Statiskā analīze ntoskrnl.exe: readers un patērētāju meklēšana, vērtību diapazonu un normalizācijas pārbaude; salīdzināšana ar Microsoft publisko dokumentāciju.
Kanoniskais ceļš un vērtības
Section titled “Kanoniskais ceļš un vērtības”DPC un watchdog ceļš:
HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Kernel
| Value | Type | Default/normalization | Что управляет |
|---|---|---|---|
DpcQueueDepth |
REG_DWORD |
4 |
DPC queue dziļums |
MinimumDpcRate |
REG_DWORD |
3 |
minimālā DPC apstrādes frekvence |
IdealDpcRate |
REG_DWORD |
20 |
mērķa DPC rate |
AdjustDpcThreshold |
REG_DWORD |
20 |
DPC policy adaptācijas slieksnis |
ThreadDpcEnable |
REG_DWORD |
1 |
thread-DPC processing |
DpcWatchdogPeriod |
REG_DWORD |
120000 |
DPC watchdog periods |
DpcCumulativeSoftTimeout |
REG_DWORD |
120000 pētītajā buildā |
uzkrātais soft budget |
PassiveWatchdogTimeout |
REG_DWORD |
300 sekundes |
passive-level watchdog pie KD |
ForceIdleGracePeriod |
REG_DWORD |
5 sekundes |
force-idle grace period |
PerfIsoEnabled |
REG_DWORD |
0 |
performance isolation |
CacheIsoBitmap |
REG_DWORD |
0 |
Intel CAT L3 mask |
SchedulerAssistThreadFlagOverride |
REG_DWORD |
0 |
scheduler assist override |
VpThreadSystemWorkPriority |
REG_DWORD |
30, diapazons 1..31 |
virtual processor work priority |
AlwaysTrackIoBoosting |
REG_DWORD |
0 |
diagnostikas I/O boost tracking |
Kernel Executive workers ceļš:
HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Executive
| Value | Type | Default/normalization | Что управляет |
|---|---|---|---|
AdditionalCriticalWorkerThreads |
REG_DWORD |
0, clamp 0..100 |
papildu critical workers |
AdditionalDelayedWorkerThreads |
REG_DWORD |
0, clamp 0..100 |
delayed workers |
MaximumKernelWorkerThreads |
REG_DWORD |
4096, 32..16384 |
kernel workers augšējā robeža |
ForceEnableMutantAutoboost |
REG_DWORD |
0 |
mutant autoboost |
WorkerThreadTimeoutInSeconds |
REG_DWORD |
600, 60..3600 |
worker timeout |
Session Manager\Kernel un Session Manager\Executive ir dažādi konfigurācijas atzari. Katrai vērtībai svarīgs ir ceļš, ko kodola reader atver šajā buildā.
DPC queue un rates
Section titled “DPC queue un rates”Kodols izmanto DpcQueueDepth, MinimumDpcRate, IdealDpcRate un AdjustDpcThreshold rindas kontrolei un DPC processing adaptācijai. Pārbaudītie defaults 4/3/20/20 jau sakrīt ar Windows 11 25H2 standarta stāvokli; šo skaitļu atkārtota ierakstīšana neko nemaina.
Lietderība: šie parametri var būt noderīgi konkrēta DPC backlog analīzē, taču bez ETW/WPR trases izmaiņas akli nediagnosticē cēloni. Liela rinda var atlikt apstrādi un palielināt aiztures asti.
Thread DPC un worker limits
Section titled “Thread DPC un worker limits”ThreadDpcEnable=1 ieslēdz threaded-DPC infrastruktūru, 0 atgriež darbu parastajā DIRQL path un var pagarināt interrupt-off logus. MaximumKernelWorkerThreads ierobežo kopējo kernel workers pool. AdditionalCriticalWorkerThreads un AdditionalDelayedWorkerThreads tiek pievienoti bāzes poolem: klienta Windows tas ir attiecīgi 5 critical un 7 delayed workers pirms override piemērošanas.
Vairāk pavedienu nenozīmē mazāku latency: papildu workers patērē stack, scheduler time un cache resources, un rindu var ierobežot cits komponents. AdditionalDelayedWorkerThreads=32 patiešām pievieno delayed workers, taču izmērīta universāla ieguvuma nav.
Watchdog un timeout
Section titled “Watchdog un timeout”DpcCumulativeSoftTimeout ierobežo uzkrāto DPC laiku. DpcWatchdogPeriod=0 ir pieļaujams un izslēdz šo watchdog; jebkura nulles vērtība zem 2000 kļūst par 2000 ms. PassiveWatchdogTimeout tiek izmantots tikai ar ieslēgtu kernel debugger, tāpēc parastā sistēmā šis timer nav aktīvs pat pie standarta 300 sekundēm. WorkerThreadTimeoutInSeconds ierobežo worker operation iekāršanos.
DpcCumulativeSoftTimeout ir apakšējā robeža 2000 ms un nevar pārsniegt DpcWatchdogPeriod. Lai iegūtu vērtību 240000, arī watchdog period jābūt 240000. WorkerThreadTimeoutInSeconds tiek normalizēts diapazonā 60..3600 sekundes; ieraksts 0 neizslēdz timeout, bet noved pie minimālās vērtības.
Aizsardzības timeout izslēgšana noņem diagnostiku, bet neizlabo bloķēšanas cēloni. Production sistēmā watchdog ir daļa no bojātu draiveru noteikšanas mehānisma.
Kernel Executive policy
Section titled “Kernel Executive policy”ForceEnableMutantAutoboost atrodas atzarā Executive, bet ForceIdleGracePeriod, PerfIsoEnabled, CacheIsoBitmap, SchedulerAssistThreadFlagOverride, VpThreadSystemWorkPriority un AlwaysTrackIoBoosting tiek nolasīti no atzara Kernel. Šī atšķirība ir kritiska: tāda paša nosaukuma ieraksts blakus apakšatslēgā netiek piemērots.
CacheIsoBitmap tiek izmantots tikai ar Intel Resource Director/CAT atbalstu; bez CAT vērtība nerada izolāciju. SchedulerAssistThreadFlagOverride=0 un 1 atstāj automātisko ieslēgšanu, 2 piespiedu kārtā izslēdz atzaru. VpThreadSystemWorkPriority pieļauj 1..31, citādi tiek atiestatīts uz 1; default 30, bet 31 ir tikai augšējā robeža. AlwaysTrackIoBoosting=1 ieslēdz diagnostikas allocation un stack-capture uz boost paths, nevis notur I/O priority paaugstinātu.
Lietderība: bez apstiprināta consumer efekts parasti nav vai ir pārāk mazs praktiskam risinājumam. Šādas vērtības ir noderīgas kā atsevišķas kernel diagnostikas priekšmets, nevis kā vispārīgs optimizācijas kopums.
Rezultāti
Section titled “Rezultāti”Pārbaudītie defaults 4/3/20/20 sakrīt ar Windows 11 25H2 standarta stāvokli. Papildu workers pēc noklusējuma ir vienādi ar nulli, kernel workers augšējā robeža — 4096 ar diapazonu 32..16384. Watchdog-parametri tiek normalizēti: vērtība zem 2000 ms kļūst par 2000, bet DpcCumulativeSoftTimeout nepārsniedz watchdog periodu. Atzari Kernel un Executive nav savstarpēji aizstājami.
Kas apstiprināts
Section titled “Kas apstiprināts”- Parametru readers un patērētāji
ntoskrnl.exepētītajā buildā. - Noklusējuma vērtības un normalizācijas robežas, tostarp atkarības starp watchdog-parametriem.
- Atzaru
KernelunExecutivenošķiršana: tāda paša nosaukuma ieraksts blakus apakšatslēgā netiek piemērots.
Kas nav apstiprināts
Section titled “Kas nav apstiprināts”- Parametru izmaiņu ietekme uz FPS, aizturi vai atsaucību.
- Limitu maiņas lietderība bez apstiprinātas DPC rindas vai worker problēmas.
Praktiskais secinājums
Section titled “Praktiskais secinājums”Nemainiet šos parametrus akli: bez ETW/WPR trases backlog cēloni noteikt nevar. Darba sistēmā saglabājiet watchdog ieslēgtu, bet parametrus izmantojiet diagnostikai, nevis kā optimizācijas kopumu.
Stāvokļa atjaunošana
Section titled “Stāvokļa atjaunošana”Atgrieziet standarta vērtības vai izdzēsiet neobligātos ierakstus. Kodola parametri tiek piemēroti nākamajā Windows palaišanā.
Avoti un ierobežojumi
Section titled “Avoti un ierobežojumi”Readers un consumers pārbaudīti ntoskrnl.exe Windows 11 25H2 build 26200.9168. Offsets vai pseidokods netiek publicēti. Galalietotāju metrikas šajā sērijā netika iekļautas.
- DPCs and threads, Microsoft Learn, pārbaudīts 2026-09-01.
- Bug checks 0x133 DPC_WATCHDOG_VIOLATION, Microsoft Learn, pārbaudīts 2026-09-01.
Kā atkārtot novērojumu dinamisko daļu — skatiet Kā pārbaudīt patstāvīgi.
Pētījums un izmantotie rīki pieder BoosterX izstrādātājam, tāpēc izstrādātājam ir tieša interese par rezultātiem. Metodika un piemērojamības robežas ir aprakstītas iepriekš, un secinājumus var pārbaudīt pēc atklātajiem datiem un uzskaitītajiem publiskajiem avotiem.
Publiskie avoti pārbaudīti: 2026-09-02.
Izmaiņu vēsture
Section titled “Izmaiņu vēsture”- 2026-09-20: sadaļa «Rezultāti» pārvietota uz obligāto vietu pirms «Stāvokļa atjaunošana»; pievienots interešu konflikta atruna un saite uz dinamisku novērojumu patstāvīgu pārbaudi metodikā.
- 2026-09-02: pirmā publikācija; apstiprināti readers, defaults un clamps, pievienotas praktiskās lietderības robežas.
