СТОРІНКИ ВИМІРЮВАНЬ

Чому тест просить дванадцять секунд руху мишею

Це не випадкове число. Ось що дають 12 секунд, чого не дають 3, і чому потрібен твій справжній рух, а не синтетичний.

Коротка відповідь

Дванадцять секунд — це досить довго, щоб проявився рідкісний сплеск, і досить коротко, щоб люди справді дотерпіли до кінця.

Довша відповідь

Цікаві події — це не середнє, а рідкісні випадки. Драйвер, який раз на кілька секунд утримує ядро 5 ms, — це саме те, що дає ривок, який ти помічаєш, і бенчмарк, у якому нічого не видно. Щоб побачити те, що трапляється раз на кілька секунд, вікно має бути в кілька разів довшим за цей проміжок.

Три секунди спіймали б середнє й проґавили сплеск, тобто дали б чистий результат на машині зі справжньою проблемою. Це найгірше, чим може закінчитися вимірювання.

Тридцять секунд спіймали б більше. І це була б сторінка, яку більшість людей кинула б на півдорозі, а покинуте вимірювання не вимірює нічого.

Чому потрібен саме твій рух

Частота миші береться з потоку raw input: один звіт на рух, так, як його надсилає пристрій. Немає руху — немає звітів, немає чого міряти.

Міряти час звичайних подій миші у Windows теж не вийшло б. Вони йдуть через чергу повідомлень, яка зливає їх приблизно до частоти самого інтерфейсу — миша на 1000 Гц і миша на 125 Гц крізь неї виглядають однаково. Це справжня вада, яка в цієї функції була, і читання raw input — її виправлення.

Як зробити правильно

Пов'язане

Ця сторінка допомогла?

Чого бракувало або що не спрацювало? Ми читаємо кожну таку відповідь.

Якщо ця сторінка не розв'язала проблему, напиши нам — скажи, яку статтю ти читав, і ми виправимо статтю.