Latenza della tastiera: da dove viene il ritardo e come si misura
La latenza della tastiera è il tempo che passa da quando il dito inizia a premere un tasto a quando la tastiera ha inviato quella pressione al computer. Si accumula in quattro punti: la corsa del tasto, la scansione dei tasti da parte della tastiera, il debounce e il polling USB. Nessun sito web può misurarla, perché il browser viene a sapere di una pressione solo dopo che la tastiera l’ha inviata. Chi la misura usa un solenoide che preme il tasto e un analizzatore USB che registra quando la pressione esce dalla tastiera. Per ridurla, usa un punto di attivazione meno profondo, il polling rate più alto e il debounce più basso che non faccia scrivere doppio i tasti.
Dove aspetta la pressione di un tasto prima di arrivare al computer
- Corsa del tastoil tasto scende fino al punto in cui scatta lo switch
- Scansioneil chip della tastiera controlla la griglia dei tasti, riga per riga
- Debounceaspetta che il contatto dello switch smetta di rimbalzare, oppure ignora il rimbalzo
- Polling USBla pressione aspetta finché il computer non chiede di nuovo alla tastiera se ci sono novità
Insieme: la latenza della tastiera
Una pagina web può far partire il cronometro solo da qui
Computer e schermo il gioco usa la pressione, disegna un frame e lo schermo lo mostra: il resto del tuo input lag
Da dove viene il ritardo
- Corsa del tasto. Non succede nulla finché il tasto non raggiunge il punto di attivazione. In una ripresa a 240 fotogrammi al secondo, una normale pressione impiegava da 4 a 8 fotogrammi per arrivare in fondo, e la sola corsa può aggiungere facilmente 10 ms. La tastiera più veloce di quel test aveva anche, di gran lunga, la corsa più corta.
- Scansione. La maggior parte delle tastiere collega i tasti in una griglia e la controlla riga per riga. Una tastiera con una scansione lenta può vedere la tua pressione diversi millisecondi dopo la chiusura dello switch.
- Debounce. Il contatto di uno switch rimbalza per un attimo quando si chiude. La tastiera segnala subito la pressione e ignora il rimbalzo, oppure aspetta che il contatto si sia stabilizzato. In QMK, il firmware open source usato da molte tastiere custom, il debounce predefinito è di 5 ms.
- Polling USB. Il computer chiede novità alla tastiera con la frequenza del suo polling rate. Una pressione fatta subito dopo un polling aspetta quello successivo.
Il polling rate in millisecondi
Il tempo tra due polling è 1.000 ms diviso per il polling rate. In media una pressione aspetta la metà di questo tempo.
| Polling rate | Un polling ogni | Attesa media |
|---|---|---|
| 125 Hz | 8 ms | 4 ms |
| 250 Hz | 4 ms | 2 ms |
| 500 Hz | 2 ms | 1 ms |
| 1000 Hz | 1 ms | 0,5 ms |
| 8000 Hz | 0,125 ms | 0,0625 ms |
Passare da 125 Hz a 1.000 Hz fa risparmiare in media 3,5 ms. Le tastiere misurate differiscono molto di più: nel 2017 Dan Luu ha misurato 21 tastiere, tra 15 e 60 ms, e le due tastiere da gaming del gruppo non erano più veloci delle altre.
Come si misura la latenza di una tastiera
- Un solenoide e un analizzatore USB. RTINGS e LTT Labs premono il tasto con un solenoide, segnano il momento in cui lo tocca e registrano con un analizzatore USB quando la pressione esce dalla tastiera. RTINGS fa la media di 200 pressioni. Entrambi impostano prima la tastiera sui valori più veloci, come il debounce più basso e il polling rate più alto.
- Ogni connessione per conto suo. LTT Labs misura separatamente cavo, wireless a 2,4 GHz e Bluetooth, perché la latenza può cambiare molto dall’uno all’altro.
- Un analizzatore logico. Dan Luu ne ha usato uno per cronometrare l’intervallo tra l’inizio della pressione di un tasto e il pacchetto USB che ne risultava.
- A casa, una videocamera o un sensore di luce. Riprendi insieme il tasto e lo schermo al rallentatore (240 fotogrammi al secondo vuol dire un fotogramma ogni 4,2 ms), oppure usa sullo schermo un sensore di luce come l’OSLTT open source. Entrambi cronometrano l’intera catena dal tasto allo schermo, non la sola tastiera.
Perché nessun sito web può testare la latenza della tastiera
Il browser viene a sapere della pressione di un tasto solo dopo che la tastiera l’ha inviata e il computer l’ha passata avanti, quindi tutto ciò che descrive questa pagina è già successo prima che una pagina web possa far partire un cronometro. Un test che misura il tempo da un segnale alla tua pressione misura la tua reazione, che richiede molto più tempo della tastiera. Quello che un browser può controllare è se ogni tasto viene rilevato e quanti ne funzionano insieme, con il test della tastiera, e se un tasto scrive due volte, con il test della doppia pressione da tastiera.
Come ridurre la latenza della tastiera
- Imposta il polling rate più alto nell’app del produttore, se lo prevede.
- Abbassa il debounce, se l’app lo consente, ma fermati all’impostazione più bassa che non fa scrivere doppio i tasti. Se le lettere iniziano a raddoppiare, leggi perché la tastiera scrive lettere doppie.
- Usa un punto di attivazione meno profondo. Le tastiere magnetiche e analogiche ti permettono di scegliere quanto deve scendere un tasto prima che la pressione conti. Il Rapid Trigger, su tastiere come quelle di Wooting, rilascia inoltre il tasto non appena inizi a sollevarlo e lo preme di nuovo non appena torni a spingerlo giù.
- Scegli la connessione più veloce per giocare. Se la tastiera si collega in più modi, usa quello che una recensione ha misurato come il più veloce.
- Poi guarda il resto della catena. Il frame rate e lo schermo di solito aggiungono più ritardo della tastiera: leggi come ridurre l’input lag.
Come si distinguono gli switch lineari, tattili e clicky, con i valori del produttore per punto e forza di attivazione: switch della tastiera.
Fonti: Dan Luu (in inglese), La latenza delle tastiere; RTINGS (in inglese), come misurano la latenza della tastiera; LTT Labs (in inglese), Come Labs testa le tastiere; QMK (in inglese), Algoritmo di debounce; Wooting (in inglese), Come configurare il Rapid Trigger; OSLTT (in inglese), Strumento open source per misurare la latenza.