Is it a good idea to disable "write caching on the device" in windows 7?

Solution 1:

Keep in mind that writing to disk is slow, so "write caching" buffers data in memory and only persists it to disk after a timeout or after a buffer is full. This is probably giving you a performance boost, don't disable it unless you know what you are doing.

This improves performance since HDD writes happen in chunks anyway. This may be an oversimplification, but imagine your HDD has a block size of 512 bytes, and you are running a dumb program that tries to write 512 bytes ``byte-by-byte''. This approach will take much longer than one that writes 512 bytes at once. Thus your SO buffers the data for you and performs the single write. The caveat is that if there is a power loss before the write actually happens, then you lose your data. That is what that checkbox is warning you about.

You should open your task manager and check in the resource monitor the disk activity. My guess is that your experiencing one of 2 things (or both):

  1. disk is at 100% usage when your system hangs
  2. your system has run out of memory and is swapping, thus increasing your disk activity

Swapping happens when you don't have enough memory and your OS uses a special disk file as temporal memory. If your OS has to start moving blocks of memory to disk to free up space for other blocks constantly (this is called swapping), your system seems to hang because writing and reading from disk is much slower that memory.

If your drive is almost full, you should try to run a disk defragmentation manually. Disk defragmentation may fail if you don't have enough space, keeping a windows disk over 90% is usually a bad idea. You should follow the steps in this awesome answer to free up disk space.

EDIT: OP pointed to me in the comments that I misread the post. The disk is half full, not almost full. The recommendation to run disk defragmentation still applies, but probably won't do much unless Windows is not running it with enough frequency (since Windows 7 runs it from time to time in the background ). Still, performing a disk defrag and getting more space never hurts ;)