キーボードの遅延とポーリングレートの解説

キーボードの遅延テストやポーリングレートのチェッカーを掲げるサイトは多くありますが、ウェブページがキーのイベントを受け取るのは、キーボード、USB や無線の接続、OS の処理がすべて終わった後です。このガイドでは、キーを押してから結果が見えるまでの遅延の内訳、ブラウザのタイミングから正直に言えること、本当の遅延を測るのに必要なものを説明します。

キーボードの遅延はどこで生まれるか

指から画面までにはいくつもの段階があり、それぞれが時間を加えます。

  1. キーの移動と作動:スイッチが反応するまでキーが沈みます。メカニカルスイッチではその位置は固定ですが、アナログ(磁気式など)キーボードでは調整できることがあります。
  2. スキャン:キーボードのコントローラーがキーマトリクスを繰り返し確認します。その頻度がスキャンレートです。
  3. デバウンス:接点のバウンドが複数の押下として報告されないよう、コントローラーが待つかフィルターをかけます。
  4. ポーリングと転送:USB では、パソコンがポーリングレートに従ってキーボードに新しいデータを問い合わせます。無線や Bluetooth の接続には、それぞれ独自のタイミングがあります。
  5. OS とアプリ:入力が処理され、プログラムに渡されます。
  6. 描画と表示:プログラムが新しいフレームを描き、モニターがそれを表示します。

エンドツーエンドの遅延は、これらすべての合計です。宣伝で使われる数値は、たいていその一部だけを表しています。

ポーリングレートを数字で理解する

ポーリングレートは、パソコンが USB キーボードからレポートを受け取る頻度です。125 Hz なら間隔は 8 ms、1000 Hz なら 1 ms、8000 Hz なら 0.125 ms です。レートが高いほど次のレポートまでの待ち時間は短くなりますが、短くなるのはその待ち時間だけです。スキャンレート、デバウンス、システム、ディスプレイはそれぞれの分の時間を加え続けます。また、ポーリングレートは、キーボード内部のコントローラーがどれだけ早くキーに気づくかについては何も示しません。

ブラウザに見えるもの

ウェブページはタイムスタンプ付きの keydown と keyup のイベントを受け取ります。そこから次のことを表示できます。

ページにわかるのは、イベントが届いた時刻だけで、実際にキーを押した時刻ではありません。さらに、タイムスタンプはプライバシー保護のためにブラウザによって丸められ、ときには大きく丸められます。システムが複数の入力イベントをまとめて渡すこともあります。そのため、キーイベントのタイムスタンプはキーボードの遅延の測定値ではありません。

ウェブサイトでキーボードのポーリングレートを保証できない理由

マウスを動かすとレポートが連続して送られるので、イベントの間隔からマウスのレートをおおまかに推定できます。マウスのポーリングレートテストがしているのはこれです。キーボードはキーの状態が変わったときにレポートを送り、人が1秒に1000回近くキーを押すことはできません。時間を計れる一定の流れがないため、ブラウザにはキーボードのポーリングレートを推定する材料がありません。文字を打っただけで「あなたのキーボードは 1000 Hz です」と表示するサイトは、推測しているにすぎません。確かな情報源は、キーボードの専用ソフトの設定か USB 解析ツールです。

作動点とラピッドトリガー

アナログキーボードの作動点(キーが反応するまでの押し込み量)とラピッドトリガー(キーが戻り始めた瞬間に離したと判定する機能)は、キーボード内部のセンサーで測られます。ブラウザが受け取るのは結果としての押下と離した操作だけで、キーの位置ではないため、ウェブページでは作動距離を測れません。センサーの値を直接読むキーボードの専用ソフトを使ってください。ブラウザのテストで確認できるのは、押下と離した操作が期待どおりのタイミングで届くかどうかです。たとえばキーボードテストで素早くタップして確かめられます。

本当の遅延を測る方法

本当のエンドツーエンドの遅延を測るには、パソコンの外にある基準が必要です。キーと画面の両方を撮影するハイスピードカメラか、押下と画面の変化を検出する専用の遅延測定器です。結果はフレームやポーリングのタイミングによってばらつくので、何度も押して撮影・記録し、平均を取ってください。カメラを使う場合は次の点に注意します。

  • どのキーボードでも、同じ場面、ディスプレイ、リフレッシュレート、設定を使う。
  • しっかりと一定の強さで押す。
  • キーが底まで沈んだ瞬間、またはスイッチが作動するとわかっている瞬間から、画面に最初の変化が見えるまでのフレームを数える。

キーボードを公平に比べる

  • 一度に変えるのは1つだけにします。どのキーボードでも、同じポート、ケーブル、パソコン、ディスプレイ、アプリを使います。
  • 有線での結果は、同じキーボードの無線や Bluetooth モードについては何も教えてくれません。モードごとに別々にテストしてください。
  • 多くのサンプルを記録し、平均だけでなく範囲も比べます。
  • ブラウザのタイミングを含め、ウェブサイトが示す単一の数値は、測定値ではなく目安として扱ってください。

よくある質問

ブラウザでキーボードの遅延を測れますか?

本当の遅延は測れません。ページにわかるのはキーイベントが届いた時刻で、キーを押した時刻ではなく、タイムスタンプも丸められています。遅延の測定には、ハイスピードカメラや専用の測定器などの外部の基準が必要です。

キーボードのポーリングレートはどう確認しますか?

キーボードの専用ソフトや設定を見てください。たいていそこで確認・変更できます。キーは一定の流れでレポートを送らないため、ウェブサイトが入力からキーボードのポーリングレートを確実に推定することはできません。

8000 Hz は 1000 Hz より良いのですか?

遅延の一部、ポーリングの間隔を最大 1 ms から最大 0.125 ms に短くします。違いを感じるかどうかは、チェーンのほかの部分次第で、そちらのほうがずっと大きな時間を加えることがよくあります。

このサイトにキーボードの遅延テストはありますか?

ありません。意図的にそうしています。TestDock のキーボードツールは、ブラウザが確実に見られるものを測ります。どのキーが届くか、同時にいくつ届くか、チャタリングのための押下のタイミングです。遅延をきちんと測る方法は、このガイドで説明しています。

関連するテスト