ToolActToolAct

画面リフレッシュレートテスト

モニターの実際のリフレッシュレートを検出、高フレームレート性能をテスト

0 fps
現在のFPS
-- Hz
推定リフレッシュレート
0 フレーム
フレーム数
0
テスト時間
テストモード
0fps
停止中
FPS 現在のFPS

画面リフレッシュレートとは?

画面リフレッシュレートは、ディスプレイが1秒間に画面を更新する回数を指し、Hz(ヘルツ)で測定されます。一般的なリフレッシュレートには60Hz、75Hz、120Hz、144Hz、240Hzがあります。より高いリフレッシュレートは、より滑らかなアニメーションとゲーム体験を意味し、モーションブラーとスクリーンテアリングを減少させます。

使い方

使い方

  1. テストモードを選択:バウンシングボール、スクロールストライプ、フラッシュテストまたはUFOテスト
  2. テスト開始ボタンをクリックして検出を開始
  3. アニメーションの滑らかさとFPS値の変化を確認
  4. 数秒待つと推定リフレッシュレートの結果が表示されます
  5. フルスクリーンでテストするとより正確なデータを得られます

テストのヒント

  • テスト前にアニメーション負荷の高い他のタブを閉じてください。ブラウザの負荷、省電力モード、外部ディスプレイが測定の滑らかさに影響する場合があります。
  • 表示されたFPSを、OSやグラフィックスコントロールパネルのモニター設定と照らし合わせて確認しましょう。

利用シーン

アニメーションフレームからディスプレイのリフレッシュレートを推定するテストを開始するとrequestAnimationFrameのタイムスタンプが収集され、現在のFPSが計算され、60、75、120、144、165、240、360Hzなどの一般的なリフレッシュレートの中で最も近いものが推定されます。フレーム数と経過時間でサンプルが十分に長いかを判断できます。ページ読み込み直後の最初の500msより、3秒間のウィンドウのほうがはるかにクリアな推定値が得られます。
複数のモーションパターンでカクつきを見つけるテスト実行中にバウンシングボール、スクロールバー、点滅フレーム、UFO風の動きを切り替えます。異なるパターンは、単一のFPS数値では見えないティアリング、ジュダー、モーションクリアリティ、バックライトストローブ(OLEDのPWM調光)を可視化します。見た目の変わらない144Hzと165Hzのパネルを選ぶ際の判断材料になります。
フレーム安定性を経時的に監視するツールはローリングなFPS履歴を保持し、60Hzの参照線付きでキャンバスチャートに描画します。モニター、ブラウザタブ、電源モード、外部ディスプレイ、負荷時のアニメーションパフォーマンスの比較に便利です。テストタブは可視状態に保ってください。タブがフォーカスを失うとバックグラウンドスロットリングで120Hzから30fpsに制限されることがあります。
可変リフレッシュディスプレイでフレームドロップを検出するバウンシングボール実行中にFPS履歴チャートを監視しましょう。FreeSyncまたはG-SyncディスプレイはLFC範囲内で安定した水平線を維持すべきで、フレームドロップはその下へのディップとして現れます。線が60Hzにスナップし続ける場合、ホットプラグイベント、HDMI 1.4ケーブルのボトルネック、ドライバーオーバーライドの後にパネルが固定モードにフォールバックしている可能性があります。
ケーブル、アダプター、OS設定の連鎖を検証する推定レートがパネルのスペックを下回る場合、HDMI 2.1、DisplayPort 1.4、またはUSB-C Alt-Modeケーブルが目標の帯域幅に対応しているか、OSのディスプレイ設定が低いリフレッシュレートにロックされていないか、省電力モードが無効になっているかを確認してください。バックグラウンドタブのブラウザスロットリングは、GPUが別の値を報告していても、パネルの実際のレートより低い値に制限することがあります。

仕組み

リフレッシュレートの推定はrequestAnimationFrame(t => ...)を使用します。これはディスプレイの垂直同期信号に同期したブラウザコールバックです。各呼び出しはミリ秒単位のDOMHighResTimeStampを受け取り、連続するタイムスタンプの差分からフレームごとの間隔を得て、それらの移動平均で1000を割ることでヘルツ単位の推定レートを算出します。推定器は数百フレームを収集して一時的なスタックを平均化し、結果を最も近い一般的なパネルレートにスナップします:60、75、90、120、144、165、240、または360Hzです。 測定はチェーン内の最も遅いリンクに制約されます。144Hzのパネルでも、OSのディスプレイ設定が60Hzにロックされている場合、HDMI 1.4ケーブルが帯域幅を処理できない場合(1080p@144Hzは約7.6Gbps必要で、色深度を考慮するとHDMI 1.4の8.16Gbpsの余裕を超えます)、またはGPUドライバーが省電力モードで制限をかけている場合は60Hzとして読み取られます。可変リフレッシュレート技術(AMD FreeSync、NVIDIA G-Sync)は、パネルが動作範囲内の任意のレートを維持し、コンテンツが最小値未満の場合にLow Framerate Compensationにドロップすることを可能にします。 ブラウザのスケジューリングにも独自の上限があります。テストタブがフォーカスを失うと、ChromiumとFirefoxの両方でPage Visibilityの下でrequestAnimationFrameが約1Hzにスロットリングされ、Intersection Observerのスロットリングはアクティブなタブでも非表示のiframeを約30fpsに制限します。GL実装とソフトウェアフォールバックの合成パスもGCの一時停止中にフレームをドロップすることがあるため、安定した読み取りにはテストタブをフォアグラウンドに保ち、他のタブでフルスクリーン動画を再生せず、スナップレートの出力を信頼する前に少なくとも3秒のサンプルウィンドウが必要です。

  • サンプリング:requestAnimationFrameタイムスタンプの差分を計算、FPS = 1000 / 平均(フレーム間隔ms)、推定器は60/75/90/120/144/165/240/360Hzのバケットにスナップ。
  • 帯域幅ゲート:1080p@144Hzは約7.6Gbps必要、4K@120Hzは約25Gbps必要。最上位層にはHDMI 2.1(48Gbps)またはDSC付きDisplayPort 1.4(32.4Gbps)が必要。
  • OS/ドライバー制限:パネルが144Hzを通知していても、Windowsのディスプレイ設定やNVIDIAコントロールパネルが60Hzに固定することがある。rAFはコンポジターに与えられた値を超えることはできない。
  • VRR(FreeSync/G-Sync):パネルレートが範囲内で浮動、LFCしきい値を下回るとGPUがフレームを複製して明るさを維持。
  • タブスロットリング:Page Visibilityがバックグラウンドタブを約1Hzに低下、クロスオリジンの非表示iframeは親タブがフォアグラウンドでも約30fpsにスロットリング。
  • サンプルウィンドウ:500ms未満の読み取りはノイジー。安定した推定を得るには、タブをフォアグラウンドにして少なくとも3秒収集してから標準レートにスナップ。

使用例

標準的な 60 Hz オフィスモニター

モード:         Bouncing Ball
計測時間:        5 秒
フレーム数:     298
現在の FPS:    59.6
推定リフレッシュレート: 60 Hz

2020 年以前に販売されたほとんどのデスクトップ・ノート PC ディスプレイは 60 Hz が上限です。

144 Hz ゲーミングモニター

モード:         UFO Test
計測時間:        5 秒
フレーム数:     718
現在の FPS:    143.6
推定リフレッシュレート: 144 Hz

eスポーツ向けパネルでは標準的。DisplayPort 1.2+ または HDMI 2.0+ が必要で、OS 側のレートも 144 Hz に設定する必要があります。

バックグラウンドタブのスロットリング

モード:         Scrolling Bars
現在の FPS:    30.0
推定リフレッシュレート: 30 Hz(クランプ)

タブがフォーカスを失うと Chrome と Firefox は requestAnimationFrame を約 30 fps に制限するため、テストタブは常に表示しておいてください。

よくある質問

テストはどのようにリフレッシュレートを測定しますか?

requestAnimationFrame() を使用して 1 秒間に描画されるフレーム数を数えます。このコールバックはディスプレイの 1 リフレッシュごとに 1 回呼ばれるため、フレーム数を経過時間で割ることで実効リフレッシュレートが得られます。結果は通常きれいな数値(60、75、100、120、144、165、240 Hz)に丸められます。

なぜモニターのスペックより低い値になるのですか?

よくある原因:省電力モードで GPU が抑制されている/モニターケーブルが定格リフレッシュレートに対応していない(HDMI 1.4 は 4 K で 60 Hz が上限、それ以上には DP 1.2+ または HDMI 2.0+ が必要)/モニターは対応していても OS が 60 Hz に設定されている/別のタブがメインスレッドを占有しフレームが落ちている、など。

なぜ 60 Hz モニターで 60 Hz より高い値が出るのですか?

一部のブラウザでは、特に最初の数フレームで requestAnimationFrame が実際のディスプレイ更新よりも速く発火することがあります。マルチモニター環境では Chrome が最も高いリフレッシュレートのディスプレイ値を採用する場合もあります。安定した値を得るには 10 秒以上テストを継続してください。

フレームレート(FPS)とどう違うのですか?

リフレッシュレートはモニターが 1 秒間に表示できる最大フレーム数です。FPS はアプリケーションが生成しているフレーム数です。両者は独立しており、60 Hz モニター上で 200 FPS のゲームでも実際に表示される独立したフレームは 1 秒あたり 60 枚だけです(VSync オフならティアリングが発生します)。

可変リフレッシュレート(G-Sync、FreeSync)はどうなりますか?

VRR モニターは GPU 出力に合わせてフレームごとにリフレッシュレートを変えます。このページはテスト中の平均レートを測定するため、VRR ディスプレイではモニターの最大値ではなく、ブラウザが現在描画しているレートが反映されます。

保存やアップロードは行われますか?

いいえ。測定はすべてクライアントサイドで行われます。結果は記録も送信もされません。

ウィンドウ表示と全画面表示のどちらでも実行できますか?

はい、ただしバックグラウンドのタブやフォーカスを失ったウィンドウはバッテリー節約のためブラウザによって抑制され、しばしば約 1 fps まで落ちます。正確な結果を得るにはタブをフォーカスし、できれば全画面表示で実行してください。