Нова стаття: Від кліку до пострілу - апаратне тестування лага в іграх
Ігрові можливості комп'ютерів та окремих компонентів системи споконвіку прийнято вимірювати у кадрах за секунду, а золотим стандартом тестування є тривалі бенчмарки, які дозволяють порівняти різні пристрої зі сталої швидкодії. Проте в останні роки на продуктивність GPU почали дивитись і під іншим кутом. В оглядах відеокарт з'явилися графіки тривалості рендерингу окремих кадрів, на все зростання постало питання стабільності FPS, а середні показники фреймрейту тепер прийнято супроводжувати мінімальними значеннями, відфільтрованими на межі 99-го відсотка часу кадру. Удосконалення тестових методик спрямовані на пошук затримок, що розчиняються в усереднених показниках кадрової частоти, але часом цілком помітних неозброєним оком користувача.
Проте будь-які програмні вимірювальні інструменти, що працюють усередині тестової системи, дають лише непряму оцінку прихованої змінної, яка має визначальне значення для комфортної гри, – часу затримки між натисканням на кнопку клавіатури або мишки та зміною картинки на моніторі. Доводиться керуватися простим правилом, яке свідчить, що чим вище FPS у грі і чим він стабільніший, тим меншим буде час реакції на введення. Тим більше частину проблеми вже вирішили швидкі монітори з частотою оновлення 120, 144 або 240 Гц, не кажучи вже про майбутні 360-герцеві екрани.
Однак у геймерів, особливо гравців у змагальні розраховані на багато користувачів ігри, які шукають у залізі найменшу перевагу над суперниками і готові збирати на замовлення розігнані комп'ютери заради десятків зайвих FPS в CS:GO, досі не було можливості оцінити затримку введення безпосередньо. Адже такі точні та трудомісткі методи, як зйомка екрана високошвидкісною камерою, доступні лише у лабораторних умовах.
Но теперь все изменится — встречайте LDAT (Latency Display Analysis Tool), универсальное аппаратное средство для измерения игровой латентности. Читатели, знакомые с такими аббревиатурами, как FCAT, могут догадаться, что это продукт NVIDIA. Так и есть, компания предложила устройство избранным IT-изданиям, включая редакцию 3DNews. Давайте посмотрим, сможет ли новая измерительная методика пролить свет на такое загадочное явление, как задержка ввода, и помочь геймерам с выбором комплектующих для киберспортивных соревнований.
Принцип роботи LDAT дуже простий. Ядром системи є високошвидкісний світлочутливий датчик із мікроконтролером, який монтується у потрібній точці екрану. До нього підключена модифікована миша, а керуюче програмне забезпечення за інтерфейсом USB засікає час, що розділяє натискання на клавішу і локальний стрибок яскравості зображення. Таким чином, якщо помістити датчик поверх ствола зброї в якомусь шутері, ми отримаємо точне значення затримки, яка потрібна монітору, комп'ютеру та всьому програмному стеку (включаючи драйвери пристроїв, гру та операційну систему), щоб відреагувати на дії користувача.
Принадність такого підходу в тому, що робота LDAT не залежить від того, яке залізо і які програми встановлені на комп'ютері. Той факт, що NVIDIA перейнялася виробництвом чергового вимірювального інструменту, який до того ж доступний лише обмеженому колу IT-журналістів, натякає на те, що компанія прагне підкреслити переваги власних продуктів порівняно з конкурентами (так вже сталося з FCAT кілька років тому). Справді, на ринку ось-ось з'являться 360-Гц монітори з підтримкою G-SYNC, а розробники ігор почнуть застосовувати бібліотеки NVIDIA Reflex, спрямовані на скорочення латентності в іграх під Direct3D 12. Проте ми впевнені, що сам LDAT не дає ніяких потурань. «зеленим» відеокартам і не спотворює результати «червоних», адже ніякого доступу до конфігурації піддослідного заліза пристрій не має, коли він підключений USB-кабелем до іншої машини, на якій запущено керуюче ПЗ.
Чи потрібно говорити, що у своїй сфері застосування LDAT відкриває просто величезні перспективи. Порівняти між собою ігрові монітори (і навіть телевізори) з тією чи іншою частотою оновлення та матрицями різного типу, перевірити, як на затримку впливають технології адаптивної синхронізації G-SYNC та FreeSync, масштабування кадру силами відеокарти чи монітора – все це стало можливим. Але для початку ми вирішили сфокусуватися на більш вузькому завданні та перевірити, як працюють на відеокартах різних цінових категорій кілька змагальних ігор, ув'язнених під високий FPS та низький час реакції. А якщо сформулювати завдання точніше, нас цікавлять два головні питання: чи є надлишковий фреймрейт гарантією низьких затримок і в яких умовах нарощувати його (а отже, купувати потужнішу відеокарту) вже немає сенсу. Зокрема, чи корисно перевищувати кадрову частоту, яка відповідає частоті оновлення екрана, якщо ви щасливий володар швидкісного 240-Гц монітора.
Для тестування ми вибрали чотири популярні розраховані на багато користувачів проекти — CS:GO, DOTA 2, Overwatch і Valorant, які є досить невибагливими, щоб сучасні GPU, включаючи бюджетні моделі, могли розвивати продуктивність на рівні сотень FPS. Разом з тим перераховані ігри дозволяють без особливих зусиль організувати середовище для надійного виміру часу реакції, коли найважливіше постійні умови: одна і та ж позиція персонажа, одна зброя в кожному тесті і т. д. З цієї причини нам довелося до певного часу відкласти бенчмарки в таких іграх, як PlayerUnknown's Battlegrounds та Fortnite. У PUBG просто немає можливості ізолюватися від інших гравців навіть на тестовому полігоні, а Fortnite в однокористувальному режимі Battle Lab все одно не захищена від випадковостей лута і, відповідно, унеможливлює тестування кількох відеокарт з однією і тією ж зброєю в розумні терміни.
Крім того, перевага обраних ігор у тому, що вони працюють під API Direct3D 11, який, на відміну від Direct3D 12, дозволяє драйверу відеокарти задавати обмеження на чергу рендерингу кадрів, які центральний процесор може підготувати для рендерингу на GPU у програмному графічному конвеєрі.
У стандартних умовах, особливо тоді, коли пляшковим шийкою системи є обчислювальні ресурси відеокарти, черга кадрів збільшується до трьох за замовчуванням або, якщо вимагає додаток, ще більше. Таким чином Direct3D забезпечує безперервне завантаження графічного процесора та постійний темп рендерингу. Але при цьому виникає побічний ефект у вигляді затримки реакції на введення, адже API не дозволяє викинути із черги заздалегідь сплановані кадри. Саме на боротьбу з лагом спрямовані відповідні налаштування у драйверах відеокарти, які популяризувала AMD під маркою Radeon Anti-Lag, а потім у NVIDIA з'явилася аналогічна опція Low Latency Mode.
Тим не менш подібні заходи не є універсальним засобом від затримок: наприклад, якщо швидкодія гри стримується можливостями центрального, а не графічного процесора, коротка черга кадрів (або її повна відсутність) робить пляшку шийки CPU тільки вже. На додачу до решти тестової програми ми маємо намір з'ясувати, чи є від "технологій" Radeon Anti-Lag і Low Latency Mode відчутна користь, в яких саме іграх і на якому залізі.
G.Skill Trident Z RGB F4-3200C14D-16GTZR, 2×8 Гбайт (3200 МГц, CL14)
ПЗУ
Intel SSD 760p, 1024 Гбайт
Блок живлення
Corsair AX1200i, 1200 Вт
Система охолодження CPU
Corsair Hydro Series H115i
Корпус
CoolerMaster Test Bench V1.0
монітор
NEC EA244UHD
Операційна система
Windows 10 Pro x64
ПЗ для GPU AMD
Усі відеокарти
AMD Radeon Software Adrenalin 2020 Edition 20.8.3
ПЗ для GPU NVIDIA
Усі відеокарти
NVIDIA GeForce Game Ready Driver 452.06
Вимірювання кадрової частоти та часу реакції у всіх іграх були виконані при максимальних або наближених до максимальних налаштуваннях якості графіки для того, щоб а) акцентувати відмінності між пристроями, що порівнюються, б) отримати результати як при високій кадровій частоті, що перевищує частоту оновлення екрана, так і навпаки . Спеціально для цієї статті ми запозичили швидкий монітор Samsung Odyssey 9 (C32G75TQSI) з роздільною здатністю WQHD та частотою оновлення 240 Гц – максимальною для сучасних споживчих моніторів, поки у продажу ще не з'явилися екрани стандарту 360 Гц. Технології адаптивної частоти оновлення (G-SYNC та FreeSync) були вимкнені.
Результати кожного індивідуального тесту (конкретна відеокарта в конкретній грі з антилаговим налаштуванням драйвера або без неї) отримані на вибірці з 50 вимірів.
Прим. У дужках після назв відеокарт вказані базова та boost-частота згідно специфікацій кожного пристрою. Відеокарти нереференсного дизайну приведені у відповідність до референсних параметрів (або наближені до останніх) за умови, що це можна зробити без ручної правки кривої тактових частот. В іншому випадку (прискорювачі серії GeForce 16, а також GeForce RTX Founders Edition) використовуються налаштування виробника.
Результати випробувань у першій грі, CS:GO, дали чимало їжі для розуму. Це найлегший проект у всій тестовій програмі, де такі відеокарти, як GeForce RTX 2080 Ti, розвивають частоту зміни кадрів за межами 600 FPS і навіть найслабші з восьми учасників тестування (GeForce GTX 1650 SUPER і Radeon RX 590) тримаються значно вище за частоту обновлення. монітора 240 Гц. Проте CS:GO відмінно проілюстрував тезу про те, що нарощувати FPS понад частоту монітора зовсім не марно для скорочення затримок. Якщо порівняти відеокарти верхньої групи (GeForce RTX 2070 SUPER і вище, а також Radeon RX 5700 XT) з молодшими моделями (GeForce GTX 1650 SUPER, GeForce GTX 1060, Radeon RX 5500 XT і Radeon RX 590 часу, що минув від натискання клавіші миші до появи спалаху на екрані. В абсолютному значенні виграш досягає 9,2 мс - на перший погляд небагато, але, наприклад, майже стільки ж дає зміна частоти оновлення екрану з 60 на 144 Гц (9,7 мс)!
Що стосується того, як співвідносяться за часом затримки відеокарти, що належать до однієї широкої цінової категорії, але засновані на чіпах різних виробників, то в кожній групі ми не виявили значних відмінностей. Те ж саме стосується опцій у драйверах прискорювача, покликаних зменшити лаг шляхом скорочення черги кадрів у Direct3D 11. На CS:GO (принаймні у даних тестових умовах) вони, як правило, не мають корисного ефекту. У групі слабких відеокарт є невеликий зсув часу реакції, але тільки GeForce GTX 1650 SUPER він досяг статистичної значущості за результатами.
Прим. Значки насиченого кольору позначені результатами зі стандартними параметрами драйвера. Блідими значками - з увімкненою опцією Low Latency Mode (значення Ultra) або Radeon Anti-Lag. Зверніть увагу на вертикальну шкалу - вона починається вище за нуль.
Counter-Strike: Global Offensive
За замовчуванням
Low Latency Mode (Ultra) / Radeon Anti-Lag
Середня частота зміни кадрів, FPS
Середній час реакції, мс
Ст. відхилення часу реакції, мс
Середня частота зміни кадрів, FPS
Середній час реакції, мс
Ст. відхилення часу реакції, мс
GeForce RTX 2080 Ti
642
20,7
6,5
630
21
4,6
GeForce RTX 2070 SUPER
581
20,8
5
585
21,7
5,6
GeForce RTX 2060 SUPER
466
23,9
4,6
478
22,4
5,8
GeForce GTX 1650 SUPER
300
27,6
4,3
275
23,2
5,4
Radeon RX 5700 XT
545
20,4
5,8
554
21,5
4,4
Radeon RX 5500 XT
323
29,3
14
316
26,5
14,5
Radeon RX 590
293
29,3
5,8
294
27,5
4,9
GeForce GTX 1060 (6 Гбайт)
333
29,6
7,9
325
28,2
12,9
Прим. Червоним виділено статистично значимі відмінності у середньому часу реакції (по t-критерію Стьюдента).
Хоча DOTA 2 теж вважається невибагливою грою за чинними стандартами, в ній сучасним відеокарт важче набирати кілька сотень FPS. Так, всі бюджетні рішення, що беруть участь у порівнянні, опустилися нижче за фреймрейт 240 кадрів на секунду, що відповідає частоті оновлення екрана. Потужні прискорювачі, починаючи з Radeon RX 5700 XT та GeForce RTX 2060 SUPER, видають тут понад 360 FPS, але на відміну від CS:GO, DOTA 2 більш ефективно спрямовує надлишок швидкодії графічного процесора на боротьбу з лагом. У попередній грі достатньо відеокарти рівня Radeon RX 5700 XT, щоб ніякого сенсу нарощувати продуктивність далі заради реакції вже не було. Тут же затримка продовжує знижуватися на потужніших відеокартах аж до GeForce RTX 2080 Ti.
Надо заметить, что именно к результатам Radeon RX 5700 XT в этой игре возникают вопросы. Действующий флагман AMD намного превосходит по времени задержки даже GeForce RTX 2060 и выступил ничем не лучше младших моделей, невзирая на более высокий фреймрейт. А вот сокращать очередь рендеринга кадров в DOTA 2 действительно полезно. Эффект не так велик, чтобы его заметили даже опытные кибератлеты, но он является статистически значимым для четырех видеокарт из восьми
Прим. Значки насиченого кольору позначені результатами зі стандартними параметрами драйвера. Блідими значками - з увімкненою опцією Low Latency Mode (значення Ultra) або Radeon Anti-Lag. Зверніть увагу на вертикальну шкалу - вона починається вище за нуль.
DOTA 2
За замовчуванням
Low Latency Mode (Ultra) / Radeon Anti-Lag
Середня частота зміни кадрів, FPS
Середній час реакції, мс
Ст. відхилення часу реакції, мс
Середня частота зміни кадрів, FPS
Середній час реакції, мс
Ст. відхилення часу реакції, мс
GeForce RTX 2080 Ti
418
17,7
2
416
17,4
1,4
GeForce RTX 2070 SUPER
410
18,2
1,6
409
17,6
1,6
GeForce RTX 2060 SUPER
387
20,8
1,5
385
19,8
1,6
GeForce GTX 1650 SUPER
230
27,9
2,5
228
27,9
2,3
Radeon RX 5700 XT
360
26,3
1,5
363
25,2
1,3
Radeon RX 5500 XT
216
25,4
1,2
215
21,7
1,4
Radeon RX 590
224
25
1,4
228
21,8
1,3
GeForce GTX 1060 (6 Гбайт)
255
25,8
1,9
254
25,8
1,7
Прим. Червоним виділено статистично значимі відмінності у середньому часу реакції (по t-критерію Стьюдента).
Overwatch — найважча з четвірки тестових ігор за максимальної якості графіки з активованим повноекранним згладжуванням. Не дивно, що кожен гігафлопс продуктивності GPU тут йде на користь часу реакції. Розмах значень лага в Overwatch між такими відеокартами, як GeForce RTX 2080 Ti та Radeon RX 5500 XT, є дворазовим. Числа говорять і про те, що потужніші відеокарти, ніж GeForce RTX 2070 SUPER, тільки накручують FPS, а ось прискорити реакцію вже не можуть навіть номінально. Але заміна Radeon RX 5700 XT або GeForce RTX 2060 SUPER горезвісним RTX 2070 SUPER в теорії має сенс для того, щоб звести лаг до мінімуму, зберігши високу якість графіки. Крім того, в Overwatch знову з не найкращого боку виявив себе один із прискорювачів на «червоних» чіпах. На цей раз Radeon RX 5500 XT, який за середнім часом затримки реакції значно перевершує всі інші бюджетні рішення.
Overwatch в черговий раз допоміг довести, що а) швидкодія відеокарти навіть на високих значеннях фреймрейту ще впливає на величину лага, б) формально більш продуктивний GPU не гарантує менших затримок реакції на введення. Крім цього гра продемонструвала еталонну роботу антилагових налаштувань графічного драйвера. Якщо грати відносно слабких відеокартах (GeForce GTX 1650 SUPER, GeForce GTX 1060, Radeon RX 5500 XT і Radeon 590), скорочена черга кадрів може зменшити лаг на величину від 9 до 17 %. Ну а для потужного заліза вона, як і раніше, абсолютно марна.
Прим. Значки насиченого кольору позначені результатами зі стандартними параметрами драйвера. Блідими значками - з увімкненою опцією Low Latency Mode (значення Ultra) або Radeon Anti-Lag. Зверніть увагу на вертикальну шкалу - вона починається вище за нуль.
Overwatch
За замовчуванням
Low Latency Mode (Ultra) / Radeon Anti-Lag
Середня частота зміни кадрів, FPS
Середній час реакції, мс
Ст. відхилення часу реакції, мс
Середня частота зміни кадрів, FPS
Середній час реакції, мс
Ст. відхилення часу реакції, мс
GeForce RTX 2080 Ti
282
35,6
10,4
300
34,2
9,6
GeForce RTX 2070 SUPER
225
35,8
5,1
228
36,7
8,6
GeForce RTX 2060 SUPER
198
41,2
6,4
195
38,8
9
GeForce GTX 1650 SUPER
116
58,2
8
115
51
8,7
Radeon RX 5700 XT
210
39,6
7,2
208
41,4
7,2
Radeon RX 5500 XT
120
69,7
13,2
120
63,5
15,1
Radeon RX 590
111
61,2
8,6
111
51,7
7,7
GeForce GTX 1060 (6 Гбайт)
121
60,7
8,7
118
50,7
6,5
Прим. Червоним виділено статистично значимі відмінності у середньому часу реакції (по t-критерію Стьюдента).
Valorant виділилася серед тестових ігор чудовою – або, навпаки, посередньою – оптимізацією графіки. Справа в тому, що, попри величезну різницю в потенційній швидкодії тестових GPU за оцінками частоти зміни кадрів, всі вони зосередилися в діапазоні від 231 до 309 FPS. І це при тому, що ми навмисно вибрали для вимірів латентності найбільш ресурсомістку сцену, щоб посилити очікувані відмінності. Проте за розподілом значень лага Valorant частково схожий CS:GO. У цій грі власники GeForce RTX 2060 SUPER або Radeon RX 5700 XT знаходяться в рівних умовах з користувачами більш дорогих та потужних прискорювачів. Навіть молодші відеокарти класу GeForce GTX 1650 SUPER і Radeon RX 5500 XT тут не так сильно відстають від старших. При таких вступних даних не дивно, що обмежувати чергу кадрів Direct3D в Valorant марно: відповідні налаштування мають статистично значущий ефект для обраних відеокарт, але його величина абсолютно мізерна.
Прим. Значки насиченого кольору позначені результатами зі стандартними параметрами драйвера. Блідими значками - з увімкненою опцією Low Latency Mode (значення Ultra) або Radeon Anti-Lag. Зверніть увагу на вертикальну шкалу - вона починається вище за нуль.
Доблесний
За замовчуванням
Low Latency Mode (Ultra) / Radeon Anti-Lag
Середня частота зміни кадрів, FPS
Середній час реакції, мс
Ст. відхилення часу реакції, мс
Середня частота зміни кадрів, FPS
Середній час реакції, мс
Ст. відхилення часу реакції, мс
GeForce RTX 2080 Ti
309
19,3
2,6
306
20,2
3
GeForce RTX 2070 SUPER
293
19,2
3,1
289
19,5
2,9
GeForce RTX 2060 SUPER
308
20,7
2,7
310
19,6
2,9
GeForce GTX 1650 SUPER
251
24,5
2,9
243
23,6
2,5
Radeon RX 5700 XT
256
21,9
3,3
257
21,9
2,7
Radeon RX 5500 XT
258
23,5
2,8
262
22,8
2,6
Radeon RX 590
237
25,8
2,7
234
24,3
2,5
GeForce GTX 1060 (6 Гбайт)
269
23,5
2,8
268
23,4
4,4
Прим. Червоним виділено статистично значимі відмінності у середньому часу реакції (по t-критерію Стьюдента).
Вимір затримки реакції в іграх апаратними засобами дало багаті результати, які, чесно кажучи, ставлять під питання прийняті в індустрії методи оцінки швидкодії відеокарт, коли єдиним параметром, що вимірюється вже не перший десяток років залишається частота зміни кадрів. Звичайно, FPS і лаг тісно корелюють між собою, але, принаймні в кіберспортивних іграх, коли триває боротьба за кожну мілісекунду затримки, кадрова частота не дозволяє дати вичерпний опис швидкодії.
У короткому дослідженні популярних розрахованих на багато користувачів проектів ми виявили кілька цікавих феноменів. По-перше, наші дані спростовують популярну думку про те, що немає сенсу накручувати FPS понад значення, що відповідають частоті оновлення екрану. Навіть на дуже швидкому 240-Гц моніторі такі ігри, як Counter-Strike: Global Offensive, дозволяють зменшити лаг у півтора рази за рахунок зміни бюджетної відеокарти на топову модель. Йдеться про такий самий виграш за часом реакції, як, наприклад, при переході з екрану 60 Гц на 144 Гц.
З іншого боку, фреймрейт все-таки може бути надмірним, коли потужніша відеокарта тільки дарма гріє повітря і вже не допомагає боротися з і без того надзвичайно низькими затримками. У всіх тестових іграх при роздільній здатності 1080p ми не знайшли жодної значної різниці між такими пристроями, як GeForce RTX 2070 SUPER та GeForce RTX 2080 Ti. Абсолютний мінімум часу реакції, зареєстрований нами, становить 17,7 мс і був отриманий у DOTA 2. Це, між іншим, не така вже скромна величина, яка, якщо переводити в частоту оновлення, відповідає 57 герцям. Так що напрошується наступний висновок: майбутні монітори з частотою 360 Гц обов'язково знайдуть застосування в іграх змагань - це прямий спосіб зменшити лаг, коли комп'ютерне залізо вже вичерпало свої можливості і впирається в обмеження товстого програмного стека операційної системи, графічного API, драйверів і самої гри.
Потім ми перевірили, чи є користь від програмних засобів боротьби з латентністю, які поки зводяться до обмеження черги рендерингу кадрів у додатках, що спираються на графічний API Direct3D 9 і 11, - горезвісних Radeon Anti-Lag в драйвері AMD і Low Latency Mode у NVID. Як з'ясувалося, обидві технології дійсно працюють, але здатні принести відчутну користь тільки в умовах, коли пляшковим шийкою системи є саме GPU, а не центральний процесор. У нашій тестовій системі з розігнаним процесором Intel Core i7-9900K такі засоби допомогли недорогим відеокартам середньої категорії продуктивності (Radeon RX 5500 XT, GeForce GTX 1650 SUPER та аналогічним по швидкодії прискорювачам минулого покоління), але абсолютно безглузді, коли є безглуздими, коли є. Втім, коли антилагові налаштування працюють, вони можуть бути надзвичайно ефективними, зменшуючи затримку в якомусь Overwatch на величину аж до 10 мс, або 17% від вихідної.
І нарешті, були виявлені певні відмінності між графічними картами різних виробників, які неможливо було передбачити лише за кадровою частотою. Так, відеокарти AMD іноді забезпечують таку ж коротку затримку, як формально більш продуктивні «зелені» пристрої (приклад: Radeon RX 5700 XT CS:GO), а в інших випадках працюють підозріло повільно (та ж модель в DOTA 2). Не здивуємося, що, якщо методики апаратного вимірювання лага, подібні до LDAT, набудуть широкого поширення, затяті кібератлети, які борються за найменшу перевагу перед суперниками, почнуть підбирати відеокарти під конкретну гру — залежно від того, яка модель забезпечує найменший час реакції.
Але найголовніше, завдяки LDAT у нас з'явилася можливість проводити глибші дослідження часу затримки. Те, що ми зробили в цьому попередньому огляді, - це лише верхівка айсберга. За рамками поки що залишилися такі теми, як вплив на лаг технологій адаптивної синхронізації (G-SYNC та FreeSync), обмеження FPS у грі, залежність від продуктивності CPU та багато іншого. Крім того, ми збираємося з'ясувати, чи досягнемо високий фреймрейт у сотні FPS і, відповідно, швидка реакція на введення не лише у змагальних іграх, спеціально оптимізованих під ці критерії, а й у проектах класу ААА, що навантажують систему значно сильніше. А отже, чи потрібен звичайний геймер, а не чемпіон, передовий монітор з частотою оновлення 240 або навіть 360 Гц? На ці питання ми відповімо у майбутніх роботах із застосуванням LDAT.