Slow disk

time

Storage? I am Storage!
Joined
Jan 18, 2002
Messages
4,932
Location
Brisbane, Oz
I'm definitely out of practice with this stuff. :(

PC runs like molasses, more specifically it appears to be the hard drive running slow. Evidence includes: the SMART diagnosis of SpeedFan yields a single bar for performance, and ATTO is so slow I gave up before any results were displayed. Same results in SafeMode.

The drive passes self-diagnostics okay and I'm able to scan the drive.

Tried changing the cable - no difference.

Swapped the hard drive with the one that was previously in this PC; the new was imaged from the old a couple of months ago. The old drive works fine.

Both drives are Samsung SATA, one 200GB and the other 320GB. Drive diagnostics show both are configured the same.

If the drive really is bad, I have no idea how I could prove it to the supplier. I did try it in an old PC headed for the tip, but the PC was too sick to even recognize the drive.

Can't see any hidden nasties, but that's obviously a possibility that I'm hoping people here can comment on.

I really need someone else to think clearly about what to try. ;) TIA.
 

P5-133XL

Xmas '97
Joined
Jan 15, 2002
Messages
3,173
Location
Salem, Or
Yeah, that was my first reaction: Is the drive running in PIO mode? If you go to the device manager and look at the advanced settings for the primary or secondary IDE controller for the drive in question. DMA == Good, PIO == Very bad.

the PIO mode(s) are switched to after Windows has detected an excessive number of errors for a given drive. Sometime Windows will not allow you to change it back to DMA mode but you can fix that problem by uninstalling the controllers and letting Windows reinstall them.

The second problem that can cause this is if the drive is highly fragmented or very full. As far as I can tell, you should not ever allow a drive to get over 80% full because Windows starts slowing down dramaticly.
 

LiamC

Storage Is My Life
Joined
Feb 7, 2002
Messages
2,016
Location
Canberra
I had a Samsung drive (new--factory fresh) a couple of years ago that passed all tests, but it's transfer rates as measured by a couple of benchmarks never surpassed 3MB/s--should have been 60MB/s. RMAed the drive. I think I posted about it here.
 

P5-133XL

Xmas '97
Joined
Jan 15, 2002
Messages
3,173
Location
Salem, Or
ATA PIO mode maximum transfer rate chart
ATA DMA maximum mode transfer rate charts

If a controller driver, HD, or or Windows forces a low PIO mode, then yes you can easily get transfer rates that max out at 3 MB/s without the HD actually being bad. Windows is supposed to negotiate the highest mutual mode but if it starts getting timeouts then it will start forcing PIO modes as a last-ditch effort to guaranty a compatible transfer method. However HD timeouts in Windows can be caused by many things that are not flaws in the storage subsystem.
 

time

Storage? I am Storage!
Joined
Jan 18, 2002
Messages
4,932
Location
Brisbane, Oz
Spot on guys, although it didn't show up as appreciable CPU utilization. Running in PIO Mode 2 (from memory). Extra points to Mark for a comprehensive explanation of why!

Now running in DMA Mode 6 and producing about 95MB/s in ATTO. So transfers (and commands) were more than ten times slower.

What I forgot to mention in the original post, is that SMART had recorded a very large number of cable CRC errors. I had already changed the cable, but performance was still bad, so it slipped my mind.

So rather than report or warn about the errors, Windows wound back the transfer rate to the Paleolithic era and claimed everything was just fine. What a class act Microsoft is.

Interestingly, SpeedFan still says performance is crap; perhaps it's seeing the CRC error count? Which raises an annoying 'feature' of SMART: the drive is now permanently marked with SMART errors because of a dodgy cable - nothing to do with the drive at all. As far as I know, there's no tool to reset the counts.
 

P5-133XL

Xmas '97
Joined
Jan 15, 2002
Messages
3,173
Location
Salem, Or
Windows does not know about the cable errors! The HD and the controller are supposed to deal with those directly by requesting retries and will continue repeatedly doing so till the data gets through without error. The ATA standard does not have a method to report the cable CRC problem back to Windows or a driver. All Windows gets from the process is that it is taking too long (From its own timing mechanism) and that is reported to the user as a timeout.

I suspect that the reason there is no CRC reporting mechanism is because the ATA standard didn't have CRC checking till the 80 pin cables were created in the standard and they needed to keep compatibility with the older 40 pin cable standard.

What I'm trying to say is that this particular issue is not Window's fault. It is just trying to deal with what is.
 

time

Storage? I am Storage!
Joined
Jan 18, 2002
Messages
4,932
Location
Brisbane, Oz
So you're saying that when Windows detects abnormally slow storage request handling (but not slow enough to trigger a timeout), it responds by slowing the process even further - by more than an order of magnitude in fact.

If it was able to detect a problem (self-evident because of the mode change), why could it not report it to the user, preferably by flagging it in Device Manager?
 

P5-133XL

Xmas '97
Joined
Jan 15, 2002
Messages
3,173
Location
Salem, Or
It actually should report the timeouts in the log.

All Windows knows is that there things are not working right because of the delays but nothing is reporting an error to Windows. Windows trys to deal by switching modes to more conservative timings and more reliable (though slower) data transfer modes. It's like having non-specific motherboard issues and the first thing you do is remove the overclock. If that doesn't fix it, you might try underclocking next.
 
Top