L'essentiel du délai entre ton doigt et le jeu se trouve dans le clavier, pas dans Windows. Un appui traverse six étapes avant qu'un pixel ne change, et le logiciel peut en raccourcir exactement deux. Si tu es venu ici chercher une valeur de registre qui supprime la latence du clavier, la réponse honnête est qu'aucune valeur de ce genre n'existe — mais trois des six étapes portent de vrais défauts vérifiables, et ceux-là valent vingt minutes.
Cette page découpe le trajet, nomme le propriétaire de chaque morceau, et dit franchement quelles parties sont hors de portée.
Le trajet réel d'un appui de touche
| Étape | À qui elle appartient | Le logiciel peut-il la raccourcir ? |
|---|---|---|
| 1. Le contact se ferme ; le contrôleur du clavier balaie sa matrice et filtre le rebond | Firmware du clavier | Non |
| 2. Le clavier met un rapport à disposition sur son endpoint d'interruption USB, à l'intervalle demandé par son firmware | Firmware du clavier | Non |
3. Le contrôleur hôte récupère le rapport ; kbdhid.sys et kbdclass.sys le font remonter | Windows + pilote du chipset | Seulement en retirant un pilote qui bloque |
| 4. Le rapport traverse les pilotes de filtre et les hooks bas niveau posés sur le chemin d'entrée | Suite du clavier, couche de macros, overlay | Oui |
| 5. Le jeu lit l'entrée — dans la plupart des moteurs, une fois par image | Le jeu | Indirectement, en montant le nombre d'images par seconde |
| 6. L'image est rendue, présentée, balayée puis affichée | GPU, Windows, écran | En partie — voir La latence d'entrée qu'aucun logiciel ne corrige |
Étape 1 — la partie que personne ne peut toucher
Un clavier n'envoie pas de signal au moment où un contact se ferme. Son propre contrôleur balaie la matrice des touches en boucle, et quand il voit un contact il attend la fin du rebond avant de déclarer la touche enfoncée. Cette attente est une constante du firmware. Elle n'est pas exposée à Windows, aucun pilote ne peut la lire, et aucune valeur de registre nulle part sur ta machine ne la change.
C'est pour ça que deux claviers sur le même PC peuvent donner des sensations différentes alors que toutes les autres variables sont identiques, et c'est pour ça que la « latence du clavier » est si souvent une réponse matérielle déguisée en logiciel.
Étape 2 — l'intervalle de polling est fixé par le clavier, noir sur blanc
Les périphériques USB qui envoient des entrées le font par un endpoint d'interruption, et le descripteur de cet endpoint porte un champ nommé bInterval qui indique à quelle fréquence l'hôte doit interroger l'appareil. La référence de Microsoft sur cette structure est sans ambiguïté : "This value reflects the device's configuration in firmware. Drivers cannot change it."
La même page donne la correspondance. Sur un appareil full-speed, un bInterval de 1 signifie une période de polling d'une trame de 1 milliseconde — les 1000 Hz que les claviers annoncent. Sur un appareil high-speed, la période se compte en micro-trames, huit par milliseconde, selon la formule Period = 2 ** (bInterval - 1).
Deux choses en découlent, et ce sont les phrases les plus utiles de cette page :
- Un clavier qui rapporte à 125 Hz demande à être interrogé toutes les 8 ms. Rien dans Windows ne peut le faire rapporter plus vite. Si ce chiffre compte pour toi, c'est une décision de firmware ou une décision d'achat.
- Si ton clavier a un interrupteur ou un utilitaire de configuration qui règle son taux de rapport, cet outil écrit de la configuration de firmware. C'est la seule voie.
Certains claviers sont livrés dans un mode de compatibilité (souvent appelé « boot protocol », ou lié à un interrupteur 6-key rollover) qui abaisse aussi le taux de rapport. Consulte le manuel du clavier ou son logiciel de configuration avant de conclure que c'est Windows qui est lent.
Les deux réglages que tout le monde change et qui ne font pas ça
Ces deux-là apparaissent dans toutes les listes « corriger la latence du clavier ». Aucun des deux ne raccourcit le chemin entre un appui et le jeu, et nous préférons le dire plutôt que te vendre un placebo.
Le délai et la fréquence de répétition des touches. KeyboardDelay et KeyboardSpeed sous HKCU\Control Panel\Keyboard gouvernent ce qui se passe quand tu maintiens une touche enfoncée : combien de temps avant que le caractère commence à se répéter, et à quelle vitesse il se répète ensuite. Le premier appui n'est pas affecté du tout. w0a peut régler le délai sur son pas le plus court, et la description du produit dit elle-même ce que ça t'apporte — une console, une fenêtre de chat et des menus plus rapides, pas un tir plus rapide. Si un outil précédent a laissé ces valeurs dans un état bizarre, la carte Vitesse et délai de répétition des touches rétablit les valeurs par défaut de Windows.
La taille de la file de données clavier. KeyboardDataQueueSize fixe le nombre de rapports que le pilote de classe peut garder si le thread qui les consomme se bloque un instant. Une file plus grande signifie moins de rapports perdus pendant un blocage. Elle ne fait arriver aucun rapport plus tôt, et le produit le dit dans son interface plutôt qu'en note de bas de page. Files d'entrée explique ce qu'est cette valeur et comment la remettre.
Si une page t'affirme quelque part qu'augmenter la taille d'une file réduit la latence d'entrée, tu en sais désormais assez pour ne pas la croire. Une file est un tampon contre la perte, pas un raccourci.
Étape 4 — la seule étape qui t'appartient vraiment
C'est là que se loge le vrai délai clavier mesurable sur une machine normale, et c'est l'étape que presque personne ne vérifie.
Tout ce qui veut voir tes frappes avant le jeu s'installe sur le chemin d'entrée : suites constructeur avec moteur de macros, démons d'éclairage par touche qui réagissent à la frappe, overlays de streaming et de chat, enregistreurs d'écran, utilitaires de remappage, outils d'accessibilité. Chacun est un saut de plus, et un saut occupé ou bloqué retient tout le chemin.
Windows a un délai d'expiration prévu exactement pour ce cas. Quand un hook bas niveau ne répond pas dans les LowLevelHooksTimeout millisecondes, Windows l'ignore et passe à la suite ; à partir de Windows 10 1709, il utilise au plus 1000 ms, si grande que soit la valeur. La durée d'attente de Windows quand la valeur n'est pas définie n'est pas documentée, et nous ne l'avons pas mesurée. La page Tweaks Regedit de w0a a une entrée qui fixe cette attente à 1000 ms en écrivant LowLevelHooksTimeout sous HKCU\Control Panel\Desktop.
Lis ça honnêtement : plafonner le délai d'expiration ne rend pas un hook en bonne santé plus rapide. Ça raccourcit le gel quand un hook a déjà mal tourné. Ça vaut la peine d'être fait, et ce n'est pas une réduction de latence.
Ce qu'il faut vraiment faire, dans l'ordre :
- Ferme complètement le logiciel du clavier — pas le réduire dans la zone de notification. Quitte-le, puis fais une partie.
- Ferme les overlays un par un : celui de la plateforme de jeu, celui du chat vocal, le logiciel d'enregistrement, l'overlay du fabricant de la carte graphique.
- Si la sensation change, tu as trouvé ta réponse, et tu peux décider quelle fonction vaut quel délai.
- Si rien ne change, arrête de chercher ici. Passe à l'étape 3.
Étape 3 — un pilote qui retient le cœur dont le clavier a besoin
Un rapport de clavier arrive sous forme d'interruption. Si un pilote sans aucun rapport avec le clavier est assis sur ce cœur de processeur, à l'intérieur d'une interruption ou d'un appel différé, ta frappe attend — et elle attend au-dessus de toutes les priorités de thread du système, donc elle n'apparaît dans aucun graphique de temps d'image ni dans aucun gestionnaire des tâches.
C'est mesurable, et c'est la seule partie du trajet où un chiffre peut être posé sur ta propre machine :
- Ouvre Test de latence dans w0a.
- Lance la mesure et continue à bouger la souris pendant les 12 secondes complètes — la souris est le trafic dont le test se sert pour échantillonner le chemin d'entrée.
- Lis le chiffre Plus longue interruption de pilote et la liste de pilotes en dessous, triée par durée de rétention et qui nomme le fichier.
- Tout ce qui atteint ou dépasse 1 ms déplace des rapports. Tout ce qui atteint ou dépasse 4 ms est la chose à corriger avant toute autre.
La première solution à essayer pour un pilote qui retient un cœur, c'est de mettre ce pilote précis à jour chez le fabricant du matériel. Lire le test de latence explique les couleurs et, plus utilement encore, ce que le chiffre laisse délibérément de côté.
Étape 5 — le jeu lit l'entrée à son propre rythme
Dans la plupart des moteurs, le jeu échantillonne l'entrée une fois par image. Un jeu qui tourne à 60 FPS regarde ton clavier toutes les 16,7 ms ; à 240 FPS, toutes les 4,2 ms. C'est de l'arithmétique, pas une mesure, et aucun moteur ne publie son timing d'entrée exact — traite donc cela comme le mécanisme, et non comme un chiffre valable jeu par jeu.
La conséquence pratique, c'est que remonter un nombre d'images par seconde faible raccourcit l'attente à cette étape, et qu'un clavier n'est pas ce qui te limite à 40 FPS. Si ton nombre d'images est instable plutôt que faible, Ce que cherche le scan des saccades est la page qu'il te faut.
Ce qui reste, et quoi en faire

Une liste courte et réversible. Chacun de ces points peut être annulé, et les points ci-dessous qui renvoient à une carte Fix réécrivent la valeur par défaut de Windows quel que soit l'outil qui a fait le changement.
- Branche le clavier sur un port de la machine elle-même, pas sur un hub d'écran, un hub non alimenté ou un KVM. Chacun d'eux est un contrôleur de plus entre l'appareil et l'hôte.
- Vérifie ce que fait réellement le port. La page Ports USB de w0a liste chaque appareil avec l'intervalle de polling demandé par son firmware, à côté du taux de rapport mesuré sur de vraies entrées. Un appareil qui demande 1 ms et en livre bien moins est un problème de liaison ou de pilote, pas un problème de clavier.
- Annule les anciens tweaks d'entrée. Souris, clavier et pavé tactile et Files d'entrée rétablissent les valeurs par défaut de Windows si un outil plus ancien les a changées.
- Empêche la gestion d'alimentation USB d'endormir le port, si ton clavier est lent au premier appui après une pause. Paramètres d'alimentation des ports USB est la carte pour ça.
- Mesure, puis décide. Fais le Test de latence avant et après chaque changement. Un changement que tu ne vois pas dans une mesure est un changement que tu devrais annuler.
Ce que le logiciel ne peut pas faire ici
- Il ne peut pas changer l'intervalle de balayage de ton clavier ni son temps d'anti-rebond. Ce sont des affaires de firmware, et Windows ne les voit jamais.
- Il ne peut pas faire rapporter un appareil plus vite que l'intervalle demandé par son propre descripteur — la documentation de Microsoft dit que les pilotes ne peuvent pas changer ce champ.
- Il ne peut pas supprimer l'échantillonnage d'entrée du jeu, une fois par image.
- Il ne peut pas raccourcir la part de l'écran dans le trajet. Celle-là appartient à La latence d'entrée qu'aucun logiciel ne corrige.
Ce qu'il peut faire, c'est retirer un hook bloqué, révéler un pilote qui retient un cœur et empêcher un port de s'endormir. Sur une machine saine, tout cela pèse moins que ce que les gens espèrent ; sur une machine malade, c'est toute la différence. Mesurer, c'est ainsi que tu découvres laquelle des deux tu as.
À lire aussi
- Pourquoi ma visée semble en retard
- J'entends les pas après les avoir vus
- Comment réduire l'input lag : ce qu'un logiciel peut raccourcir ou non
- Lire le test de latence
- Tweaks souris et clavier
Sur la douzaine d'étapes entre un clic et un pixel qui change, le logiciel en possède trois ; le firmware, l'écran et le jeu se partagent le reste : Comment réduire l'input lag : ce qu'un logiciel peut raccourcir ou non
Cette page t'a-t-elle aidé ?
Qu'est-ce qui manquait, ou qu'est-ce qui n'a pas marché ? Nous lisons chacun de ces messages.
Si cette page n'a pas réglé le problème, écris-nous — dis-nous quel article tu as lu, et nous corrigerons l'article.