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

Game Lag White Paper › L2 Client OS and device

Power saving and thermal throttling Power saving, thermal throttling

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

Open the interactive card with figures and simulations →

Laptop battery mode, phone power-saving mode, and device heat slow down the CPU and GPU. With heat, the telltale sign is that the game runs fine at first and slows down only after a while.

Why Battery or power-saving mode is on, or the device gets hot → Effect CPU and GPU clocks drop by 30–50%, depending on the device → On screen FPS drops and the game stutters, right from the start with power saving, or after a few minutes to about 20 minutes of play with heat

Symptoms
Stutter, Input lag
Factors
Stall
Who’s affected
Just me
When
The longer it runs, Always
Owner
Primary owner External (External) · Also Game team (Client development)
Game team action items
Adjust graphics options automatically, manage heat with a frame cap, lower options ahead of time based on the thermal level the OS reports (iOS thermalState, Android thermal status API), mark the executable so laptops with two graphics chips use the discrete GPU (export NvOptimusEnablement and AmdPowerXpressRequestHighPerformance).
External action items
Tell players to turn off power-saving mode and to keep laptops plugged in; for reports like “it’s a good laptop but FPS is low,” check which graphics chip the game runs on and tell players to assign the game to the high-performance GPU in Windows graphics settings.
On the graph
Slow climb · FPS, CPU/GPU clocks
Where to look
Record PresentMon’s CPUFrequency, GPUFrequency, CPUTemperature, and GPUTemperature with frame time for 20–30 minutes, and check which graphics chip the game runs on with the GPU engine column in Task Manager’s Processes tab. On mobile, record Android’s thermal API (getThermalHeadroom, thermal status) and iOS thermalState together with FPS
Confirmed if
FPS drops from the point where the temperature rises and clocks fall, or clocks are low only in battery or power-saving mode. Or the game is running on integrated graphics
Ruled out if
FPS drops while clocks and temperature hold steady: “Background processes taking up CPU” or “Client memory leak”
Check with
The player’s own environment
Learn more
Laptops with two graphics chips sometimes run games on the slower integrated graphics to save power. For a report like “it’s a good laptop but FPS is low,” first check which graphics chip the game is running on.

Sources

  1. Thermal API Android (Google)
    Devices can sustain high performance only for a limited time before heat forces throttling; recommends watching thermal status and lowering the load ahead of time
  2. thermalState Apple
    The current thermal level reported by iOS; as the level rises, the app should reduce its resource use
  3. Selecting the Best Graphics Device to Run a 3D Intensive Application AMD
    On laptops with two graphics chips, running on integrated graphics can turn a 60 FPS game into a 30 FPS one; exporting AmdPowerXpressRequestHighPerformance selects the discrete GPU
  4. PresentMon Capture Application (README-CaptureApplication.md) Intel
    Records CPUFrequency and GPUFrequency (clocks) and CPUTemperature and GPUTemperature (temperatures) per frame
  5. GPUs in the task manager Microsoft
    Task Manager has columns showing per-process GPU usage and which GPU and engine that usage belongs to

See also

Same layer: L2 Client OS and device

Same symptom (Stutter), other layers

View the interactive card with figures and simulations