Find Which Program is Constantly Reading or Writing to Disk

Does your hard drive LED in the computer’s chassis show non-stop disk input or output activity? If the I/O operations occur at an alarming rate, sometimes even at 100% disk usage, find the process and stop it from running, especially if you’re using Solid State Drive. If you’re wondering which process is thrashing your hard drive continuously, here is how to find the offending program.

Find Which Program is Constantly Reading or Writing to Disk

The Windows Search Indexer will perform maximum Disk I/O when building the index from scratch. But for subsequent files, it won’t tax your system that much unless you add too many files every day and also configure Windows Search to index file contents of additional file types, which can cause a performance hit. Some third-party tweakers have options to disable Windows Search to reduce disk writes by the search indexer, and some users who have SSD drives turn off indexing.

Use Task Manager to Track Disk Read/Write I/O by Programs

The Search indexer may not always be the culprit, but a poorly coded program is probably taxing the drive. Let’s use Task Manager to find it out.

  1. Open Task Manager and select the Details tab.
  2. Right-click on the column header (Name, PID, Status, etc.) and click Select Columns.
  3. Enable the following checkboxes and click OK.
    • I/O read bytes
    • I/O write bytes

    taskmgr read bytes i/o write bytes

    I/O read bytes is the number of bytes read in input/output operations generated by a process, including file, network, and device I/Os. Whereas I/O write bytes is the number of bytes written in input/output operations by a process, including file, network, and device I/Os. I/O Read Bytes & I/O Write Bytes directed to CONSOLE (console input object) handles are not counted.

  4. Next, sort the listings by I/O Read bytes and see which application is generating the maximum I/O (in bytes/sec). Similarly, sort by I/O Write bytes to see which program is writing to the hard disk continuously.
    taskmgr read bytes i/o write bytes

You can track the file system and registry I/O using the Process Explorer as well.track disk io usage - process explorer

Download Process Explorer from Process Explorer – Windows Sysinternals page.

Once you identify the program, decide if you need the program or not. Leave it as it is if the I/O operations are justified. Else, remove the program or consult its documentation to tweak the settings, if any. For instance, one of your browser extensions may cause high disk or CPU usage. You need to isolate the extension, add-on, or the browser’s feature causing the trouble.

RELATED: Fix Google Chrome High Disk Usage (100%) Problem

Use Resource Monitor to Track Disk Read/Write I/O by Programs

When tracking Disk I/O using Task Manager, there are two limitations.

  1. Task Manager shows the process name responsible for constant disk thrashing either by reads or writes. But it doesn’t show you the corresponding file name(s).
  2. You can sort by I/O read or I/O Writes, but no option to sort the results by Total I/O (combined Read & Write).

To overcome Task Manager’s limitation, and to perform a thorough analysis, use the excellent Resource Monitor (resmon.exe) utility, which is built-in to Windows.

  1. Start Resource Monitor by running resmon.exe. Or click Open Resource Monitor in Task Manager’s Performance tab.
  2. In Resource Monitor, click the Disk tab. You can sort the items by Read I/O, Write I/O, and Total I/O (bytes/sec).
  3. See the Disk Activity section, which shows the list of processes & the file name being written to/read from, and the I/O speed.resource monitor resmon.exe read bytes i/o write bytes

This gives you a clear picture of what is causing the continuous churning of your hard drive.

Using Process Monitor

The excellent Process Monitor utility can be used to find which file is being written to, and by which process.

In Process Monitor, to capture disk write I/O configure the filter like this:

Category → Write → Include → Add → OK

track disk io usage - process explorer

And then enable the Show File System Activity button on the toolbar — disabling the other four buttons.

You’ll see the list of disk/file I/O operations and the corresponding processes.

track disk io usage - process explorer

To capture Read operations, the filter would be:

Category → Read → Include → Add → OK

See How to Use Process Monitor to Track Registry and File System Changes for a detailed guide.

Automatic Maintenance tasks?

If you notice constant hard disk chatter when your system is idle, Windows may be running the automatic maintenance tasks (which is good, unless you’re running many Virtual Machines on a single host computer simultaneously).

Automatic maintenance is a set of built-in (and 3rd party) scheduled tasks (such as disk cleanup, Store Apps automatic update etc.) that trigger when you leave the system idle for about 5 minutes or so. Unless you have a specific & legitimate reason, don’t disable automatic updates.

One small request: If you liked this post, please share this?

One "tiny" share from you would seriously help a lot with the growth of this blog. Some great suggestions:
  • Pin it!
  • Share it to your favorite blog + Facebook, Reddit
  • Tweet it!
So thank you so much for your support. It won't take more than 10 seconds of your time. The share buttons are right below. :)

Ramesh Srinivasan is passionate about Microsoft technologies and he has been a consecutive ten-time recipient of the Microsoft Most Valuable Professional award in the Windows Shell/Desktop Experience category, from 2003 to 2012. He loves to troubleshoot and write about Windows. Ramesh founded in 2005.

1 thought on “Find Which Program is Constantly Reading or Writing to Disk”

Leave a Comment