한국어English日本語简体中文繁體中文DeutschไทยTiếng ViệtРусскийPortuguês (Brasil)EspañolBahasa Indonesia

Game Lag White Paper › L2 Client OS and device

NIC power saving and driver issues NIC power saving, driver bugs

Cause ID co-driver · Primary owner External (External) · Also Game team (Client development)

Open the interactive card with figures and simulations →

When a network card or Wi-Fi chip enters a power-saving state between packets, it takes time to wake back up.

Why Network device power saving is on, or the driver is outdated → Effect Wake-up delay, occasional device restarts → On screen Irregular delays, occasional freezes lasting several seconds

Symptoms
Stutter, Freeze
Factors
Jitter, Packet loss
Who’s affected
Just me
When
After sitting idle, Randomly
Owner
Primary owner External (External) · Also Game team (Client development)
Game team action items
On Android clients, request the low-latency Wi-Fi mode (WIFI_MODE_FULL_LOW_LATENCY) during play to turn off Wi-Fi power saving.
External action items
Tell players to update network drivers and turn off network device power saving in Device Manager; if the whole screen hitches and audio crackles, have them find the driver at fault with LatencyMon.
On the graph
Random spikes · DPC/ISR time, RTT to the router
Where to look
Record with Windows Performance Recorder (WPR), find long-running drivers (Module column) in the DPC/ISR graph in Windows Performance Analyzer (WPA), and check the network adapter’s power management (power saving) settings in Device Manager
Confirmed if
At the hitch times, network driver DPCs and ISRs run for several ms at a stretch, or turning off power saving makes the irregular delays go away
Ruled out if
DPCs are short and turning off power saving changes nothing: “Wi-Fi interference and weak signal” or “Wi-Fi background scanning”
Check with
The player’s own environment
Learn more
When a driver holds the CPU for a long time handling interrupts (Windows calls this DPC latency), the game thread can’t use that core either. The whole screen then hitches and audio crackles even though CPU usage is low. A tool such as LatencyMon can find which driver is at fault; Wi-Fi and Ethernet drivers are common culprits.

Sources

  1. Introduction to NDIS Selective Suspend Microsoft
    Windows can put an idle network adapter into a low-power state (selective suspend)
  2. Guidelines for Writing DPC Routines Microsoft
    All threads on that core stop while a DPC runs, so the guidance is to keep each one under 100 µs
  3. Wi-Fi low-latency mode Android (Google)
    In Android’s low-latency Wi-Fi mode, the framework explicitly turns off Wi-Fi power saving
  4. CPU Analysis Microsoft
    WPA’s DPC/ISR graph: the duration of each uninterrupted DPC or ISR run and the module containing that function (Module)

See also

Same layer: L2 Client OS and device

Same symptom (Stutter), other layers

View the interactive card with figures and simulations