マウスは125、500、1000、4000、8000 Hzに設定されている可能性がありますが、ウェブページはUSBポーリングトランザクションに直接接続されません。デバイス、ファームウェア、オペレーティングシステム、ブラウザが処理した後のポインターイベントを受け取ります。ブラウザは動きをより少ないイベントにまとめたり、レンダリングに合わせて配信をスケジュールしたり、特定のAPIや環境を通じてのみ詳細を公開したりする場合があります。
つまり、オンラインのポーリングテストは ブラウザが観測したイベント配信を測定しています。これは比較には依然として有用ですが、デバイスのファームウェアレートを証明するものではありません。
このページが実際に何を受け取っているかを確認する
制限について説明する前に、実際に見てみるのが役立ちます。ボックス内でマウスをゆっくりと円を描くように数秒間動かしてください。
最新のChromeやEdgeなら、その数値はマウスの設定値に近くなるはずです。このボックスはブラウザが1フレームにまとめたレポートをすべて展開し、1件ずつ計時するからです。それより低くなる場合、原因がたいていマウスではなく経路にある理由を、このガイドの残りの部分で説明します。
よりクリーンなサンプルを実行する
以下を開き、 マウスポーリングレートテスト重いバックグラウンドタスクを閉じ、タブを表示したままにしてください。5秒間のサンプルを開始し、エリア内で滑らかな円を描くように継続的に動かしてください。動きを止めると実際のギャップが生じ、観測レートが低下します。
少なくとも3つのサンプルを実行してください。移動エリアと速度を可能な限り一定に保ってください。観測レート、中央値のイベント間隔、95パーセンタイルの間隔、イベント数を比較してください。単一の最高値は印象的に見えるかもしれませんが、長いギャップを隠している可能性があります。分布の方が安定性をよりよく表しています。
理想的な1000 Hzではレポート間の間隔は約1ミリ秒になりますが、ブラウザの配信は理想的でも直接的でもありません。ディスプレイのリフレッシュ、CPU負荷、イベントの結合はすべて、ページが見るものを再形成する可能性があります。
中央値とパーセンタイルを使用する
平均値は、特にテストエリアの端で動きが遅くなると、いくつかの長いポーズによって歪められる可能性があります。中央値は典型的な間隔をより堅牢に表します。95パーセンタイルは、間隔の有意な部分が通常よりもはるかに長いかどうかを示すのに役立ちます。
測定全体を通しての一貫性を確認してください。安定しているもののブラウザで観測されるレートが低い場合は、環境による制限が反映されている可能性があります。CPU負荷や電源モードによって変化する広い分布は、スケジューリングやシステムの状態を示唆しています。孤立した大きなスパイクは、単に手の動きが止まった瞬間を示しているだけかもしれません。
過度な主張をせずに条件を比較する
結果が予想外に低い場合は、別のブラウザで繰り返してください。マウスは電源供給のないハブを経由せず、直接接続してください。ノートPCの場合は、バッテリー駆動と電源接続時のモードを比較します。無線デバイスの場合は、レシーバーを近づけて干渉を減らしてください。これらの変数をテストする間、マウスの設定レートは変更しないでください。
次に、設定レートを変更して繰り返します。500 Hzと1000 Hzのプロファイルで同じ条件下で明らかに異なるブラウザ分布が得られる場合、たとえ報告された数値がファームウェアの設定と完全に一致しなくても、テストは意味のある相対的な変化を示しています。
高レートのデバイスは最も難しいケースです。フレームの合間に届いたレポートは、ページのハンドラーが動く前にまとめられます。テストはそれらを展開し、ChromeとEdgeでは生のポインター更新(1レポートにつき1イベント、それぞれ到着時刻付き)を受け取ります。残る制約は時計です。ページはイベントを0.1ミリ秒単位でしか計時できないため、0.125ミリ秒間隔の8000 Hzでは件数は正確でも個々の間隔は丸められます。その設定では中央値ではなくレートを読んでください。
高ければ良いというわけではありません
設定レートを高くするとハードウェアレポート間の最大間隔を短縮できますが、CPUと電力の需要も増加します。実用的なメリットは、デバイス、USBコントローラー、CPU、ゲームエンジン、フレームレート、ディスプレイという完全なチェーンに依存します。不安定な高レート設定は、安定した低レート設定よりも役に立たない場合があります。
ブラウザテストを使用して、違いや明らかな不安定さを特定してください。USBレポートのタイミングを証明する必要がある場合は、専用のハードウェアまたは低レベルツールを使用してください。Keymap Labsは、その境界を維持するために、結果を意図的に「観測レート」とラベル付けしています。
再現性のある問題を報告する
マウスのモデル、接続方法、設定レート、ブラウザ、オペレーティングシステム、電源モード、3回分の観測中央値、および動きが連続していたかどうかを記録してください。ポートやブラウザを変更して3回の実行すべてが変化する場合は、その比較を含めてください。
有用なレポートは手法を説明するものです。「1000 Hzのマウスがオンラインで742 Hzになる」という報告は不完全で、その差はブラウザのパスによるものかもしれません。「ブラウザAでの3回の連続サンプルは500 Hzの狭い分布を示したが、ブラウザBとデバイスユーティリティでは異なる結果が出た」という報告は、サポートやエンジニアリングが調査を開始する手がかりになります。