How to Monitor GPU Usage in the Windows Task Manager

Windows 10’s Task Manager has detailed GPU-monitoring tools hidden in it. You can view per-application and system-wide GPU usage, and Microsoft promises the Task Manager’s numbers will be more accurate than the ones in third-party utilities.

How This Works

These GPU features were added in Windows 10’s Fall Creators Update, also known as Windows 10 version 1709. If you’re using Windows 7, 8, or an older version of Windows 10, you won’t see these tools in your Task Manager. Here’s how to check which version of Windows 10 you have.

Windows uses newer features in the Windows Display Driver Model to pull this information directly from the GPU scheduler (VidSCH) and video memory manager (VidMm) in the WDDM’s graphics kernel, which are responsible for actually allocating the resources. It shows very accurate data no matter which API applications use to access the GPU—Microsoft DirectX, OpenGL, Vulkan, OpenCL, NVIDIA CUDA, AMD Mantle, or anything else.

That’s why only systems with WDDM 2.0-compatible GPUs show this information in the Task Manager. If you don’t see it, your system’s GPU probably uses an older type of driver.

You can check which version of WDDM your GPU driver is using by pressing Windows+R, typing “dxdiag” into the box, and then pressing Enter to open the DirectX Diagnostic tool. Click the “Display” tab and look to the right of “Driver Model” under Drivers. If you see a “WDDM 2.x” driver here, your system is compatible. If you see a “WDDM 1.x” driver here, your GPU isn’t compatible.

How to View an Application’s GPU Usage

This information is available in the Task Manager, although it’s hidden by default. To access it, open the Task Manager by right-clicking any empty space on your taskbar and selecting “Task Manager” or by pressing Ctrl+Shift+Esc on your keyboard.

Click the “More details” option at the bottom of the Task Manager window if you see the standard, simple view.

In the full view of Task Manager, on the “Processes” tab, right-click any column header, and then enable the “GPU” option. This adds a GPU column that lets you see the percentage of GPU resources each application is using.

You can also enable the “GPU Engine” option to see which GPU engine an application is using.

The total GPU usage of all applications on your system is displayed at the top of the GPU column. Click the GPU column to sort the list and see which applications are using your GPU the most at the moment.

The number in the GPU column is the highest usage the application has across all engines. So, for example, if an application was using 50% of a GPU’s 3D engine and 2% of a GPU’s video decode engine, you’d just see the number 50% appear under the GPU column for that application.

The GPU Engine column displays each application is using. This shows you both which physical GPU an application is using and which engine it’s using—for example, whether it’s using the 3D engine or the video decode engine. You can identify which GPU corresponds to a particular number by checking the Performance tab, which we’ll talk about in the next section.

How to View an Application’s Video Memory Usage

If you’re curious how much video memory an application is using, you’ll have to switch over to the Details tab in Task Manager. On the Details tab, right-click any column header, and then click the “Select Columns” option. Scroll down and enable the “GPU,” “GPU Engine,” “Dedicated GPU Memory,” and “Shared GPU Memory” columns. The first two are also available on the Processes tab, but the latter two memory options are only available in the Details pane.

The “Dedicated GPU Memory” column shows how much memory an application is using on your GPU. If your PC has a discrete NVIDIA or AMD graphics card, this is how much of its VRAM—that is, the physical memory on your graphics card—the application is using. If you have integrated graphics, a portion of your normal system RAM is reserved exclusively for your graphics hardware. This shows how much of that reserved memory the application is using.

Windows also allows applications to store some data in the system’s normal DRAM memory. The “Shared GPU Memory” column shows how much memory an application is currently using for video features out of the computer’s normal system RAM.

You can click any of the columns to sort by them and view which application is using the most resources. For example, to view the applications using the most video memory on your GPU, click the “Dedicated GPU Memory” column.

How to Monitor Overall GPU Resource Usage

To monitor overall GPU resource usage statistics, click the “Performance” tab and look for the “GPU” option in the sidebar—you may have to scroll down to see it. If your computer has multiple GPUs, you’ll see multiple GPU options here.

If you have multiple linked GPUs—using a feature like NVIDIA SLI or AMD Crossfire—you’ll see them identified by a “Link #” in their name.

For example, in the below screenshot, the system has three GPUs. “GPU 0” is an integrated Intel graphics GPU. “GPU 1” and “GPU 2” are NVIDIA GeForce GPUs that are linked together using NVIDIA SLI. The text “Link 0” means they’re both part of Link 0.

Windows displays real-time GPU usage here. By default, the Task Manager tries to display the most interesting four engines according to what’s going on on your system. You’ll see different graphs here depending on whether you’re playing 3D games or encoding videos, for example. However, you can click any of the names above the graphs and select any of the available engines to choose what appears.

The name of your GPU also appears in the sidebar and at the top of this window, making it easy to check which graphics hardware your PC has installed.

You’ll also see graphs of dedicated and shared GPU memory usage.  Dedicated GPU memory usage refers to how much of the GPU’s dedicated memory is being used. On a discrete GPU, that’s the RAM on the graphics card itself. For integrated graphics, that’s how much of the system memory that’s reserved for graphics is actually in use.

Shared GPU memory usage refers to how much of the system’s overall memory is being used for GPU tasks. This memory can be used for either normal system tasks or video tasks.

At the bottom of the window, you’ll see information like the version number of the video driver you have installed, the data that video driver was created, and the physical location of the GPU in your system.

If you want to view this information in a smaller window that’s easier to keep on your screen, double-click somewhere inside the GPU view or right-click anywhere inside it and select the “Graph Summary View” option. You can expand the window by double-clicking in the pane or by right-clicking in it and unchecking the “Graph Summary View” option.

You can also right-click a graph and select Change Graph To > Single Engine to view just a single GPU engine graph above the memory usage graphs.

To keep this window visible on your screen at all times, click Options > Always on top.

Double-click inside the GPU pane once again and you’ll have a minimal floating window you can position anywhere you want on your screen.

For more detailed information about exactly how this feature works and exactly what the information here represents, consult Microsoft’s blog.

Chris Hoffman is a technology writer and all-around computer geek. He's as at home using the Linux terminal as he is digging into the Windows registry. Connect with him on Twitter.