Extremely low write speed on SATA disk

Fsun

Distinguished
Oct 7, 2003
5
0
18,510
PROBLEM:
Extremely low write speed on SATA disk.

Write speed is ca 2-3 MB/s (tested by copying a 400 MB file). Write speed is ca 55 MB/s according to SiSoft Sandra.

The computer is working normally until I trigger an intensive write scenario (i.e. copy a 400 MB file or install Ms Office). When an intensive write period is started then most of the computer freezes (must works, but most things can't be clicked).

I would really appriciate your comment what your guess would be for the cause of the problem, do you think this seems like a harddrive issue or a motherboard issue? I will attempt to try my disk in my brother's but I have a hard time to get time for that, and I would like to solve the problem asap (e.g. buy a new disk).



SETUP:
This week I purchased new parts. The old setup was very slow (P4 2.6 GHz / 2 GB DDR 400 memory) but I can't recall it was this

slow, however installing Microsoft Flight Simulator X took a LONG time (2 hours?) and it's only 2 DVD:s)

New CPU: AMD PHENOM II X4 955 3.2GHZ BLACK SKT AM3 L2/L3 8MB 125W P
(HDZ955FBGIBOX)

New Memory: OCZ TECH DDR2 PC6400 DDR2 Blade Heatspreader 800MHz 4G Kit (2X2GB) 4-4-
3-15 2.1V (OCZ2B800C44GK)

New Motherboard: GIGABYTE Gigabyte GA-MA790X-UD3PLK, GBLAN, DDR2, AM3

New graphics card: ASUS VGA-Card nVidia 9600GT 512MB PCI-E 2xDVI HDCP V-cool Heatsink DVI
to D-Sub adaptor PhysX CUDA (EN9600GT SILENT/2D/512MD3)

Old HD: Western Digital WD2500KS. 7200RPM. SATA2. 16MB cache.

Old DVD: IDE DVD burner

Old PSU: Seasonic S12 430W

Old floppy: Standard

Operating system: Windows 7 64bit RTM, using latest updated from Windows update. The OS was installed from scratch using the new hardware parts. I also tried with Ubuntu Linux 9.4 and experience slow performance but I did not document write speed.

Antivirus: I have tried both with and without antivirus




TROUBLESHOOTING:

- My SATA drive was in Native IDE mode. I changed it to AHCI (after installing chipset drivers), but no change.

- Installed the chipset drivers for the motherboard. There are no exclamation marks in the device manager.

- TODO: DMA mode or PIO mode? I can't find the setting for this.

- The motherboard has two separate SATA controllers: One controlled by the AMD SB750 and one "Gibabyte SATA2". I have tried connecting my harddrive to each.

- The File systems / write test in SiSoft Sandra goes on forever. Read test finished with ca 55MB/s

- Installing Microsoft Office 2007 took ca 20-30 minutes!

- Upgraded motherboard BIOS from F2 to F4

- Temperature: According to Gigabyte MB monitor the system and CPU are both at 40-43 degreec Celsius

- Enabled S.M.A.R.T in BIOS

- Checkdisk

- Downloaded HD diagnostic tool from Western Digital, the quick test shows "OK"
 
Those are the exact symptoms you get if you're running in PIO mode. Try this:

-> Right-click on "Computer", select "Manage"
-> Navigate to "System Tools" -> "Device Manager" in the left pane
-> Navigate to "IDE ATA/ATAPI Controllers" in the right pane
-> Double-click on the channel in question to bring up the properties dialogue
-> Click "Advanced Setting"

If the "Enable DMA" checkbox is NOT checked, that's your problem.
 

Fsun

Distinguished
Oct 7, 2003
5
0
18,510
Thanks for your advices.

First my harddrive was not listed under any ATA channel, but after switching the SATA cable to the other SATA controller then it was listed. The disk is running in Ultra DMA mode 6, even after the slow-state has been triggered.


Interesting results from SiSoft Sandra disk info:

----------------------
Physical disk:
Transfer mode support
Block size: 16
Transfer modes active:
Current block transfer: 0 (16 seems to be the common size for examples I have found on google!)
Current SATA mode: G2 / Sata300

Performance tips: Warning 3105: Current block size not optimal. Check settings
-----------------------

I looked for the block size setting in BIOS but could not find it.

I also tried another SATA cable, with no change (except that the issue became slightly worse, but that could be due to that I changed (back) to the other SATA controller (the two SATA controllers may have different success in handling disk error states).
 

sub mesa

Distinguished
This is what i meant with consumers buying new hardware whenever a software design flaw nails them. :p

Fsun, i can understand you want a working system. But you should be able to use your old 250GB with full speed. It may be old and on the verge of failing, it may also be that your disk is running in PIO mode.

First, please replace the SATA power and data cables, if these show any weakness this is what will trigger windows to use PIO mode even though the drive is listed as DMA capable. So if you have a bad cable, this is what would happen, exactly as you described with periodic freezes due to PIO interrupts. Normally, high cpu usage won't show down your system so drastically - it may not even be noticeable if you have a process using 100% CPU - your scheduler should work to give every process a fair chance of cpu time. So it's consistent with a PIO issue.

So now that you have your new drive, don't just toss your old drive in the bin yet - it may be in perfect condition. If you want further advice please download HDTune Pro evaluation and post a screenshot of both raw read and the "Files" benchmark (its a tab). Let it finish because it does other measurements later like the CPU time.

If the CPU time is 100% (single-core), 50% (dual-core) or 25% (quad-core) - AND - your raw read benchmark shows a flat horizontal line of no more than 16.7MB/s read throughput - you have a PIO issue.
 

lvsoft

Honorable
May 16, 2012
1
0
10,510


I have the exactly same issue. However, I run linux and I'm quite sure it's not the problem of PIO.

Here's my hardware and software configuration:

System Information from dmidecode
Manufacturer: BIOSTAR Group
Product Name: TH67XE
Version: 5.1

CPU infomation from /proc/cpuinfo
model name : Intel(R) Core(TM) i7-2600K CPU @ 3.40GHz

Harddrive information from smartctl
Device Model: ST2000DM001-9YN164
Serial Number: Z2400V7A
Firmware Version: CC4C
User Capacity: 2,000,398,934,016 bytes

System (debian linux, stable/testing/unstable source):
Linux pxe64 3.2.0-2-amd64 #1 SMP Sat May 12 23:08:28 UTC 2012 x86_64 GNU/Linux

My problem appears when I start up a heavy workload, such as repair a corrupted database(size>100GB). The throughput just fine at the beginning (Both read or write throughput exceed 110MB/s).

After a while, it'll drop to about 300KB/s suddenly(Both read and write). Because I have 32GB memory(which mostly used as buffers), even after I interrupted the operation, the write throughput still holds. And at last, If you wait long enough, you will see the write throughput will return normal at the moment just before cached buffer finished wrote to disk.

During the whole process, CPU load can be ignored. Less than 2-5% in total, and I also observed each single core(8 cores with HT included).

Like Fsun, I did everything I can do. I upgraded BIOS firmware, hard drive firmware. I changed various linux kernels, BIOS settings, sata ports and sata cables. Now the only option leaves to me is to change the hard drive.

I think this should be the problem of seagate's hard drive firmware. The communication between AHCI controller and hard driver adapter was choked by some unknown reason.
 

huldu

Distinguished
Aug 5, 2011
12
0
18,510
Have the same problem. Using a WD 1TB, according to SIW the drive runs at sata-600. It starts at max speed then at around 30% it drops more and more until it's *very* slow. The drive could be faulty of course since I actually found this in the trash(heh).