GUIDES

Disk at 100% in Task Manager: finding the cause

Disk at 100% in Task Manager means the drive was never idle, not that it is full. How to find which program or Windows job keeps it busy, what a hard drive can keep up with, and how to check the drive's health.

The game hitches, you open Task Manager, and the Disk column says 100%. Or the PC takes minutes to become usable after you sign in, with the disk pinned the whole time. Or it shows up mid-match and you wonder whether the drive is dying.

The number is real but narrow: it says the disk had work waiting the whole time, not how much work or whose. Finding whose is the job.

What 100% measures

On the Performance tab, select the disk. Task Manager describes its Active time as the percentage of time the disk is processing read or write requests, and Resource Monitor describes its Active Time (%) column as the percentage of time the disk is not idle. Microsoft's Ask Core team, explaining Performance Monitor's % Idle Time counter, defines idle as every request completed and none pending.

So 100% means no moment in the interval had nothing waiting. It says nothing about how much data moved or how full the drive is. The same page shows the rest: Read speed and Write speed, Average response time, Type (such as SSD or HDD) and System disk (whether Windows is on it).

Busy with a lot moving is a big job, such as an install, a copy or a patch. Busy with little moving and long response times means requests are waiting on the drive, and Microsoft's performance troubleshooting guide asks the question that matters then: is the disk overwhelmed, and if so, who is using it?

Find the process

On the Processes tab, select the Disk column header to sort by it. Many Windows services run inside Service Host processes, and since Windows 10 version 1703, on PCs with more than 3.5 GB of RAM, each service gets its own, with a few exceptions; Microsoft's service host documentation says that lets you look at Task Manager and know exactly which service is using what resources.

If you applied w0a's Consolidate service processes (svchost) setting, services share host processes again, and its page lists per-service figures in Task Manager as the cost (Memory tweaks).

For file-level detail, use Task Manager's Open Resource Monitor command, or press Win+R and run resmon. Its Disk tab has three lists:

For a disk pinned right after sign-in, also check the Startup impact column on Task Manager's startup page, which measures CPU and disk activity during startup.

Windows jobs that use the disk

Several Windows jobs read or write files while they run:

When Windows is on a hard drive

If the busy disk is an HDD and it is the system disk, the drive itself sets the pace. The same Microsoft guide works it out from rotation: a 5,400 RPM disk should be able to read any block within about 11 ms, in theory. In Microsoft's 2009 Windows 7 engineering tests, 176 of 182 hard drive configurations scored between 0.8 and 1.6 MB/s on the random read test. So a hard drive serving scattered reads can be busy all the time while moving around a megabyte a second.

The guide also grades latency. For the Performance Monitor counters Avg. Disk sec/Read and Avg. Disk sec/Write, it calls under 15 ms healthy, over 25 ms a warning and over 50 ms critical; short spikes can be tolerated, and periods of over a minute are worth investigating. Task Manager's Average response time gives a quick reading in milliseconds; the thresholds were written for the Performance Monitor counters.

No setting makes a disk spin faster. SSD vs HDD for games covers what an SSD changes for games, and what it does not.

When the drive itself may be failing

If nothing in Resource Monitor accounts for the activity, or response times stay long while little is moving, check the drive. Without administrator rights, PowerShell gives Windows' own summary:

Get-PhysicalDisk | Format-Table DeviceId, FriendlyName, MediaType, HealthStatus

HealthStatus reads Healthy, Warning, Unhealthy or Unknown, which Microsoft calls a high-level indication of device health. For the drive's own counters, open PowerShell as administrator (without it, Windows refuses with an access-denied error) and run:

Get-PhysicalDisk | Get-StorageReliabilityCounter | Format-List DeviceId, Temperature, Wear, ReadErrorsUncorrected, WriteErrorsUncorrected, ReadLatencyMax

DeviceId matches the first command. Some fields can come back empty, as one does in Microsoft's own example. The reliability counter reference defines Wear as a percentage, where 100 means the estimated wear limit has been reached, and says a ReadLatencyMax (given in milliseconds) over 10 seconds may indicate a problem with the disk or the host bus adapter. The uncorrected counts are errors the drive itself could not correct.

CrystalDiskInfo reads the drive's S.M.A.R.T. data and rates it Good, Caution, Bad or Unknown. Its documentation says it watches the reallocated, current pending and uncorrectable sector counts on hard drives, and shows Caution on an SSD with 10% or less of its life remaining. If any of these readings look wrong, copy what matters off the drive first.

What does not help

Related

Did this page help?

What was missing, or what did not work? We read every one of these.

If this page did not solve it, write to us — say which article you read, and we will fix the article.