Quick wins for a faster PC:
Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Repair Windows errors before they cause bigger problemsFix Now →Scan for outdated or missing drivers - takes under a minuteDriver Scan →The most reliable way to tell is to start a real inference request, then read the inference runtime’s device-placement status while the model is generating. Use live operating-system or vendor monitoring as confirmation. For Ollama, ollama ps is the clearest first check because its PROCESSOR column reports GPU-only, CPU-only, or split placement.
A model that is merely installed, loaded, or sitting idle proves nothing. GPU work can occur in short bursts, so check during prompt processing or token generation rather than relying on one idle utilization graph.
As an Amazon Associate I earn from qualifying purchases.
What a GPU check can actually establish
There are three different questions people often combine when they ask whether an AI model “uses the GPU”:
Recommended Free Tools
- Where is the model placed? The runtime can report whether model data is on the GPU, the CPU, or divided between them.
- Is the GPU doing work right now? Task Manager or a vendor utility can show activity during an inference request.
- Which device or process is responsible? System and vendor tools can identify a particular GPU and, where supported, the process using it.
The runtime’s placement report answers the first question most directly. Live monitoring answers the second and helps corroborate the first. Neither method alone guarantees that every operation, tensor, or supporting task is executing on the GPU. A split report, for example, means the model uses both CPU and GPU memory.
#1 Best Overall
- Axial-tech fans now feature a smaller fan hub that facilitates longer blades and a barrier ring that increases downward air pressure
- 2.5-slot design allows for greater build compatibility while maintaining cooling performance
- 0dB technology lets you enjoy light gaming in relative silence
- Dual BIOS switch lets you toggle between Quiet and Performance BIOS profiles
- Dual ball fan bearings last up to twice as long as sleeve bearing designs
Do not use a universal utilization percentage or VRAM rule as a verdict. Utilization depends on model size, prompt length, batching, token-generation speed, driver behavior, and the runtime backend. The practical test is to observe the exact model and request you care about.
Check the inference runtime before checking graphs
Ollama: run ollama ps
With Ollama, load the model and submit a prompt. While it remains loaded, open a terminal and run:
ollama ps
Ollama’s documentation says, “The Processor column will show which memory the model was loaded into:” The resulting value distinguishes the important cases:
The Tool Desk
Outbyte Driver Updater FREEScan for outdated or missing drivers - takes under a minuteDriver Scan →Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →| Ollama processor value | Meaning | How to describe it |
|---|---|---|
100% GPU |
The model is placed entirely in GPU memory. | GPU-only model placement. |
100% CPU |
The model is placed in system memory and is not offloaded to the GPU. | CPU-only model placement. |
| A mixed CPU/GPU percentage | Some model data is in CPU memory and some is in GPU memory. | Partial GPU offload or split placement. |
Run the command after the model has loaded, not before. If you have several models or multiple sessions, confirm that the row you are reading is the model receiving your prompt. The command is specific to Ollama; other inference runtimes expose placement through different status screens, log messages, launch flags, or diagnostic commands.
Rank #2
- Powered by the NVIDIA Blackwell architecture and DLSS 4
- Powered by GeForce RTX 5070 Ti
- Integrated with 16GB GDDR7 256bit memory interface
- PCIe 5.0
- WINDFORCE cooling system
Why the runtime report is usually the strongest first signal
A desktop graph measures activity on a device, not necessarily the placement of your model. Background applications can use the GPU, while a model can perform short GPU operations between graph refreshes. A runtime report is tied to the model process and states how its memory is allocated. Use the graph to corroborate that allocation and to spot a device-selection problem, rather than replacing the runtime report with a visual guess.
Watch the GPU in Windows Task Manager
Open the Performance view
- Start an inference request and keep it running or submit a prompt that takes long enough to observe.
- Press Ctrl+Shift+Esc to open Task Manager.
- Select Performance in the left navigation.
- Look for one or more entries labelled GPU. On systems that expose one, Windows may also list an NPU; an NPU entry is not evidence that the model is using the GPU.
- Select the relevant GPU and watch its activity while the model is processing the prompt and generating output.
Microsoft’s Windows documentation describes the Performance tab as a way to identify GPU and NPU entries. The exact engines and graphs shown vary by Windows build, graphics driver, and device. If Task Manager offers an engine selector, choose the compute-related engine when available; a 3D graph may remain quiet even when another engine is handling compute work.
Use Task Manager as corroboration, not a binary test
A rising graph during inference is useful evidence that some GPU work is occurring, but it does not prove that the entire model is on the GPU or that the target process caused every observed spike. Conversely, a flat graph at one instant does not prove CPU-only execution. Generation can be bursty, and Task Manager’s refresh interval can miss short operations. Keep the prompt active, observe several generations, and compare the timing with the runtime’s placement status.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Use NVIDIA’s command-line tools when applicable
Inspect the device with nvidia-smi
For an NVIDIA GPU, open a terminal while inference is active and run:
Rank #3
- Powered by the NVIDIA Blackwell architecture and DLSS 4
- Powered by GeForce RTX 5060
- Integrated with 8GB GDDR7 128bit memory interface
- PCIe 5.0
- WINDFORCE cooling system
nvidia-smi
The command reports the detected GPU, memory use, utilization, and a process list when the driver exposes those details. Run it repeatedly during generation if you need to catch changes; a single snapshot taken while the model is waiting for input may show little activity.
Inspect per-process activity with nvidia-smi pmon
Where the driver and platform support it, use:
nvidia-smi pmon
NVIDIA documents pmon as a per-process monitor that can report process IDs, names, and utilization averages. Match the listed process to the runtime you launched. Support is environment-dependent: some metrics can be unavailable, and the command may not expose the same fields on every operating system, GPU, or driver. An unavailable metric or missing process entry is therefore not, by itself, proof that no GPU work is occurring.
Check the right GPU in a multi-GPU computer
If the computer has integrated and discrete GPUs, identify which device the runtime selected before interpreting a graph. Task Manager can show multiple GPU entries, and nvidia-smi reports NVIDIA devices but not non-NVIDIA adapters. A process using an integrated GPU will not appear in NVIDIA’s process list. Compare the runtime’s device-selection setting, the active display adapter, and the specific GPU index you are monitoring.
How the checks compare
| Check | What it establishes | Scope | Main limitation |
|---|---|---|---|
Runtime placement report, such as ollama ps |
Where the model is allocated: GPU, CPU, or split. | The selected model and runtime session. | Commands and labels differ by runtime; it may not describe every auxiliary operation. |
| Windows Task Manager | That a Windows GPU or NPU is present and whether an engine shows activity. | The whole device, with process details depending on the view and driver. | Graphs can miss brief bursts and may show unrelated applications. |
nvidia-smi |
NVIDIA device status, memory, utilization, and visible processes. | The NVIDIA GPU selected in the command output. | It does not monitor non-NVIDIA GPUs and may omit unsupported process metrics. |
nvidia-smi pmon |
Per-process IDs, names, and supported utilization averages. | Processes visible to the NVIDIA driver. | Metric and platform support varies; missing data is inconclusive. |
The most defensible workflow is to use the runtime report to determine placement, then use Task Manager or a vendor utility to confirm that the expected device becomes active during the request.
Rank #4
- Powered by Radeon RX 9070 XT
- WINDFORCE Cooling System
- Hawk Fan
- Server-grade Thermal Conductive Gel
- RGB Lighting
A complete step-by-step diagnostic procedure
- Identify the exact runtime and model. Note whether you are using Ollama, a desktop application, a Python backend, a container, or another launcher. Different runtimes support different GPU backends and expose different diagnostics.
- Make the model do work. Load the model and submit a prompt. Keep the terminal, application window, or API request active long enough to observe prompt processing and token generation.
- Read the runtime’s placement status. In Ollama, run
ollama psand read the PROCESSOR column for the active model. Record whether it says 100% GPU, 100% CPU, or a mixed percentage. - Identify the operating-system device. In Windows, open Task Manager with Ctrl+Shift+Esc, choose Performance, and select the GPU entry that corresponds to the hardware you expect the runtime to use.
- Observe during generation. Watch for activity while the prompt is being evaluated and while output tokens are produced. Repeat the request if the first generation is too brief to observe.
- Use the vendor tool when available. On NVIDIA hardware, run
nvidia-smi, thennvidia-smi pmonif supported. Check whether the runtime process appears and whether the relevant device’s memory or utilization changes. - Reconcile the evidence. A GPU placement report plus activity on the expected GPU is strong confirmation. A split report plus activity indicates partial offload. A CPU-only report with no corresponding GPU activity points to CPU inference, subject to the runtime’s support and configuration.
- Record the setup if troubleshooting. Save the runtime version, model name, operating system, GPU model, driver version, launch options, and whether the application runs directly, under WSL, or in a container. These details determine which backends and device-access paths are available.
How to interpret each possible result
“100% GPU” or equivalent GPU-only status
The runtime reports that the model is loaded entirely in GPU memory. Confirm that the expected GPU shows activity during an actual request, especially on a multi-GPU system. GPU-only placement does not imply a constant 100% utilization graph; waiting for input, short prompts, synchronization, and output transfer can all produce quiet intervals.
“100% CPU” or equivalent CPU-only status
The model is loaded in system memory rather than offloaded to the GPU. First verify that the selected runtime and backend support your GPU model and operating system. Then inspect the runtime’s GPU-selection settings, driver or backend logs, and any compatibility requirements. A GPU appearing in Windows does not automatically mean that the inference runtime can use it.
A mixed CPU/GPU percentage
The model is using the GPU, but it is not entirely resident there. The CPU handles the portion placed in system memory, while the GPU handles the offloaded portion. Do not translate a mixed value into either “fully GPU accelerated” or “CPU-only.” Ollama documents the split percentage but does not define a universal percentage that counts as “enough” GPU usage; the practical impact depends on the model, hardware, and workload.
GPU activity with no obvious model placement report
Another application may be using the GPU, or the runtime may be performing only a small amount of GPU work. Match the timing of the spike with the inference request, inspect the process list where supported, and find the runtime’s own device or backend status. System-wide activity alone cannot identify the model’s placement.
Best Value
- Axial-tech fans now feature a smaller fan hub that facilitates longer blades and a barrier ring that increases downward air pressure
- Phase-change GPU thermal pad helps ensure optimal heat transfer, lowering GPU temperatures for enhanced performance and reliability
- 2.5-slot design allows for greater build compatibility while maintaining cooling performance
- Dual-ball fan bearings last up to twice as long as standard conventional sleeve bearings designs
- 0dB technology lets you enjoy light gaming in relative silence
No visible GPU activity
Repeat the observation during active generation and check the correct device. A short request can finish between monitoring refreshes. Also consider that the runtime may be CPU-only, the selected backend may not support the GPU, the process may be inside a container without device access, or the relevant metrics may be unavailable to the monitoring tool.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Troubleshoot a CPU-only or missing-GPU result
Confirm runtime and hardware compatibility
Start with the inference runtime’s current GPU-support documentation for your operating system and GPU family. Support is not universal: a GPU that works for games or general-purpose compute may not be supported by the particular inference backend you selected. Check whether a required acceleration library, driver version, or runtime option is documented for your setup.
Check driver and backend messages
Read the runtime’s startup and server logs for device initialization failures, unsupported operations, or fallback messages. A fallback can leave the application working on the CPU even though the GPU is visible to Windows. Correcting the driver, backend, or launch configuration should be based on the runtime’s documented requirements rather than on a generic GPU update.
Check device access in Docker or WSL
When the model runs in Docker or through WSL, the host’s GPU visibility is not enough. The container or Linux environment must receive the device and the required runtime libraries. Ollama’s documented Docker acceleration path for NVIDIA hardware calls for the NVIDIA Container Toolkit. Follow the application’s platform-specific instructions and verify GPU visibility from inside the environment where the model process actually runs.
Inspect Ollama’s Windows logs
For Ollama on Windows, the documentation lists the server log at:
%LOCALAPPDATA%Ollamaserver.log
Its Windows guidance also describes other application log locations. Review these logs when the interface or ollama ps output does not explain why device selection fell back to the CPU. Search for initialization, device-discovery, driver, and backend errors around the time you launched the model.
Check selection settings on multi-GPU systems
A runtime may choose a different adapter from the one you are watching. Confirm any device index, visibility variable, or application setting, then monitor that specific GPU. If the runtime reports GPU placement but the selected NVIDIA device remains idle, you may be observing the wrong adapter or a device whose metrics are not exposed by the tool.
Quick Recap
Common mistakes that produce a false conclusion
- Checking while the model is idle: loading or waiting for a prompt does not demonstrate active computation.
- Looking at only the 3D graph: compute work may appear on another engine, depending on the driver and device.
- Assuming any GPU spike belongs to the model: browsers, video playback, and other applications can use the same device.
- Treating a mixed placement as full GPU acceleration: the CPU still handles the portion in system memory.
- Interpreting unavailable vendor metrics as zero: unsupported fields are not measurements of no activity.
- Assuming visible hardware equals usable hardware: runtime support, drivers, backend libraries, and container permissions all matter.
- Using a benchmark as the only test: speed can be affected by quantization, prompt length, sampling settings, and memory pressure; it does not directly reveal placement.
A compact checklist
- Submit a real prompt while monitoring.
- Read the runtime’s placement report first.
- For Ollama, run
ollama psand inspect PROCESSOR. - Classify the result as GPU-only, CPU-only, or split.
- Use Windows Task Manager to identify the GPU and observe activity.
- On NVIDIA systems, corroborate with
nvidia-smiand, where supported,nvidia-smi pmon. - Check the correct adapter on multi-GPU machines.
- If the result is CPU-only, verify runtime support, backend settings, drivers, and logs.
- For Docker or WSL, verify device access inside the environment, not only on the host.
- Do not treat a quiet graph or unsupported metric as conclusive proof of CPU-only execution.
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

