[BUG] Claude Desktop renders on iGPU at 99% during streaming on hybrid laptops, Per-App GPU preference ignored

Resolved 💬 2 comments Opened Apr 26, 2026 by tpaes Closed Apr 29, 2026

Preflight Checklist

  • [x] I have searched existing issues and this hasn't been reported yet
  • [x] This is a single bug report (please file separate reports for different bugs)
  • [x] I am using the latest version of Claude Code

What's Wrong?

Environment

  • Claude Desktop: 1.4758.0.0 (MSIX/Microsoft Store install)
  • OS: Windows 11 26100.8246
  • Hardware: Razer Blade 15 Advanced 2020 (RZ09-0330x), hybrid graphics
  • iGPU: Intel UHD 630 (driver 31.0.101.2141)
  • dGPU: NVIDIA RTX 2070 Super Max-Q (driver 572.83)
  • Display physically wired to iGPU (typical for laptops)

Symptom

  • During answer streaming: Intel iGPU 3D at 99% sustained
  • Renderer process + GPU process at ~50% CPU each (~100% of one core combined)
  • In idle: still 4% with peaks (after empty chat)
  • Persists after full Claude restart

Investigation
A/B-tested with two Intel driver versions:

  • 27.20.100.8476 (2020 Razer-OEM): 99% during streaming
  • 31.0.101.2141 (April 2026): 99% during streaming

→ Driver is not the cause.

Per-app GPU preference attempts — all ineffective:

  • Windows Settings → Graphics → Höchstleistung (NVIDIA)
  • NVIDIA Control Panel → Program profile
  • nvidia-smi confirms claude.exe never appears on dGPU,

P8 idle state, 0% utilization

Suspected root cause
Electron/Chromium picks GPU adapter based on window-surface LUID.
Display is bound to iGPU on this laptop, so the renderer surface
defaults to Intel. The MSIX/Store packaging likely also blocks
the per-app preference from reaching the renderer process.

Suggested fix candidates

  1. Export NvOptimusEnablement = 0x00000001 symbol in the

Electron main binary so Optimus laptops route the process to dGPU

  1. Provide an in-app Hardware Acceleration toggle (currently absent

in Settings)

  1. Investigate whether the streaming markdown re-render can be

throttled / batched to reduce per-token compositor work

What Should Happen?

On hybrid-graphics laptops where the display is physically wired to the iGPU,
Claude Desktop should not pin one full CPU core to the renderer/GPU process
during answer streaming, and Intel iGPU 3D utilization should not stay at
sustained 99% during streaming.

Concretely, any of the following would resolve the issue:

  1. Export the NvOptimusEnablement = 0x00000001 symbol in the Electron main

binary so Windows Optimus routes Claude Desktop to the discrete NVIDIA GPU
on hybrid laptops where one is available.

  1. Add an in-app "Hardware Acceleration" toggle under Settings, so users

on platforms where GPU rendering misbehaves can fall back to CPU rendering
without external workarounds.

  1. Throttle or batch the streaming markdown re-render so that per-token

updates do not trigger a full layout/composite pass — for example by
coalescing updates within an animation frame, or rendering only a sliding
window of recent content while the response is still streaming.

  1. Honor the Windows per-app GPU preference and the NVIDIA Control Panel

program profile when set on the MSIX-installed Claude executable.

Expected end-user effect: streaming a long answer should produce the same
GPU/CPU profile as an equivalent web-based chat (e.g. claude.ai in Chrome),
which on the same machine stays well below 30% iGPU 3D utilization.

Error Messages/Logs

Steps to Reproduce

  1. Use a Windows 11 hybrid-graphics laptop where the internal display is

wired to the integrated GPU (typical for most modern laptops with both
Intel/AMD iGPU and NVIDIA/AMD dGPU). Tested on a Razer Blade 15
Advanced 2020 (RZ09-0330x) with Intel UHD 630 + NVIDIA RTX 2070 Super
Max-Q.

  1. Install Claude Desktop 1.4758.0.0 from the Microsoft Store

(MSIX package).

  1. Open Task Manager → Performance tab → select the integrated GPU

(Intel UHD Graphics in this case). Keep the 3D-utilization graph
visible during the next steps.

  1. Start Claude Desktop, open any chat (existing or new — both reproduce).
  1. Send any prompt that produces a longer reply with mixed content

(markdown, code blocks, tables). E.g. "Write a 500-word explanation
of how PostgreSQL handles MVCC, with a code example".

  1. Observe during streaming:
  • Intel UHD GPU 3D-utilization climbs to ~99% and stays there for the

duration of the streaming.

  • Task Manager → Details: claude.exe renderer process at ~50% CPU

and claude.exe gpu-process at ~50% CPU.

  • In nvidia-smi, claude.exe never appears, NVIDIA stays in P8 idle.
  1. After the answer finishes, observe:
  • Intel UHD GPU 3D drops to ~4% with occasional peaks.
  • CPU usage of renderer + gpu-process drops back to single-digit %.

Reproduces consistently on every streaming response.

Things tried that did NOT change the behavior:

  • Setting Claude.exe to "Höchstleistung / High performance (NVIDIA)" in

Windows Settings → System → Display → Graphics

  • Adding Claude.exe as program profile in NVIDIA Control Panel with

"High-performance NVIDIA processor" preferred

  • Full app restart (kill all claude.exe + tray icon + cowork-svc.exe,

then relaunch)

  • Rolling back Intel UHD driver from 31.0.101.2141 (April 2026) to

the OEM version 27.20.100.8476 (mid 2020), and re-applying the
newer driver — both behave identically.

The only state change that does help is closing Claude Desktop entirely,
since iGPU load only spikes during active rendering.

Claude Model

None

Is this a regression?

Yes, this worked in a previous version

Last Working Version

_No response_

Claude Code Version

Not applicable — this issue concerns Claude Desktop (MSIX, version 1.4758.0.0).

Platform

Other

Operating System

Windows

Terminal/Shell

PowerShell

Additional Information

_No response_

View original on GitHub ↗

This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗