Keyboard latency test: hvad en browser kan måle
Mange sider tilbyder en keyboard latency test eller en polling rate-måler, men en webside ser først tastehændelser, efter at tastaturet, USB- eller den trådløse forbindelse og styresystemet har gjort deres arbejde. Denne vejledning forklarer hver del af forsinkelsen mellem tastetryk og resultat, hvad browserens tidsmålinger ærligt kan vise, og hvad du skal bruge for at måle den reelle latens.
Hvor tastaturforsinkelsen kommer fra
Mellem din finger og skærmen er der en kæde af trin, som hver tilføjer lidt tid:
- Vandring og aktivering: tasten bevæger sig, indtil kontakten registrerer. På mekaniske kontakter er det punkt fast; på analoge tastaturer (Hall-effekt eller lignende) kan det være justerbart.
- Scanning: tastaturets controller tjekker tastematrixen igen og igen. Hvor ofte den gør det, er scanningsfrekvensen.
- Debounce: controlleren venter eller filtrerer, så en kontakt, der preller, ikke meldes som flere tryk.
- Polling og transport: over USB spørger computeren tastaturet efter nye data med dets polling rate; trådløse og Bluetooth-forbindelser har deres egen timing.
- Styresystem og program: inputtet behandles og leveres til programmet.
- Rendering og skærm: programmet tegner et nyt billede, og skærmen viser det.
Den samlede latens er summen af alt dette. Markedsføringstal beskriver som regel kun én del.
Polling rate i rene tal
Polling rate er, hvor ofte computeren henter rapporter fra et USB-tastatur. Ved 125 Hz er intervallet 8 ms, ved 1000 Hz er det 1 ms og ved 8000 Hz 0,125 ms. En højere frekvens forkorter ventetiden på næste rapport, men kun den ventetid: scanningsfrekvens, debounce, systemet og skærmen bidrager stadig. Polling rate siger heller intet om, hvor hurtigt tastaturets egen controller opdager tasten.
Hvad en browser kan se
En webside modtager keydown- og keyup-hændelser med tidsstempler. Ud fra dem kan den vise:
- tiden mellem et tryk og dets slip og mellem på hinanden følgende tryk, sådan som chattertesten opdager prel i kontakten;
- hvilke taster der holdes nede samtidig, som i anti ghosting testen;
- den præcise key-værdi og code, som i keycode testeren.
Den kan ikke se, hvornår du fysisk trykkede på tasten, kun hvornår hændelsen kom frem. Tidsstempler afrundes også af browsere af hensyn til privatliv, nogle gange groft, og systemet kan samle flere inputhændelser. Et tidsstempel for en tastehændelse er derfor ikke en måling af tastaturets latens.
Hvorfor en hjemmeside ikke kan certificere tastaturets polling rate
Musebevægelser giver en kontinuerlig strøm af rapporter, så afstanden mellem hændelserne kan give et groft skøn over musens frekvens, hvilket er det, polling rate testen til mus gør. Et tastatur sender en rapport, når taster skifter tilstand, og du kan ikke trykke på taster i nærheden af 1000 gange i sekundet. Uden en jævn strøm at tidsmåle har browseren intet at skønne et tastaturs polling rate ud fra. En side, der skriver "dit tastatur kører 1000 Hz" alene ud fra skrivning, gætter. Indstillingen i tastaturets software eller et USB-analyseværktøj er den pålidelige kilde.
Aktiveringspunkt og rapid trigger
På analoge tastaturer måles aktiveringspunktet (hvor langt tasten skal ned, før den registrerer) og rapid trigger (at et slip registreres, så snart tasten begynder at stige) af sensorer inde i tastaturet. Browseren modtager kun det resulterende tryk og slip, ikke tastens position, så en webside kan ikke måle aktiveringsafstanden. Brug tastaturets egen software, som læser sensorværdierne direkte. Hvad en browsertest kan bekræfte, er at tryk og slip kommer, når du forventer det, f.eks. ved at trykke hurtigt i tastaturtesten.
Sådan måler du reel latens
Reel latens fra ende til ende kræver en reference uden for computeren: et højhastighedskamera, der filmer både tasten og skærmen, eller en dedikeret latensmåler, der registrerer trykket og ændringen på skærmen. Film eller optag mange tryk og tag gennemsnittet, fordi enkelte resultater varierer med timingen af billeder og polls. Bruger du et kamera:
- brug den samme scene, skærm, opdateringshastighed og de samme indstillinger for hvert tastatur;
- tryk fast og ensartet;
- tæl billeder fra det øjeblik, tasten bunder eller kontakten vides at aktivere, til den første synlige ændring.
Sammenlign tastaturer retfærdigt
- Ændr én ting ad gangen: samme port, kabel, computer, skærm og program for hvert tastatur.
- Kablede resultater siger intet om det samme tastatur i trådløs eller Bluetooth-tilstand; test hver tilstand for sig.
- Optag mange målinger og sammenlign intervaller såvel som gennemsnit.
- Betragt ethvert enkelt tal fra en hjemmeside, også en browsermåling, som et fingerpeg og ikke en måling.
Spørgsmål
Kan en browser måle tastaturets latens?
Ikke den reelle latens. En side ser kun, hvornår tastehændelsen kom frem, ikke hvornår du trykkede, og tidsstemplerne er afrundede. Måling af latens kræver en ekstern reference som et højhastighedskamera eller en dedikeret måler.
Hvordan tjekker jeg mit tastaturs polling rate?
Kig i tastaturets software eller indstillinger, som normalt viser og ændrer den. En hjemmeside kan ikke pålideligt skønne et tastaturs polling rate ud fra skrivning, fordi taster ikke giver en jævn strøm af rapporter.
Er 8000 Hz bedre end 1000 Hz?
Det forkorter én del af forsinkelsen, fra op til 1 ms til op til 0,125 ms mellem polls. Om du mærker det, afhænger af resten af kæden, som ofte tilføjer meget mere.
Har denne side en keyboard latency test?
Nej, med vilje. TestDocks tastaturværktøjer måler det, en browser kan se pålideligt: hvilke taster der kommer frem, hvor mange på én gang, og timingen af tryk til chatter. Denne vejledning forklarer, hvordan du måler latens korrekt.
Relaterede test
- Keycode testerSe key, code, keyCode, location, modifikatorer og repeat, som browseren melder for enhver tast.
- TastaturtestTryk på hver tast og se, hvilke der registreres, med ANSI-, ISO- og Mac-layout.
- Anti-ghosting testHold flere taster nede på én gang, og se hvilke kombinationer dit tastatur kan melde.
- ChattertestFind taster, der skriver to gange: hvert tryk tidsmåles, og gentagelser for hurtige til en finger markeres.
- Numpad testTryk på hver tast på det numeriske tastatur og se, om den registreres, med Num Lock-status vist.
- Mac tastatur testTastaturtest med Mac-tastenavne til MacBook-tastaturer og Magic Keyboard.
- Spacebar clickerSe hvor mange gange du kan trykke på mellemrumstasten på 5 til 60 sekunder; holdte taster tæller ikke.
- Chromebook tastaturtestTastaturtest med et Chromebook-tastekort: søgetast, taster i øverste række og piletasterne.