Було 140. Тепер 70, і так лишається, доки ти не перезапустиш гру — або доки не зупинишся, даси машині охолонути й повернешся, а все вже гаразд.
Це інша проблема, ніж фриз, і плутанина між ними коштує людям тижнів. Фриз — це один запізнілий кадр у загалом здоровому прогоні; якщо в тебе саме це, тобі потрібна сторінка чому ігри фризять на Windows 11. А просідання — це тривала зміна того, скільки роботи машина встигає за секунду, і майже все, що нижче, саме себе оголошує, якщо дивитися на потрібні числа під час події.
Спершу чесне речення. Ніщо на цій сторінці не робить гру швидшою. Вона показує три сліди, які Windows і так зберігає, — перезапуски драйвера дисплея, прошивку, що тримає частоту процесора внизу, і стелі процесора в твоєму активному плані живлення, — які сканування фризів у w0a читає за тебе, і як прочитати ці самі три сліди самому за кілька хвилин.
Три питання, які ділять усе поле
Перш ніж чіпати налаштування, дай на них відповідь: кожне відкидає приблизно половину списку.
- Чи минає воно саме? Просідання, яке зникає після хвилини стояння на місці, вказує на нагрів або фонове завдання. Те, що тримається до перезапуску гри, вказує на власний стан гри або подію драйвера.
- Це в кожній грі чи в одній? Кожна гра вказує на машину. Одна гра вказує на налаштування цієї гри, її оновлення або її сервери.
- Воно прив'язане до часу в сеансі чи до місця на карті? Час означає нагрів і живлення. Місце означає, що сцена стала важчою або щось вантажиться.
Далі дивись на частоти й температури під час події, а не після неї. Просідання, невидиме заднім числом, наживо очевидне: або частота впала, або ні.
Нагрів і стеля живлення
Причина, яку варто виключити, коли «просідає через двадцять хвилин».
Чипи від нагріву не ламаються — вони сповільнюються. Коли досягнуто температурного ліміту або ліміту потужності, частоту опускають і тримають унизу, доки триває умова. Це рішення ухвалює сама прошивка — власний захист плати чи процесора, а не Windows, — тож у диспетчері завдань цього ніщо не пояснює. З боку графіки драйвер назве причину, якщо спитати його під навантаженням: тепловий захист, ліміт потужності, виставлений нижче за штатний, програма, яка просить драйвер сповільнитися, або нещільно вставлений роз'єм живлення PCIe.
Як перевірити: воно корелює з тривалістю сеансу й температурою в кімнаті, а частота під час просідання помітно нижча, ніж на початку.
Що робити: кріплення кулера, пил, продув корпусу. Далі перевір, чи не був ліміт потужності знижений навмисно — у прошивці, у фірмовій утиліті або в збереженому профілі відеокарти.
Машина змінила стан живлення
Найочевидніше це на ноутбуках: від'єднай зарядку — і платформа переходить до іншого набору лімітів. На настільних ПК теж буває: змінений план живлення, паркування ядер чи стеля стану процесора, лишені старим скриптом налаштування, план, який відкотився після оновлення Windows.
Як перевірити: просідання починається з події — від'єднання зарядки, кришка, вихід зі сну, перезапуск — а не з температури.
Що робити: поверни власні типові значення плану, а не вигадуй нові. На сторінці Fix є картки для плану живлення і для налаштувань живлення процесора, і кожна безумовно записує стандартне значення Windows, хоч би яка програма його змінила.
Перезапуск драйвера
Екран на секунду-дві чорніє, повертається — і все повільніше, або гра закрилася. Windows записав, що драйвер дисплея завис і був перезапущений.
Як перевірити: це лишає чіткий слід, і сканування фризів повідомляє, скільки таких перезапусків сталося за останню добу. Слід зазвичай веде до розгону або до охолодження, а не до програм.
Що робити: якщо в тебе застосований зсув частоти пам'яті або ядра, зменш його вдвічі й перевір один матч; постав у нуль і перевір ще раз. Відновлення після збою GPU охоплює решту, зокрема й повернення стандартного значення Windows, якщо якась стара програма підняла тайм-аут замість того, щоб виправити причину.
Три сліди, які Windows і так зберігає
1. Перезапуск драйвера дисплея (подія 4101)
Коли драйвер дисплея перестає відповідати й перезапускається, Windows записує подію 4101 у журнал подій System. Сканування фризів рахує такі події за останні 24 години й повідомляє їх як свою єдину критичну знахідку; понад десять воно пише «10+», а не вдає, що знає точне число. Якщо сам журнал прочитати не вдається, сканування каже, що перевірка не змогла виконатися, а не оголошує машину чистою.
Щоб подивитися самому, у PowerShell:
Get-WinEvent -LogName System -FilterXPath "*[System[Provider[@Name='Display'] and (EventID=4101) and TimeCreated[timediff(@SystemTime) <= 86400000]]]" -MaxEvents 10
Якщо таких подій немає, PowerShell відповідає помилкою, яка каже, що жодна подія не відповідає критеріям вибору: це і є відповідь «жодної за останню добу». Якщо він каже, що не може прочитати журнал, запусти PowerShell від імені адміністратора й спробуй ще раз.
Шлях назад — той, що в розділі вище: зменш або прибери розгін, подивися на охолодження, і Відновлення після збою GPU, якщо стара програма підняла тайм-аут драйвера. w0a сам цей тайм-аут не підніматиме: довший сторожовий таймер лише подовжує кожне зависання, а вимкнення відновлення прибирає його зовсім.
2. Прошивка тримала частоту внизу (подія 37)
Подія 37 від Microsoft-Windows-Kernel-Processor-Power — це прошивка, яка фіксує, що знизила частоту процесора й тримала її там цілими секундами поспіль; сам текст події каже, як довго. Це важливо, бо показник температури показує лише момент, коли ти дивишся: машина, яка тротлила годину тому й відтоді охолола, виглядає цілком здоровою, і ця подія — єдиний слід тієї години, що на ній лишився.
Сканування рахує такі події за останні 24 години, лише при живленні від мережі — від батареї та сама подія означає, що платформа виконує свою роботу, — і попереджає від трьох. Одна-дві звичні в перші секунди після завантаження, поки плата встановлює свої ліміти потужності.
Get-WinEvent -LogName System -FilterXPath "*[System[Provider[@Name='Microsoft-Windows-Kernel-Processor-Power'] and (EventID=37) and TimeCreated[timediff(@SystemTime) <= 86400000]]]" -MaxEvents 20
Залиш ім'я постачальника у фільтрі. Інші компоненти використовують номер 37 для зовсім не пов'язаних подій, і лічба без постачальника нічого не означає.
Якщо знаходиш цілу низку таких подій, причина — нагрів або ліміт потужності, як у розділі про нагрів вище; Температура процесора і відеокарти в іграх пояснює, що читати, а на ноутбуці Ігровий ноутбук працює повільніше, ніж мав би розповідає про зарядку й режими живлення.
3. Активний план обмежує процесор
Назва плану — не те, що працює. План високої продуктивності з максимальним станом процесора 80% — це обмежена машина з правильною етикеткою. Сканування читає чотири налаштування з розділу процесора того плану, який зараз активний, при живленні від мережі:
| Налаштування (ім'я, яке використовує powercfg) | Що сканування вважає обмеженням | Що це означає |
|---|---|---|
PERFBOOSTMODE | 0 | Турбо вимкнено: процесор ніколи не піднімається вище своєї номінальної частоти. |
PROCTHROTTLEMAX | від 1 до 99 | Стеля частоти, у відсотках. |
IDLEDISABLE | 1 | Стани простою вимкнено. w0a рахує це обмеженням, а не налаштуванням продуктивності, з міркуванням, що без станів простою не лишається теплового запасу, у який міг би піти буст. Це міркування з того, як працює буст, а не вимірювання. |
CPMINCORES | від 1 до 99 | Паркування ядер. Не повідомляється на гібридних процесорах, де це один із важелів, якими Windows розміщує роботу, і на процесорах V-Cache із двома чиплетами, де саме так драйвер тримає гру на чиплеті з кешем. Див. Ryzen X3D, Game Bar і паркування ядер. |
Сканування читає ці налаштування через інтерфейс живлення Windows, а не через powercfg, бо на стандартній інсталяції два з них приховані й powercfg для них узагалі нічого не виводить. Якщо не вдається прочитати жодного з чотирьох, сканування каже, що не змогло виміряти, а не що план чистий.
Щоб подивитися самому, у командному рядку або в PowerShell:
powercfg /getactivescheme
powercfg /query SCHEME_CURRENT SUB_PROCESSOR PROCTHROTTLEMAX
powercfg /query SCHEME_CURRENT SUB_PROCESSOR IDLEDISABLE
powercfg /query SCHEME_CURRENT SUB_PROCESSOR PERFBOOSTMODE
powercfg /query SCHEME_CURRENT SUB_PROCESSOR CPMINCORES
Як читати відповіді:
- Значення стоїть у двох останніх рядках відповіді, у шістнадцятковому вигляді: перший — значення при живленні від мережі (AC), другий — від батареї (DC).
0x00000064— це 100,0x00000050— 80,0x00000001— 1,0x00000000— 0. - Назви налаштувань навколо чисел виводяться мовою твого Windows; псевдоніми, які ти вводиш (
SUB_PROCESSOR,PROCTHROTTLEMAX), однакові в усіх мовах. - Якщо вся відповідь — один рядок із GUID плану і нічого під ним, команда питає про налаштування, яке Windows на цій інсталяції приховує. Це нічого не каже про його значення; прочитати його можна скануванням фризів.
Шлях назад, налаштування за налаштуванням:
PROCTHROTTLEMAXабоCPMINCORES, записані у власні плани Windows: картка Налаштування живлення процесора повертає мінімальний і максимальний стан процесора та паркування ядер до стандартного значення, яке оголошує кожен план, а потім знову застосовує активний план, бо Windows читає значення плану, коли його активують.- Стеля, яка живе в плані, створеному якоюсь програмою: картка План живлення і батарея спершу перемикає на Збалансований, щоб той план перестав бути тим, що працює, і видаляє власні плани w0a.
PERFBOOSTMODEабоIDLEDISABLE: сьогодні жодна картка відновлення не скидає ці два за назвою. Шлях назад — сам план, черезpowercfg, до значення, яке план оголошує стандартним.
Це сталося одразу після оновлення
Тут ховаються дві дуже різні речі.
Оновлення гри або драйвера знецінює кеш шейдерів, і гра компілює їх заново, поки ти граєш. Частота кадрів якийсь час справді нижча, а потім уже ні. Воно згасає — це і є підпис. Фризи компіляції шейдерів пояснюють, чому так і чому всередині цього вікна не варто знімати бенчмарк.
Регресія в гілці драйвера не згасає. Виробники визнають їх письмово: у нотатках до випусків трапляються записи «знижена продуктивність у цій грі на гілках, новіших за X». Не відкочуйся рефлекторно: доведи оновлення до кінця, виміряй на власній машині й розглядай іншу версію лише тоді, коли можеш задокументувати регресію сам.
Запустилося щось іще
Заплановане сканування, процес оновлення, який щось розпаковує, архів, що розгортається, експорт відео. Воно стає в чергу до тих самих ядер, що й гра, і, на відміну від ривка, не зникає між кадрами — часто відтворюється в певний час доби. Загальне завантаження процесора — неправильне число: одне завантажене ядро на восьмиядерній машині дає скромний загальний відсоток. Перечекай або перенеси цю роботу.
Частота кадрів насправді не просіла
Обмеження. Якщо число, на якому ти зупиняєшся, — це рівно твоя частота оновлення, обмеження всередині гри або обмеження з боку драйвера, то ніде немає вузького місця: ти вперся в стелю, яку сам і попросив.
Динамічна роздільна здатність. Гра, яка сама масштабує роздільну здатність рендеру, щоб утримати цільову частоту кадрів, показує стабільний лічильник, а рухається натомість якість картинки.
Це одна гра, і лічильник виглядає нормально
Тоді просідання може бути взагалі не на твоїй машині. Онлайн-матч псується одночасно для всіх на сервері, а мережеві негаразди — це не проблема частоти кадрів: пакети, що приходять із запізненням, змушують світ фризити навколо тебе, поки твоя машина малює на повній швидкості. Якщо часи кадрів під час події здорові, перестань дивитися на ПК.
Якщо ж частота кадрів просто нижча, ніж мала б бути, а відеокарта простоює, це окремий діагноз зі своїм списком: відеокарта не на 100% проходить його за порядком.
Прогін, який дає відповідь
- Зніми запис звичайного сеансу, поки все гаразд, і збережи його. Як читати результат бенчмарку розповідає, як це зробити і чому середнє — найменш корисне число там.
- Коли просідання станеться, запиши частоти й температури під час нього, а не після.
- Зміни одну річ, потім відтвори ту саму сцену й ту саму тривалість сеансу.
- Суди за власним розкидом від прогону до прогону. Якщо три прогони без змін розходяться більше, ніж різниця, якій ти зрадів, ти знайшов шум.
Чого не робити з просіданням
Не піднімай тайм-аут відновлення драйвера відеокарти, щоб сховати його перезапуск: це перетворює коротке відновлення на довше зависання й прибирає докази. Не вимикай ядра чи одночасну багатопотоковість на підставі посібника без джерел — ти обміняєш відому багатоядерну потужність на приріст, методики якого ніхто не публікував. І не застосовуй значення керування пам'яттю в ядрі як виправлення продуктивності: w0a відмовляється їх записувати, і жодне вимірювання їх не підтверджує.
Те саме стосується налаштувань живлення: жодне з чотирьох вище не є перемикачем «продуктивності», який треба перекинути в інший бік. З вимкненим турбо процесор лишається на номінальній частоті, а власне сканування w0a так само позначає вимкнені стани простою як обмеження, хоч би де їх знайшло.
Пов'язане
- Чому ігри фризять на Windows 11
- Відеокарта не на 100%
- Фризи компіляції шейдерів
- Відновлення після збою GPU
- Що шукає сканування фризів
- Температура процесора і відеокарти в іграх
Граєш у CS2? Які параметри запуску ще щось роблять і де в меню відео насправді лежать кадри: Низький FPS і фризи в CS2: виміряний контрольний список
Ця сторінка допомогла?
Чого бракувало або що не спрацювало? Ми читаємо кожну таку відповідь.
Якщо ця сторінка не розв'язала проблему, напиши нам — скажи, яку статтю ти читав, і ми виправимо статтю.