キーボードレイテンシーテスト.
キー入力タイミングの安定性を推定します — 真のハードウェアレイテンシーではありません — 連続するキーストロークイベント間のジッターを測定することによって。
ここをクリックしてから、キーを速く一定のリズムで入力または連打してください — 少なくとも数百回のキーイベントを目指してください。
ヒント:一定のリズムで入力するか指を転がすように動かしてください — あなたのリズムが不安定だと、優れたハードウェアでもジッターのように見えてしまいます。
キー間隔の分布
連続するkeydown間の間隔(ミリ秒)タイミング統計
安定性の目安
測定する前に確認すること
- まず有線で行うワイヤレスドングルやBluetoothは独自の遅延とジッターを追加します。まず有線でテストし、その後ワイヤレスを別途比較して違いを確認しましょう。
- バックグラウンドアプリを閉じるCPUが忙しいと、ブラウザ自体のイベント処理が遅れ、それがキーボードとは無関係なジッターとしてここに現れます。
- 一定のリズムで入力または連打するあなたのリズムが不安定だと、ハードウェアのジッターとまったく同じように見えてしまいます — 滑らかで一定のペースを目指すか、指をキーの上で転がすように動かしてください。
- イベント数を確認するわずかなキー入力では安定した結果が得られません — ジッターの推定値は数百イベント後に安定してきます。
入力タイミングの安定性の測定方法
- 1キャプチャボックスにフォーカスする上のボックスをクリックすると、keydownとkeyupイベントの監視が始まります。
- 2キーを入力または連打する文章を入力するか、文字キーの上で指を一定のペースで転がすように動かし、少なくとも10〜15秒間続けてください。
- 3ジッターと判定を確認する推定ジッター、平均間隔、わかりやすい言葉での判定がリアルタイムで更新されるのを確認してください。「リセット」を押すとクリーンな計測をやり直せます。
キーボードレイテンシーとは、実際には何を指すのか?
「キーボードレイテンシー」とは通常、物理的なスイッチを押してから、その文字や動作が画面に反映されるまでの時間を指します。ウェブページが確認できるのは、JavaScriptがキーボードイベントを受け取った瞬間だけです — それより前に起こること(スイッチ、コントローラー、USB/Bluetoothでの伝送、OSの入力スタック)はすべて見えない場所で起こっています。そのため、このツールは単一のレイテンシー数値の代わりに、入力タイミングがどれだけ安定しているかを測定します。安定していて低ジッターの押下間隔は、キーボードからブラウザまでのクリーンな経路を示唆し、大きく不規則な間隔は、ワイヤレス接続、USBハブ、バックグラウンドのCPU負荷などの何かが遅延を追加していることを示唆します。
このツールは、ブラウザが配信するすべてのkeydownおよびkeyupイベントのタイムスタンプを記録し、event.timeStampをperformance.now()と比較します。連続するkeydownイベント間の間隔を確認し、単一の間隔を信頼するのではなく、これらの間隔がどれだけばらついているか(標準偏差、ジッターとして表示)を計算します。ブラウザはセキュリティ上の理由からこれらのタイムスタンプを意図的に丸めたりばらつかせたりし、またあなたのキースイッチとブラウザイベントの間にある真の遅延はJavaScriptからは見えないため、この結果を実験室レベルのレイテンシー測定ではなく、相対的な安定性の指標として扱ってください。
このテストが役立つ場面
新しいワイヤレスキーボード
ワイヤレスモードでのジッターを有線接続と比較し、無線接続がどれだけの遅延を追加しているか確認しましょう。
「もたつく」タイピングの診断
タイピングが不安定に感じる場合、高いジッター値はキーの取りこぼしではなくタイミングの問題であることを確認する助けになります。
競技ゲーム前に
試合前に、バックグラウンドアプリを閉じた状態のゲーミング環境で、安定した低ジッターの基準値を確認しましょう。
レイテンシー・タイミング用語集
- ジッター
- 連続するタイミング測定値の間のばらつき。ここでは、キーイベント間の間隔が一定を保つのではなく、どれだけ変動するかを指します。
- 入力遅延/レイテンシー
- 物理的な動作からコンピューターがそれを認識するまでの遅延 — ハードウェアレベルではブラウザからは見えません。
- デバウンス
- スイッチのバウンスを除去するファームウェアの遅延で、すべてのキー入力に小さく一定の遅延を加えることがあります。
- ポーリングレート
- キーボードがPCへ自分の状態をどのくらいの頻度で報告するか。レートが低いとレイテンシーが増え、ジッターも増える可能性があります。
- フィルターキー/スローキー
- 速いキー入力を意図的に遅らせたり無視したりするOSのアクセシビリティ機能で、ここでは非常に高い処理時間やジッターとして現れます。
よくある質問
ブラウザは本当にキーボードのレイテンシーを測定できますか?
直接的にはできません。真のキーボードレイテンシーとは、物理的なスイッチが閉じてからコンピューターがそれに応じて動作するまでの遅延であり、ブラウザがKeyboardEventを見る前に、キーボードのコントローラー、USBまたはワイヤレスでの伝送、OSを通過する一連の流れです。JavaScriptはこれらのいずれにもアクセスできません。代わりにこのツールが測定するのは、タイミングの安定性です — キーストロークイベントがどれだけ均等な間隔で届くかということです。これは有用な間接的指標ではありますが — クリーンで低レイテンシーの経路は小さく安定した間隔を生む傾向があります — ハードウェアレイテンシーテスターの代わりにはなりません。
良いジッタースコアとはどれくらいですか?
目安として、一定した入力または連打のバーストにおいて約1〜2ms未満のジッターは非常に安定しており、CPU時間を奪い合う他の処理がない良質な有線キーボードに典型的です。2〜4msは一般的で、ほとんど気になりません。約4〜8msを超える、あるいは測定するたびに数値が大きく変動する場合は、ワイヤレス接続、USBハブ、バックグラウンド負荷などの何かが不規則な遅延を追加していることを示唆します。
なぜワイヤレスキーボードだとジッターが悪化するのですか?
ワイヤレスキーボード(Bluetoothまたは2.4GHzドングル)は、余分な無線ホップを追加し、多くのモデルでは、有線接続よりも報告頻度が低く予測しにくい省電力ポーリングモードも加わります。同じキーボードを(対応していれば)有線とワイヤレスの両方で連続してテストすると、ワイヤレス接続自体がどれだけの遅延を追加しているかがわかります。
バックグラウンドアプリを閉じると結果が変わるのはなぜですか?
このテストはブラウザのJavaScriptエンジン内で実行されており、OSがブラウザタブに処理時間を割り当てたときにしかキーボードイベントを処理できません。CPUが忙しい状態 — 重いバックグラウンドダウンロード、負荷の高い作業をしている別のタブ、ウイルススキャンなど — はそのスケジューリングを遅らせ、その遅延がここでは、キーボードのハードウェアとは無関係な追加のジッターと処理時間として現れます。
キーボードの入力遅延の実際の原因は何ですか?
いくつかの要因が積み重なります — 低いUSBポーリングレート(キーボードが数ミリ秒ごとにしか報告しない)、ファームウェアのデバウンス遅延(スイッチのバウンスをフィルタリングする)、ワイヤレスキーボードでの伝送のホップ、フィルターキーやスローキーのような登録を意図的に遅らせるアクセシビリティ機能、そして最後にディスプレイ自体の入力からフォトンまでの遅延です。このツールはジッターを通じてこれらの組み合わさった効果を示唆できますが、どの単一の要因が原因かを特定することはできません。
これはマウスやモニターの入力遅延・レイテンシーテストと同じですか?
いいえ — 同じ考え方(真のハードウェア数値ではなく安定性)が適用されますが、このツールはキーボードイベントのみを監視します。マウスのクリックからカーソルまでのテストや、モニターの入力遅延テストには異なる測定ポイント(ポインターイベント、または物理パネルに対するフォトダイオード)が必要であり、このページが測定するものではありません。
精度についての注記 — これは安定性のチェックであり、実験室レベルの測定ではありません
ブラウザは真のエンドツーエンドのキーボードレイテンシーを測定できません — 指が物理的なスイッチを押してから、OSがこのページにKeyboardEventを渡すまでの遅延は、完全にJavaScriptの視界の外で起こっており、さらにブラウザは公開するタイムスタンプを意図的に丸めたりばらつかせたりします(タイミング攻撃への意図的な防御策です)。ここに表示されるもの — 平均間隔、ジッター、処理時間 — は、入力タイミングがどれだけ安定しているかを示す相対的な指標であり、有線とワイヤレスの比較、バックグラウンドアプリを閉じる前後の比較、あるいは同じマシン上での複数のキーボードの比較に役立ちます。専用のハードウェアレイテンシーテスターやオシロスコープの代わりにはなりません。最もクリーンな結果を得るには、有線接続を使い、バックグラウンドアプリを閉じ、一定のペースで入力または連打してください。