MMCSS, DWM и профиль Games в Windows 11 25H2
На этой странице
Короткий ответ
Заголовок раздела «Короткий ответ»MMCSS даёт time-sensitive multimedia tasks приоритетный доступ к CPU, не превращая их в абсолютный realtime. Профили Window Manager и Games влияют на классификацию только тех потоков, которые зарегистрированы под соответствующим именем задачи. Удаление штатных значений не восстанавливает профиль: оно включает более низкие fallback-значения из кода.
Что проверяли
Заголовок раздела «Что проверяли»Проверяли, как MMCSS читает профили Window Manager и Games, какие значения действуют при отсутствии записей и что меняет изменение приоритетов и lazy mode.
Область исследования
Заголовок раздела «Область исследования»Windows 11 25H2 build 26200.9168, mmcss.sys и boot-time наблюдение. Конкретный workload, драйвер GPU и физическая задержка не измерялись.
Методика
Заголовок раздела «Методика»Разбор mmcss.sys, наблюдение чтения профилей в bootlog и проверка нормализации и fallback-значений.
Канонический путь
Заголовок раздела «Канонический путь»Корневой путь:
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Multimedia\SystemProfile
Профиль DWM:
...\Tasks\Window Manager
Профиль игр:
...\Tasks\Games
| Value | Type | Window Manager в 25H2 |
Games в 25H2 |
Подтверждённая роль |
|---|---|---|---|---|
Scheduling Category |
REG_SZ |
Medium |
Medium |
Категория scheduler policy |
Priority |
REG_DWORD |
5 |
2 |
Приоритет задачи в диапазоне 1..8 |
Priority When Yielded |
REG_DWORD |
отсутствует, fallback 16 |
отсутствует, fallback 16 |
Потолок после уступки CPU |
Значения корневого SystemProfile:
| Value | Type | Состояние в 25H2 | Подтверждённая роль |
|---|---|---|---|
LazyModeTimeout |
REG_DWORD |
отсутствует, fallback 1000000 |
Таймер lazy mode в 100-нс единицах |
NoLazyMode |
REG_DWORD |
отсутствует, fallback 0 |
Отключение idle detector |
Профиль DWM и Games
Заголовок раздела «Профиль DWM и Games»mmcss.sys читает Scheduling Category, Priority и Priority When Yielded при инициализации профилей. Документированные активные полосы категорий: Low — 8..15, Medium — 16..22, High — 23..26. Для High значение Priority в активной полосе всегда трактуется как 2, поэтому запись 6 или 8 не поднимает High-профиль так, как подсказывает число.
В чистом состоянии исследованной сборки профиль Games имел Medium/2, а Window Manager — Medium/5. Priority When Yielded отсутствовал у обоих, поэтому применялся fallback 16. Комбинации High/6/13 и High/8/13 являются изменёнными конфигурациями, а не Windows defaults. Значение 13 усиливает демоцию после уступки CPU относительно fallback 16.
Полезность: профиль описывает scheduler policy для классифицированных потоков. Само повышение категории не доказывает улучшение конечного workload; оно может увеличить конкуренцию за CPU.
LazyModeTimeout и NoLazyMode
Заголовок раздела «LazyModeTimeout и NoLazyMode»LazyModeTimeout измеряется в 100-нс единицах. Fallback 1000000 равен 100 ms; 10000 равен 1 ms. Ноль заменяется fallback, верхнего clamp в проверенном reader нет. NoLazyMode является булевым: 0 оставляет idle detector включённым, любое ненулевое значение отключает его. При активном NoLazyMode путь LazyModeTimeout практически недостижим, поэтому эти настройки нельзя оценивать независимо.
Полезность: уменьшение timeout ускоряет период lazy scheduler, а не повышает приоритет активных потоков. NoLazyMode=1 убирает idle-demotion path, но не отменяет Priority When Yielded и удерживает MMCSS в полном цикле, увеличивая фоновую активность.
Timing и доказательства
Заголовок раздела «Timing и доказательства»mmcss.sys читает root и task profiles при старте службы/драйвера. В bootlog наблюдались обращения к NoLazyMode и профилям; для отсутствующих значений фиксировался NAME NOT FOUND, после чего применялся кодовый default. Это нормальный способ работы Registry-конфигурации.
Что подтверждено
Заголовок раздела «Что подтверждено»- Значения
Medium/5дляWindow ManagerиMedium/2дляGamesв чистой конфигурации 25H2. - Fallback
Low/1при отсутствииScheduling CategoryиPriority, а также16дляPriority When Yielded. - Границы категорий и трактовка
PriorityдляHigh. - Единицы и fallback
LazyModeTimeout, булево поведениеNoLazyMode.
Что не подтверждено
Заголовок раздела «Что не подтверждено»- Влияние профилей на FPS, frametime и физическую задержку.
- Польза изменения приоритетов для конкретных игр и приложений.
Практический вывод
Заголовок раздела «Практический вывод»Для обычной системы сохраняйте штатные Medium/5 и Medium/2. Для точного возврата нельзя удалять Scheduling Category и Priority: fallback при отсутствии равен Low/1, то есть профиль станет слабее штатного. Возврат выполняется явной записью штатной пары и удалением необязательного Priority When Yielded.
Источники и ограничения
Заголовок раздела «Источники и ограничения»- Multimedia Class Scheduler Service, Microsoft Learn, проверено 2026-09-01.
- MMCSS task profiles, описание task categories и SystemProfile.
Результат относится к Windows 11 25H2 build 26200.9168; конкретный workload, GPU driver и физическая задержка в этой статье не измерялись.
Как повторить динамическую часть наблюдений — см. Как проверить самостоятельно.
Исследование и использованные инструменты принадлежат разработчику BoosterX, поэтому у разработчика есть прямой интерес к результатам. Методика и границы применимости описаны выше, а выводы можно проверить по открытым данным и перечисленным публичным источникам.
Публичные источники проверены: 2026-09-02.
История изменений
Заголовок раздела «История изменений»- 2026-09-20: добавлен дисклеймер о конфликте интересов и ссылка на самостоятельную проверку динамических наблюдений в методике.
- 2026-09-02: первая публикация; подтверждены чтение профилей, defaults и fallback-значения, добавлены границы практического эффекта.
