ゲームのラグはSNPで解決するかもしれない
投稿日:
更新日:
※当ページはアフィリエイトプログラムによる収益を得ています。
ゲームプレイ時の「ラグ」は、プレイ品質を下げる上に精神的なストレスにもなるため、ゲーマーの大敵です。
しかも原因の特定が難しく、単純にインターネット通信速度の低下が原因の場合もあれば、OS側の設定が原因であることもあります。
また、インターネット回線の速度が上昇するとともに、ラグが起こりやすい環境になる可能性もあるのです。そこで今回は、ラグを解消するために「SNP設定」の見直しを紹介します。
速度が上がったのにラグが起こりやすい?
2022年12月現在、一般的な光回線の速度は「1~10Gbps」に達しています。実際の通信速度は10~200Mbpsに落ち着くことが多いのですが、高画質で精細な表現や動画コンテンツ、VRコンテンツの増加で、10年ほど前に比べるとデータ通信料は倍増しています。
通信データ量が増えているということは、それだけCPUにかかるパケット処理の負荷も高くなっているということ。CPUの処理能力の一部はパケット処理に使われており、これを解放することでゲームの処理に使われるリソースを増やすことができるのです。
実際に企業向けのサーバーなどでは、CPUにかかるパケット処理をNICに代替させる「NICオフロード」が普及しています。
一般のPCにおいても、パケット処理の負荷がラグを引き起こしていることが少なくありません。そこでCPUの負荷を軽減してNICに任せる機能「SNP(Scalable Networking Pack)」が登場しました。
SNPはWindowsによって提供されるパケット処理機能であり、Windows8以降ならば標準でOnになっています。しかし、このSNPが別の問題を引き起こしていることもあるのです。
SNPがOnの状態で通信が不安定に?
SNPがOnになると、本来CPUが行っていたパケット処理をNICに引き渡すため、通信速度は上がることが多いですね。
しかし、どうやら通信の安定性という面では低下する傾向があるようなのです。NIC側が十分な処理性能を持っている場合、SNPをOnにすると通信の高速化・安定化が進みます。
一方、NICがそこまで高性能ではない場合、通信速度は上昇するものの安定性を欠いてしまって、ラグを引き起こす可能性があるわけです。
SNPは「本来はCPUが行っている処理を、別なハードウェアに移管して不可を分散させる」機能ですが、別なハードウェア(NIC)はOSの核であるカーネルが直接操作します。
カーネルはハードウェアの操作において非常に強い権限をもっており、「NICの処理に大量のメモリを使う」という動きもできてしまうため、ほかの処理に必要なリソースを奪ってしまうことがあるのです。
こうしたことから、SNPがOnになるとアプリケーションの処理速度が低下してラグの原因になるなど、さまざまな不具合が生じてしまいます。
もし、通信速度に問題がない状況でラグが頻発する場合には、SNPをOffにしてみてみましょう。
SNPをOffにする手順
今回はWindows10を想定して、SNPをOffにする手順を紹介します。
- スタートメニュー右クリックから「Windows PowerShell(管理者)」をクリック
- コマンドプロンプトに「netsh int tcp set global rss=disabled」を入力してエンター
- 続けて「netsh int tcp set global autotuninglevel=disabled」を入力してエンター
これでWindows10におけるSNPは無効になります。ラグの原因としては、SNPのほかにも「タスクオフロード」「受信ウィンドウ自動チューニングレベル」を無効にする方法がありますが、まずはSNPの無効化から始めてみてください。