You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/virtual-desktop/graphics-enable-gpu-acceleration.md
+50-34Lines changed: 50 additions & 34 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,28 +4,23 @@ description: Learn how to enable GPU-accelerated rendering and encoding, includi
4
4
ms.topic: how-to
5
5
author: dougeby
6
6
ms.author: avdcontent
7
-
ms.date: 09/19/2024
7
+
ms.date: 05/28/2025
8
8
---
9
9
10
10
# Enable GPU acceleration for Azure Virtual Desktop
11
11
12
-
> [!IMPORTANT]
13
-
> High Efficiency Video Coding (H.265) hardware acceleration is currently in preview. See the [Supplemental Terms of Use for Microsoft Azure Previews](https://azure.microsoft.com/support/legal/preview-supplemental-terms/) for legal terms that apply to Azure features that are in beta, preview, or otherwise not yet released into general availability.
14
-
15
12
Azure Virtual Desktop supports graphics processing unit (GPU) acceleration in rendering and encoding for improved app performance and scalability using the Remote Desktop Protocol (RDP). GPU acceleration is crucial for graphics-intensive applications, such as those used by graphic designers, video editors, 3D modelers, data analysts, or visualization specialists.
16
13
17
14
There are three components to GPU acceleration in Azure Virtual Desktop that work together to improve the user experience:
18
15
19
16
-**GPU-accelerated application rendering**: Use the GPU to render graphics in a remote session.
20
17
21
-
-**GPU-accelerated frame encoding**: The Remote Desktop Protocol encodes all graphics rendered for transmission to the local device. When part of the screen is frequently updated, it's encoded with the Advanced Video Coding (AVC) video codec, also known as H.264.
22
-
23
-
-**Full-screen video encoding**: A full-screen video profile provides a higher frame rate and better user experience, but uses more network bandwidth and both session host and client resources. It benefits applications such as 3D modeling, CAD/CAM, or video playback and editing. You can choose to encode it with:
24
-
- AVC/H.264.
25
-
- High Efficiency Video Coding (HEVC), also known as H.265. This allows for 25-50% data compression compared to AVC/H.264, at the same video quality or improved quality at the same bitrate.
18
+
-**GPU-accelerated remote frame encoding**: The Remote Desktop Protocol encodes all graphics rendered for transmission to the local device. GPU-accelerated remote frame encoding uses the GPU to encode the rendered graphics frames to provide higher frame rates and better user experiences, although this feature may consume more network bandwidth and both session host and client resources. This benefits applications such as 3D modeling, CAD/CAM, or video playback and editing. You can choose to encode with:
19
+
- AVC/H.264
20
+
- Hight Efficiency Video Coding (HEVC), also known as H.265. This allows for 25-50% better data compression compared to AVC/H.264, at the same video quality or improved quality at the same bitrate.
26
21
27
22
> [!NOTE]
28
-
> - If you enable both HEVC/H.265 and AVC/H.264 hardware acceleration, but HEVC/H.265 isn't available on the local device, AVC/H.264 is used instead.
23
+
> - If you enable both HEVC/H.265 and AVC/H.264 hardware acceleration, but the HEVC/H.265 codec isn't available on the local device or your environment does not meet the prerequisites for HEVC/H.265, AVC/H.264 is used instead.
29
24
>
30
25
> - You can enable full-screen video encoding with AVC/H.264 even without GPU acceleration, but HEVC/H.265 requires a compatible GPU-enabled remote virtual machine.
31
26
>
@@ -37,12 +32,12 @@ This article shows you which Azure VM sizes you can use as a session host with G
37
32
38
33
The following table lists which Azure VM sizes are optimized for GPU acceleration and supported as session hosts in Azure Virtual Desktop:
39
34
40
-
| Azure VM size | GPU-accelerated application rendering | GPU-accelerated frame encoding | Full-screen video encoding |
The right choice of VM size depends on many factors, including your particular application workloads, desired quality of user experience, and cost. In general, larger and more capable GPUs offer a better user experience at a given user density. Smaller and fractional GPU sizes allow more fine-grained control over cost and quality.
48
43
@@ -86,11 +81,14 @@ In addition, for HEVC/H.265 hardware acceleration you also need:
- Microsoft HEVC codec installed. The Microsoft HEVC codec is included in clean installs of Windows 11 22H2 or later. You can also [purchase the Microsoft HEVC codec from the Microsoft Store](https://www.microsoft.com/store/productid/9NMZLZ57R3T7?ocid=pdpshare).
84
+
- Microsoft HEVC codec installed. This can be obtained 1 of 3 ways:
85
+
- The Microsoft HEVC codec is included in new installations of Windows 11 22H2 or later.
86
+
- You can [purchase the Microsoft HEVC codec from the Microsoft Store](https://www.microsoft.com/store/productid/9NMZLZ57R3T7?ocid=pdpshare).
87
+
- If you are using Windows App version 2.0.503.0 or later and don't already have the Microsoft HEVC codec installed, the app attempts to install a specialized version of the HEVC codec compatible only with remote sessions initiated through Windows App. Note that this method requires access to the Microsoft Store.
90
88
91
89
- One of the following apps to connect to a remote session. Other platforms and versions aren't supported.
92
-
- Windows App on Windows, version 1.3.278.0 or later.
93
-
- Remote Desktop app on Windows, version 1.2.4671.0 or later.
90
+
- Windows App on Windows, version 2.0.503.0 or later.
91
+
- Remote Desktop app on Windows, version 1.2.6081 or later.
94
92
95
93
## Install supported graphics drivers in your session hosts
96
94
@@ -107,17 +105,17 @@ When installing drivers, here are some important guidelines:
107
105
108
106
- For VMs sizes with an AMD GPU, install the AMD drivers that Azure provides. To download and learn how to install the driver, see [Install AMD GPU drivers on N-series VMs running Windows](/azure/virtual-machines/windows/n-series-amd-driver-setup).
109
107
110
-
## Enable GPU-accelerated application rendering, frame encoding, and full-screen video encoding
By default, remote sessions are rendered with the CPU and don't use available GPUs. You can enable GPU-accelerated application rendering, frame encoding, and full-screen video encoding using Microsoft Intune or Group Policy.
110
+
By default, Azure Virtual Desktop remote sessions are rendered with the CPU and don't use available GPUs. You can enable GPU-accelerated application rendering, and remote frame encoding using Microsoft Intune or Group Policy.
111
+
112
+
> [!IMPORTANT]
113
+
> If settings for GPU-acceleration using both H.264/AVC and H.265/HEVC are enabled, H.265/HEVC is prioritized for compatible remote sessions.
113
114
114
115
Select the relevant tab for your scenario.
115
116
116
117
# [Microsoft Intune](#tab/intune)
117
118
118
-
> [!IMPORTANT]
119
-
> HEVC/H.265 hardware acceleration isn't available in the Intune Settings Catalog yet.
120
-
121
119
To enable GPU-accelerated application rendering using Intune:
122
120
123
121
1. Sign in to the [Microsoft Intune admin center](https://endpoint.microsoft.com/).
@@ -128,21 +126,30 @@ To enable GPU-accelerated application rendering using Intune:
128
126
129
127
:::image type="content" source="media/enable-gpu-acceleration/remote-session-environment-intune.png" alt-text="A screenshot showing the redirection options in the Microsoft Intune portal." lightbox="media/enable-gpu-acceleration/remote-session-environment-intune.png":::
130
128
131
-
1. Select the following settings, then close the settings picker:
129
+
1. Select the following settings:
132
130
133
131
1. For GPU-accelerated application rendering, check the box for **Use hardware graphics adapters for all Remote Desktop Services sessions**.
134
132
135
-
1. For GPU accelerated frame encoding, check the box for **Configure H.264/AVC hardware encoding for Remote Desktop connections**.
133
+
1. For GPU-accelerated remote frame encoding using H.264/AVC:
134
+
1. Check the box for **Prioritize H.264/AVC 444 Graphics mode for Remote Desktop connections**.
135
+
1. Check the box for **Configure H.264/AVC hardware encoding for Remote Desktop connections**.
136
+
137
+
> [!NOTE]
138
+
> Checking the box to **Prioritize H.264 Graphics mode** without checking the box to **Configure hardware encoding** can result in software/CPU-based H.264/AVC full-screen video encoding.
139
+
140
+
1. For GPU-accelerated remote frame encoding using H.265/HEVC, browse to **Administrative templates** > **Windows Components** > **Remote Desktop Services** > **Remote Desktop Session Host** > **Azure Virtual Desktop** in the settings picker.
136
141
137
-
1.For full-screen video encoding, check the box for **Prioritize H.264/AVC 444 Graphics mode for Remote Desktop connections**.
142
+
1.To enable GPU-accelerated remote frame encoding using H.265/HEVC Check the box for **Configure H.265/HEVC hardware encoding for Remote Desktop Connections**, then close the settings picker.
138
143
139
144
1. Expand the **Administrative templates** category, then set toggle the switch for each setting as follows:
140
145
141
146
1. For GPU-accelerated application rendering, set **Use hardware graphics adapters for all Remote Desktop Services sessions** to **Enabled**.
142
147
143
-
1. For GPUaccelerated frame encoding, set **Configure H.264/AVC hardware encoding for Remote Desktop connections** to **Enabled**.
148
+
1. For GPU-accelerated remote frame encoding using H.264/AVC, set **Configure H.264/AVC hardware encoding for Remote Desktop connections** to **Enabled**.
144
149
145
150
1. For full-screen video encoding, set **Prioritize H.264/AVC 444 Graphics mode for Remote Desktop connections** to **Enabled**.
151
+
152
+
1. For GPU-accelerated remote frame encoding using H.265/HEVC set **Configure H.265/HEVC hardware encoding for Remote Desktop Connections** to **Enabled**.
146
153
147
154
1. Select **Next**.
148
155
@@ -170,11 +177,14 @@ To enable GPU-accelerated application rendering using Group Policy:
170
177
171
178
1. For GPU-accelerated application rendering, double-click the policy setting **Use hardware graphics adapters for all Remote Desktop Services sessions** to open it. Select **Enabled**, then select **OK**.
172
179
173
-
1. For GPU accelerated frame encoding, double-click the policy setting **Configure H.264/AVC hardware encoding for Remote Desktop Connections** to open it. Select **Enabled**, then select **OK**. If you're using Windows Server 2016, you see an extra drop-down menu in the setting; set **Prefer AVC Hardware Encoding** to **Always attempt**.
180
+
1. For GPU-accelerated remote frame encoding using H.264/AVC:
181
+
1. Double-click the policy setting **Prioritize H.264/AVC 444 Graphics mode for Remote Desktop connections** to open it. Select **Enabled**, then select **OK**.
182
+
1. Double-click the policy setting **Configure H.264/AVC hardware encoding for Remote Desktop Connections** to open it. Select **Enabled**, then select **OK**. If you're using Windows Server 2016, you see an extra drop-down menu in the setting; set **Prefer AVC Hardware Encoding** to **Always attempt**.
174
183
175
-
1. For full-screen video encoding using AVC/H.264 only, double-click the policy setting **Prioritize H.264/AVC 444 Graphics mode for Remote Desktop connections** to open it. Select **Enabled**, then select **OK**.
184
+
> [!NOTE]
185
+
> Enabling the policy setting to **Prioritize H.264 Graphics mode** without checking the box to **Configure hardware encoding** can result in software/CPU-based H.264/AVC full-screen video encoding.
176
186
177
-
1. For full-screen video encoding using HEVC/H.265 only, navigate to **Computer Configuration** > **Policies** > **Administrative Templates** > **Windows Components** > **Remote Desktop Services** > **Remote Desktop Session Host** > **Azure Virtual Desktop**.
:::image type="content" source="media/administrative-template/azure-virtual-desktop-gpo.png" alt-text="A screenshot showing the Azure Virtual Desktop options in Group Policy." lightbox="media/administrative-template/azure-virtual-desktop-gpo.png":::
180
190
@@ -217,7 +227,13 @@ To verify that a remote session is using GPU acceleration, GPU-accelerated appli
217
227
> [!TIP]
218
228
> For NVIDIA GPUs, you can also use the `nvidia-smi` utility to check for GPU utilization when running your application. For more information, see [Verify driver installation](/azure/virtual-machines/windows/n-series-driver-setup#verify-driver-installation).
219
229
220
-
1. Open Event Viewer from the start menu, or run `eventvwr.msc` from the command line.
230
+
1. To verify GPU-accelerated full-screen encoding using HEVC/H.265 you can open the **Connection Information** window from your session.
231
+
232
+
1. If your session is in full-screen mode, select the signal strength icon in the RDP connection bar at the top of your session window. If your session is in windowed mode, right-click on the top of the window and select **Connection Information** from the context menu.
233
+
234
+
1. Select **"See details"** to expand the window with additional information. If you see **Codecs Used: HEVC** under **Graphics details**, then GPU-accelerated frame encoding with HEVC/H.265 and full-screen video encoding is in use.
235
+
236
+
1. You can use Event Viewer to verify GPU acceleration with either AVC/H.264 or HEVC/H.265. To do so, open **Event Viewer** from the Start menu, or run `eventvwr.msc` from the command line.
221
237
222
238
1. Navigate to one of the following locations:
223
239
@@ -230,8 +246,8 @@ To verify that a remote session is using GPU acceleration, GPU-accelerated appli
230
246
- **Event ID 170**: If you see **AVC hardware encoder enabled: 1** in the event text, GPU-accelerated frame encoding is in use.
231
247
232
248
- **Event ID 162**:
233
-
- If you see **AVC available: 1, Initial Profile: 2048** in the event text, GPU-accelerated frame encoding with AVC/H.264 and full-screen video encoding is in use.
234
-
- If you see **AVC available: 1, Initial Profile: 32768** in the event text, GPU-accelerated frame encoding with HEVC/H.265 is in use.
249
+
- If you see **Avc444FullScreenProfile** in the event text, GPU-accelerated frame encoding with AVC/H.264 and full-screen video encoding is in use.
250
+
- If you see **HevcProfile** in the event text, GPU-accelerated frame encoding with HEVC/H.265 and full-screen video encoding is in use.
0 commit comments