Windows Remote Desktop / GPU acceleration
Remote Desktop
GPU Rendering / 60 FPS / AVC 4:4:4
This is not the basic Windows Remote Desktop ON/OFF setup. This guide configures the modern RDP graphics pipeline
so that a remote session can use hardware GPU acceleration for application rendering, DirectX/OpenGL workloads,
H.264/AVC 4:4:4 graphics mode, hardware encoding and a higher frame-rate limit up to 60 FPS.
Windows 11 / Enterprise
RDP 10
WDDM display driver
GPU render
AVC/H.264 4:4:4
60 FPS cap
Core idea
What this setup actually enables
Hardware graphics renderer
The RDP session should use the physical GPU as the default graphics renderer instead of the Microsoft Basic Render Driver.
This is essential for DirectX, Direct3D, WPF, accelerated UI rendering and part of the OpenGL workload.
H.264/AVC 4:4:4 + hardware encode
The image is not handled only through classic bitmap compression. RDP can use the AVC/H.264 4:4:4 profile
and the GPU hardware encoder, if supported by the GPU, driver and client.
30 FPS → 60 FPS limit
By default, an RDP session is often limited to around 30 FPS. The registry value DWMFRAMEINTERVAL raises this limit.
The documented value 15 sets the maximum frame-rate limit to 60 FPS.
and later removed for security reasons. Modern Windows 10/11 systems use RDP 10, WDDM, the hardware GPU renderer
and AVC/H.264 / HEVC encoding — not the old RemoteFX vGPU stack.
Supported systems
Which Windows editions make sense
Windows 10 Enterprise LTSC 2021
Version 21H2. A better option than LTSC 2019 for the modern RDP graphics pipeline.
Windows 10 Enterprise LTSC 2019
Version 1809. Usable, but the older build can have weaker compatibility with newer RDP policies.
Windows 11 Pro / Enterprise
Modern WDDM stack, newer RDP components and a strong choice for a workstation scenario.
Windows 11 Enterprise
Suitable for GPO, Intune, domain management and more consistent enterprise configuration.
Practical note
Windows Home editions are not suitable as an RDP host. For this configuration, use at least Pro,
preferably Enterprise or LTSC Enterprise. The host must use a full GPU driver from the hardware vendor,
not only Microsoft Basic Display Adapter.
Host configuration
Group Policy settings on the remote PC
Local Group Policy Editor path
gpedit.msc
Computer Configuration
└─ Administrative Templates
└─ Windows Components
└─ Remote Desktop Services
└─ Remote Desktop Session Host
└─ Remote Session Environment
1. Enable GPU renderer
This is the main switch. The RDP session should use the hardware graphics renderer instead of the software/basic renderer.
Use hardware graphics adapters for all Remote Desktop Services sessions
= Enabled
2. Enable AVC/H.264 hardware encode
Enables the preference for GPU-based H.264/AVC encoding. If the hardware encoder fails or is unavailable,
Windows can fall back to software encoding.
Configure H.264/AVC hardware encoding for Remote Desktop Connections
= Enabled
3. Enable AVC 4:4:4 graphics mode
The 4:4:4 mode is important for sharper text, UI rendering, graphics applications and better color precision
compared to a regular video-oriented mode.
Prioritize H.264/AVC 444 graphics mode for Remote Desktop Connections
= Enabled
4. Keep WDDM enabled
The WDDM display driver is the modern path. Disabling it only makes sense as troubleshooting for black screen issues
or rendering artifacts.
Use WDDM graphics display driver for Remote Desktop Connections
= Enabled / Not Configured
Configure H.264/AVC hardware encoding can result in CPU-based software encoding.
For a true GPU-level path, both policies should be active.
60 FPS cap
Raising the RDP frame-rate limit from 30 FPS to 60 FPS
Registry value
Microsoft documents the DWMFRAMEINTERVAL value as a workaround for increasing the maximum frame-rate limit.
The decimal value 15 sets the maximum limit to 60 FPS.
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations
DWORD 32-bit:
DWMFRAMEINTERVAL = 15 decimal
What this does not mean
This value does not guarantee a constant 60 FPS. It only raises the maximum frame-rate that RDP can deliver
to the client. Real performance depends on GPU, CPU, network quality, resolution, monitor count, encoder,
client-side decoding and the type of application.
- For 45+ FPS, use the documented value 15.
- A host PC restart is required after the change.
- Wi-Fi can produce worse results than wired LAN.
- Multiple monitors and 4K resolution significantly increase encoder load.
Implementation
Fast implementation through Command Prompt
reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services" /v bEnumerateHWBeforeSW /t REG_DWORD /d 1 /f
reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services" /v AVCHardwareEncodePreferred /t REG_DWORD /d 1 /f
reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services" /v AVC444ModePreferred /t REG_DWORD /d 1 /f
reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services" /v fEnableWddmDriver /t REG_DWORD /d 1 /f
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations" /v DWMFRAMEINTERVAL /t REG_DWORD /d 15 /f
gpupdate /force
shutdown /r /t 0
Client side
Client-side configuration
Do not disable hardware decode
Hardware decoding must not be forcibly disabled on the client. Otherwise, the host may encode through the GPU,
while the client still decodes the image through the CPU.
Computer Configuration
└─ Administrative Templates
└─ Windows Components
└─ Remote Desktop Services
└─ Remote Desktop Connection Client
Do not allow hardware accelerated decoding
= Disabled / Not Configured
Prefer LAN / low-latency path
For 45–60 FPS, avoid overloaded Wi-Fi, high-latency VPN connections or networks with packet loss.
The best result usually comes from wired LAN or a clean local VPN path.
- 1 Gbit LAN is a strong baseline.
- 5 GHz / 6 GHz Wi-Fi can work, but it is not deterministic.
- VPN adds latency and can interfere with UDP transport.
- For RDP over the internet, always use VPN or RD Gateway, never an exposed port 3389.
Verification
How to verify that the GPU path is really active
Task Manager
Start an application inside the remote session that can use GPU acceleration. On the host, open Task Manager →
Performance → GPU and watch the 3D or Video Encode graphs.
Event Viewer
For a direct RDP connection, check this log:
Applications and Services Logs → Microsoft → Windows → RemoteDesktopServices-RdpCoreTs → Operational.
Event ID 170 / 162
Event ID 170 can confirm AVC hardware encoder enabled: 1.
Event ID 162 can show Avc444FullScreenProfile.
Correct result
The target state is: the application inside the remote session uses the GPU renderer, the RDP image is encoded
through AVC/H.264 4:4:4, the encoder runs on the GPU and the frame-rate limit is no longer the original 30 FPS,
but up to 60 FPS depending on load and network conditions.
DirectX / OpenGL reality check
What to expect from DirectX and OpenGL over RDP
DirectX / Direct3D
DirectX workloads usually benefit from the RDP GPU renderer most clearly. CAD software, 3D viewports, WPF UI,
video compositing and more demanding desktop applications can run significantly better than without GPU policies.
OpenGL
OpenGL over RDP depends more heavily on the specific GPU driver and application. The purpose of this setup is
to force the RDP session to use the hardware graphics renderer. Even then, it is not guaranteed that every OpenGL
application will see the same capabilities as it would on the local console.
GDI Generic, Microsoft Basic Render Driveror fails during OpenGL initialization, the problem is usually in the GPU driver, the specific application,
or the fact that the driver does not expose the required acceleration path inside an RDP session.
Troubleshooting
When it still does not run through the GPU
GPU usage is still 0 %
- Check that Microsoft Basic Display Adapter is not active.
- Install the current Intel / AMD / NVIDIA GPU driver.
- Verify that policies are actually applied with
gpresult /H c:\gpresult.html. - Restart the host PC. A simple reconnect is often not enough.
AVC hardware encoder is not active
- Check Event Viewer → RdpCoreTs → Operational.
- Look for Event ID 170 and the text
AVC hardware encoder enabled: 1. - Check that the GPU has an available H.264 hardware encoder.
- Reduce monitor count or resolution and test again.
Black screen / rendering artifacts
- Update the GPU driver.
- Test another RDP client.
- Temporarily disable AVC 4:4:4 and verify stability.
- Disable WDDM only as emergency troubleshooting, not as the target configuration.
FPS is still low
- Verify
DWMFRAMEINTERVAL=15in decimal mode. - Restart the host PC.
- Test over wired LAN.
- Lower resolution / monitor count and compare the result.
Recommended final state
Recommended final profile
Host PC
- Windows 10 Enterprise LTSC 2021 / Windows 11 Pro / Windows 11 Enterprise.
- Current full GPU driver from the hardware vendor.
Use hardware graphics adapters...= Enabled.Configure H.264/AVC hardware encoding...= Enabled.Prioritize H.264/AVC 444 graphics mode...= Enabled.Use WDDM graphics display driver...= Enabled / Not Configured.DWMFRAMEINTERVAL=15for a 60 FPS maximum limit.
can be a better choice. RDP is excellent for administration, desktop work, development, office use, CAD/light 3D
and technical workflows, but it is not primarily a gaming streaming engine.
References