Ridiculously slow write speeds in Laptop Hard Drive. Please advise.

The Tiger

Honorable
Aug 30, 2013
222
2
10,715
I got an Asus K55VM laptop (i7, 8GB RAM). The Hard Drive is Seagate ST1000LM024
Momentus 1000GB. I have always found the hard drive incredibly slow, especially when Windows starts up. It takes 3-4 minutes since POST for Windows 10 for the HDD lamp to turn off. Opening Firefox after bootup takes 15 seconds. I've checked the HDD for any bad sectors with multiple softwares but none found one. So I'd decided to ignore it. Until today.

My friend sent me his laptop to replace his hard drive. I got a WD 1000GB for him. I decided to run Crystal Disk Mark on both laptops. Here are the results:

My laptop's Hard Drive Seagate ST1000LM024 Momentus 1000GB:

2018-03-10%2009_26_15-CrystalDiskMark%206.0.0%20x64_zpsxvqew3pc.png



Friend's Laptop Hard Drive: (WD10SPZX 1000GB)
spd_zpsdr0a14yt.png


Why is there such a huge difference between the 4KB write speed tests of the hard drives? Is this the reason of my laptop's performance hit? I think SATA drives do not require any additional drivers, but is this a driver problem? (In BIOS, the drive interfacing is set to AHCI if that makes any difference.)
 
Solution
I think your friend has some sort of write caching enabled on his computer. I don't think it's physically possible for a HDD to hit 6 MB/s 4k write speeds. The highest I've ever seen (unqueued) was a little over 1.5 MB/s. Most laptop HDDs are below 100 IOPS, which at 4kB per file would be around the 0.4 MB/s you're getting.

AHCI mode enables NCQ - queuing up multiple small file reads and writes. It makes a big difference on SSDs, but not on HDDs. The only thing HDDs can do with it is rearrange files so ones which will rotate under the heads sooner get read first. So it'll speed things up slightly on a HDD, but not really enough to worry about whether it's on or off. (On a SSD, it can make about a 10x difference in small file...
I think your friend has some sort of write caching enabled on his computer. I don't think it's physically possible for a HDD to hit 6 MB/s 4k write speeds. The highest I've ever seen (unqueued) was a little over 1.5 MB/s. Most laptop HDDs are below 100 IOPS, which at 4kB per file would be around the 0.4 MB/s you're getting.

AHCI mode enables NCQ - queuing up multiple small file reads and writes. It makes a big difference on SSDs, but not on HDDs. The only thing HDDs can do with it is rearrange files so ones which will rotate under the heads sooner get read first. So it'll speed things up slightly on a HDD, but not really enough to worry about whether it's on or off. (On a SSD, it can make about a 10x difference in small file speeds if you're reading/writing lots of small files at once.)

Except for your sequential write speeds, your benchmark looks right for a laptop HDD. Your sequential write speeds are probably lower than your friends because your drive is more full, so it can't write a large file as a single sequential file. It has to fragment it, which slows down the write speed.

As for your drive being slow in general use, try defragmenting it. I'm not sure that's the problem though because Windows generally doesn't get slower as the drive gets full (Windows was installed first, so its files are typically unfragmented even if the rest of the drive fills up). My guess would be you've got some sort of driver or configuration problem which is making Windows pause for long periods of time during bootup, until it times out and Windows goes to starting up the next item on its list.
 
Solution

The Tiger

Honorable
Aug 30, 2013
222
2
10,715
Thank you very much for the awesome, detailed and exhaustive answer! I know so much more about Hard Drives now because of you!

What type of write caching might be enabled in Friend's Computer? Is it possible to use same write caching driver/software in my laptop?

In my laptop, the drives show 0% fragmented, and set to auto defrag weekly. There must be some issue going on, as you said. Because I have fresh installed many times, with same problem.

Do you think if I replaced the hard drive with a new WD one, it'll be significantly faster?
 
Try running CrystalDiskInfo and HDTune on your drive first. There may be other problems with the drive which aren't showing up in the speed benchmark. CrystalDiskInfo will query the SMART stats on the drive which flag common problems and errors. HDTune will run tests over the entire drive (or at least those parts with free space) instead of just a single location, and can find slowdowns due to certain portions of the drive experiencing problems.

https://crystalmark.info/en/software/crystaldiskinfo/
http://www.hdtune.com/

Write caching is generally a bad idea since it can lead to permanent data loss in the event of a crash or power failure. This may be less of an issue for a laptop, since it has a built-in battery backup. Windows has a built-in write cache (writes are stored in RAM, then pumped to the drive as quickly as the drive can handle it).

http://www.thewindowsclub.com/enable-disable-disk-write-caching-windows-7-8

The first check (enable write cache) doesn't offer much speed unless you're writing a bunch of small files at once. The second one (disable write cache buffer flushing) is the big speed improvement. It allows data to remain in the write cache (RAM) until the disk is free to accept more writes. Normally the cache is flushed (emptied and written to disk) at short intervals to minimize the data loss in the event of a crash or power failure. But by disabling this periodic flushing, the computer doesn't have to wait for writes to finish before continuing on with other tasks. It comes at tremendous risk to your data though, since a power failure or an OS crash will mean you lose any data in the write cache. So think carefully before you enable it.

If you're open to replacing the HDD, a SSD will provide a huge improvement in speed (tens to hundreds of times faster at small file read/writes). If a SSD is out of your price range or if you need the larger capacity of a HDD, you can look into hybrid drives (SSHDs - solid state hard drives). They're a regular HDD coupled with about 8 GB of flash cache. The flash operates at near-SSD speeds for reads (writes are still constrained by the speed of the HDD), and are very effective for frequent operations like booting your computer. It'll probably drop your boot speed to the same as a SSD. I would avoid the WD SSHDs though because they have a different issue with short head parking timers (shows up in your laptop as microstutters if it's your only drive - e.g. screen and mouse freezing for a split second every 10-15 seconds). As best as I can tell, all 5400 RPM WD drives suffer this issue.

However, if my guess is right and your slow boot times are due to driver load errors causing long waits for timeouts, then even a SSD isn't going to fix it. In this case the computer would be slow because it's literally stopping and waiting during the boot process. It's not being slowed down by a device. You'd have to locate and uninstall/reinstall the problem drivers. Often it's easier just to reinstall Windows. (There's also an off chance that it's a hardware failure elsewhere in the computer causing the timeouts.)