Slow/patchy & intermittent SATA adapter/network drive issue

  • Thread starter Thread starter cronoklee
  • Start date Start date
C

cronoklee

Hi all, I have an old Dell Dimension 2300 running XPsp3 that I'm using
as a home file server. I have 2 drives installed: a 500GB 5400rpm IDE
drive and a 1.5TB 5400rpm SATA drive. The SATA drive is connected via
a PCI adapter card that I bought specially as the motherboard only
takes IDEs.

I get a reliable 7MB/s transfer speed across the network from the IDE
drive. The SATA drive intermittently stalls when accessed over the
network so watching a movie, for example, causes skipping and
dropouts.
Is this a hardware problem or is there something I can do to fix it?

Thanks a lot,
Ciarán
 
Hi all, I have an old Dell Dimension 2300 running XPsp3 that I'm using
as a home file server. I have 2 drives installed: a 500GB 5400rpm IDE
drive and a 1.5TB 5400rpm SATA drive. The SATA drive is connected via
a PCI adapter card that I bought specially as the motherboard only
takes IDEs.

I get a reliable 7MB/s transfer speed across the network from the IDE
drive. The SATA drive intermittently stalls when accessed over the
network so watching a movie, for example, causes skipping and
dropouts.
Is this a hardware problem or is there something I can do to fix it?

Thanks a lot,
Ciarán



An update on this:
I installed a media player on the server PC and tried to watch a video
off the SATA drive. I had the same stalls throughout, which rules out
it being a network issue. Can anyone suggest what might be causing
this and suggest a fix??

Thanks,
Ciarán
 
cronoklee said:
An update on this:
I installed a media player on the server PC and tried to watch a video
off the SATA drive. I had the same stalls throughout, which rules out
it being a network issue. Can anyone suggest what might be causing
this and suggest a fix??

Thanks,
Ciarán

Are the drives in PIO mode ?

That transfer speed is consistent with PIO or Polled mode transfer.
In such a mode, each word of data is transferred one at a time by the
processor. That makes the transfers very slow.

Normally, a disk controller would use a faster hardware method, such
as DMA or Direct Memory Access. There is less processor overhead
with DMA, so it goes much faster.

Now, the fact you're connected to a PCI controller, it probably shows
up as a SCSI entry in Device Manager. It could be, that the PCI controller
and its characteristics, will be hidden by a pseudo-SCSI driver interface
used with the card. I don't know if Windows will slow down a drive on
an interface like that, in the same way it might with a motherboard
connector.

This is an example of the slow down problem, with a motherboard interface.

http://support.microsoft.com/kb/817472

You can use HDTune, to display some information about the drive, but if
the PCI controller uses a pseudo-SCSI driver interface, I don't know
if HDTune will be able to read all the information or not.

http://www.hdtune.com/files/hdtune_255.exe (the free version)

HTH,
Paul
 
cronokleewrote:



Are the drives in PIO mode ?

That transfer speed is consistent with PIO or Polled mode transfer.
In such a mode, each word of data is transferred one at a time by the
processor. That makes the transfers very slow.

Normally, a disk controller would use a faster hardware method, such
as DMA or Direct Memory Access. There is less processor overhead
with DMA, so it goes much faster.

Now, the fact you're connected to a PCI controller, it probably shows
up as a SCSI entry in Device Manager. It could be, that the PCI controller
and its characteristics, will be hidden by a pseudo-SCSI driver interface
used with the card. I don't know if Windows will slow down a drive on
an interface like that, in the same way it might with a motherboard
connector.

This is an example of the slow down problem, with a motherboard interface..

http://support.microsoft.com/kb/817472

You can use HDTune, to display some information about the drive, but if
the PCI controller uses a pseudo-SCSI driver interface, I don't know
if HDTune will be able to read all the information or not.

http://www.hdtune.com/files/hdtune_255.exe   (the free version)

HTH,
      Paul




Hi Paul, thanks for the reply. the drive looks like it's already in
DMA mode. I downloaded the latest drivers for the SATA PCI adapter and
it comes with a RAID config utility which can analyse the drive. I've
posted a screengrab of the stats here:
http://crondesign.com/filestore/stats.png

Do I need to try the hotfix above if I have XPsp3 installed? Should I
tr the HDTune software?

Thanks for any help - this is a big problem for me.

Cheers,
Ciarán
 
cronoklee said:
Hi Paul, thanks for the reply. the drive looks like it's already in
DMA mode. I downloaded the latest drivers for the SATA PCI adapter and
it comes with a RAID config utility which can analyse the drive. I've
posted a screengrab of the stats here:
http://crondesign.com/filestore/stats.png

Do I need to try the hotfix above if I have XPsp3 installed? Should I
tr the HDTune software?

Thanks for any help - this is a big problem for me.

Cheers,
Ciarán

I don't think that hotfix (817472) would do any good. If you go into
Device Manager, and look at the driver files used for the VIA controller,
you probably won't find ATAPI.sys there. If ATAPI.sys was being used,
then perhaps the hotfix or some workaround would be worth testing.
It could be, the driver file is viamraid.sys for example.

My other theory was going to be, that the HD154UI drive was an "Advanced
Format" drive, with 4KB sectors. But the data here, indicates it is a
normal 512 bytes per sector drive.

http://www.samsung.com/global/business/hdd/productmodel.do?type=94&subtype=98&model_cd=441

I've run out of ideas. I don't see what is holding it back currently.

There is an article here, about the new 4KB sector drives. Keep this for
future reference.

http://www.anandtech.com/show/2888

Paul
 
cronokleewrote:





I don't think that hotfix (817472) would do any good. If you go into
Device Manager, and look at the driver files used for the VIA controller,
you probably won't find ATAPI.sys there. If ATAPI.sys was being used,
then perhaps the hotfix or some workaround would be worth testing.
It could be, the driver file is viamraid.sys for example.

My other theory was going to be, that the HD154UI drive was an "Advanced
Format" drive, with 4KB sectors. But the data here, indicates it is a
normal 512 bytes per sector drive.

http://www.samsung.com/global/business/hdd/productmodel.do?type=94&su....

I've run out of ideas. I don't see what is holding it back currently.

There is an article here, about the new 4KB sector drives. Keep this for
future reference.

http://www.anandtech.com/show/2888

    Paul




Thanks Paul, I originally formatted it in 32KB clusters. Might this
make a difference?
Ciarán
 
cronoklee said:
Thanks Paul, I originally formatted it in 32KB clusters. Might this
make a difference?
Ciarán

If you use the HDTune benchmark option, and test the disk bandwidth that
way, the cluster size won't matter. The HDTune benchmark is a "raw device"
benchmark. For example, my current 500GB SATA drive, reports a performance
of 125MB/sec at the beginning of the disk, and about 75MB/sec near the
end of the disk. The performance drops in a steady curve, across the disk
surface. Give the HDTune benchmark a try, and it will characterize operation
independently of the file system type or cluster size.

You can see an example of an older hard drive here. This 320GB manages
about 70MB/sec near the beginning of the disk, and 35MB/sec near the end.
If, instead of a gentle curve like that, you see a "flat line", that
implies an artificial bottleneck somewhere else in the system. PIO mode
is one example of a bottleneck.

http://www.notebookcheck.biz/uploads/pics/hdtune_105da6_03.jpg

HTH,
Paul
 
cronokleewrote:


If you use the HDTune benchmark option, and test the disk bandwidth that
way, the cluster size won't matter. The HDTune benchmark is a "raw device"
benchmark. For example, my current 500GB SATA drive, reports a performance
of 125MB/sec at the beginning of the disk, and about 75MB/sec near the
end of the disk. The performance drops in a steady curve, across the disk
surface. Give the HDTune benchmark a try, and it will characterize operation
independently of the file system type or cluster size.

You can see an example of an older hard drive here. This 320GB manages
about 70MB/sec near the beginning of the disk, and 35MB/sec near the end.
If, instead of a gentle curve like that, you see a "flat line", that
implies an artificial bottleneck somewhere else in the system. PIO mode
is one example of a bottleneck.

http://www.notebookcheck.biz/uploads/pics/hdtune_105da6_03.jpg

HTH,
      Paul



Interesting - I downloaded and ran the HDTune benchmark and after a
few seconds (sometimes 2, sometimes 10-15) it throws an error: "Read
Error! Test Aborted."
I presume this is the same read error that's causing my problems.
Here's the screengrab: http://crondesign.com/filestore/stats2.png

I also ran a "quick" error scan and one single block in the diagram is
red. Is this a big deal?

Thanks for the help Paul

Ciarán
 
cronoklee said:
Interesting - I downloaded and ran the HDTune benchmark and after a
few seconds (sometimes 2, sometimes 10-15) it throws an error: "Read
Error! Test Aborted."
I presume this is the same read error that's causing my problems.
Here's the screengrab: http://crondesign.com/filestore/stats2.png

I also ran a "quick" error scan and one single block in the diagram is
red. Is this a big deal?

Thanks for the help Paul

Ciarán

That drive, or the interface cabling, has a serious problem.

There is a FAQ item here, which describes how to jumper a drive for 1.5Gbit/sec operation.

http://www.samsung.com/global/business/hdd/faqView.do?b2b_bbs_msg_id=121

Check to see if your drive has a 2x4 set of jumper pins on the back.
The label on the drive, should also document that jumper position.

http://www.samsung.com/global/syste...5620051216154941_SATAspeedselectionjumper.jpg

SATA drives now, support operation on the cable, at 1.5Gbit/sec
or 3.0Gbit/sec. Chips like the VIA VT6421A, may support operation
at only 1.5Gbit/sec. If the product documentation with your
card, claims the chip on the card actually runs at 3.0Gbit/sec,
then using that "Force 150" jumper on the hard drive, may
improve communications on the cable. (In some cases, the
setup works better at 1.5Gbit/sec than at 3.0Gbit/sec.)

The other thing you can try, is a different SATA cable.

SATA cables should not be bent to the point of being pinched.
If the cable has suffered any mechanical damage, you should
replace it.

Does Samsung offer a disk diagnostic program for download
from their website. Seagate offers a program for their drives
(that is what I use here, for testing the Seagate drives I've got).

I'm hoping your problem, is not with the disk itself, but you
should also prepare for that possibility. There are some customer
reviews for that drive, here.

http://www.newegg.com/Product/ProductReview.aspx?Item=N82E16822152175

"Bought four drives. Two have failed smartmon in the first
40 hours... Judge for yourself on that"

So there are some indications of problems with the drives.

HDTune can display the SMART statistics, but some controller
chips will not "pass through" the command to fetch that data.
If the SMART screen isn't showing any statistics, that would be
the reason (no pass through for the command). A motherboard
SATA connector is more likely to support SMART commands.

Paul
 
cronokleewrote:





That drive, or the interface cabling, has a serious problem.

There is a FAQ item here, which describes how to jumper a drive for 1.5Gbit/sec operation.

http://www.samsung.com/global/business/hdd/faqView.do?b2b_bbs_msg_id=121

Check to see if your drive has a 2x4 set of jumper pins on the back.
The label on the drive, should also document that jumper position.

http://www.samsung.com/global/system/business/hdd/faq/2007/6/28/40395...

SATA drives now, support operation on the cable, at 1.5Gbit/sec
or 3.0Gbit/sec. Chips like the VIA VT6421A, may support operation
at only 1.5Gbit/sec. If the product documentation with your
card, claims the chip on the card actually runs at 3.0Gbit/sec,
then using that "Force 150" jumper on the hard drive, may
improve communications on the cable. (In some cases, the
setup works better at 1.5Gbit/sec than at 3.0Gbit/sec.)

The other thing you can try, is a different SATA cable.

SATA cables should not be bent to the point of being pinched.
If the cable has suffered any mechanical damage, you should
replace it.

Does Samsung offer a disk diagnostic program for download
from their website. Seagate offers a program for their drives
(that is what I use here, for testing the Seagate drives I've got).

I'm hoping your problem, is not with the disk itself, but you
should also prepare for that possibility. There are some customer
reviews for that drive, here.

http://www.newegg.com/Product/ProductReview.aspx?Item=N82E16822152175

    "Bought four drives. Two have failed smartmon in the first
     40 hours... Judge for yourself on that"

So there are some indications of problems with the drives.

HDTune can display the SMART statistics, but some controller
chips will not "pass through" the command to fetch that data.
If the SMART screen isn't showing any statistics, that would be
the reason (no pass through for the command). A motherboard
SATA connector is more likely to support SMART commands.

    Paul


OK, thanks so much for the help Paul. Ill check the things you
mention and report back.
Ciarán
 
cronokleewrote:





That drive, or the interface cabling, has a serious problem.

There is a FAQ item here, which describes how to jumper a drive for 1.5Gbit/sec operation.

http://www.samsung.com/global/business/hdd/faqView.do?b2b_bbs_msg_id=121

Check to see if your drive has a 2x4 set of jumper pins on the back.
The label on the drive, should also document that jumper position.

http://www.samsung.com/global/system/business/hdd/faq/2007/6/28/40395...

SATA drives now, support operation on the cable, at 1.5Gbit/sec
or 3.0Gbit/sec. Chips like the VIA VT6421A, may support operation
at only 1.5Gbit/sec. If the product documentation with your
card, claims the chip on the card actually runs at 3.0Gbit/sec,
then using that "Force 150" jumper on the hard drive, may
improve communications on the cable. (In some cases, the
setup works better at 1.5Gbit/sec than at 3.0Gbit/sec.)

The other thing you can try, is a different SATA cable.

SATA cables should not be bent to the point of being pinched.
If the cable has suffered any mechanical damage, you should
replace it.

Does Samsung offer a disk diagnostic program for download
from their website. Seagate offers a program for their drives
(that is what I use here, for testing the Seagate drives I've got).

I'm hoping your problem, is not with the disk itself, but you
should also prepare for that possibility. There are some customer
reviews for that drive, here.

http://www.newegg.com/Product/ProductReview.aspx?Item=N82E16822152175

    "Bought four drives. Two have failed smartmon in the first
     40 hours... Judge for yourself on that"

So there are some indications of problems with the drives.

HDTune can display the SMART statistics, but some controller
chips will not "pass through" the command to fetch that data.
If the SMART screen isn't showing any statistics, that would be
the reason (no pass through for the command). A motherboard
SATA connector is more likely to support SMART commands.

    Paul





Hi Paul, I'm back with an update:
I tried the jumper idea - same problem occurred
I also tried a different SATA cable and a using a different SATA port
on the PCI adapter - no joy there either.
Suspecting the worst, I removed the drive and hooked it up to my
laptop via an old SATA-USB adapter I had lying around. To my surprise
the damn thing worked like a charm! I did a HTtune benchmark on it and
came back with a transfer speed of 30MB/s.

At this point I'm convinced it has to be a dodgy PCI SATA adapter. Is
there any possibility it could be a bus or cache or something
overloading on the motherboard?? If not Im going to get back the eBay
seller and request a new adapter.

In the meantime, I've actually used that old SATA-USB adapter to keep
the drive running smoothly in the PC itself! It comes out through a
hole in the case and goes back in one of the (many) free USB slots.
(For some reason those old Dell Dimensions ship with 6 USB ports?!)
I'm getting a very stable 26MB/s transfer rate from it now which as
I'm mainly accessing over LAN is not a problem. its actually a little
faster than my IDE drive!

So a happy ending more or less! Thanks so much for helping me narrow
down the problem Paul. Unless you think it could be something else I'm
gonna get back onto the seller about a new PCI card.

Thanks again,
Ciarán
 
cronoklee said:
Hi Paul, I'm back with an update:
I tried the jumper idea - same problem occurred
I also tried a different SATA cable and a using a different SATA port
on the PCI adapter - no joy there either.
Suspecting the worst, I removed the drive and hooked it up to my
laptop via an old SATA-USB adapter I had lying around. To my surprise
the damn thing worked like a charm! I did a HTtune benchmark on it and
came back with a transfer speed of 30MB/s.

At this point I'm convinced it has to be a dodgy PCI SATA adapter. Is
there any possibility it could be a bus or cache or something
overloading on the motherboard?? If not Im going to get back the eBay
seller and request a new adapter.

In the meantime, I've actually used that old SATA-USB adapter to keep
the drive running smoothly in the PC itself! It comes out through a
hole in the case and goes back in one of the (many) free USB slots.
(For some reason those old Dell Dimensions ship with 6 USB ports?!)
I'm getting a very stable 26MB/s transfer rate from it now which as
I'm mainly accessing over LAN is not a problem. its actually a little
faster than my IDE drive!

So a happy ending more or less! Thanks so much for helping me narrow
down the problem Paul. Unless you think it could be something else I'm
gonna get back onto the seller about a new PCI card.

Thanks again,
Ciarán

Well, you got some good news then. That the drive isn't bad after all.

What I'd suggest, is look at how the SATA connectors on the controller
card are allocated.

I think a VT6421A has two SATA ports and one IDE port. Now, some
manufacturers will take the wires for one port, and connect those
wires to an external (faceplate) connector, as well as an internal
connector. On one product I saw, there were a series of jumper plugs,
and you moved the jumper plugs, to enable either the external connector
or the internal one. On another product, they didn't even use jumper
plugs, instead choosing to leave an electrical mess for the chip to
deal with.

The signals on SATA are running at an extremely high speed. The very
best wiring pattern on the PCB, is one set of wires of constant
impedance. Preferably with differential wiring, with matched length
for each wire. That preserves as much as possible, of the original
signal quality.

Making "stubs" off the wires, like this, is considered poor practice.
There is a signal reflection at the "Y" joint, which ruins the signal
quality and causes errors. SATA is a packet protocol, with some kind
of CRC (cyclic redundancy check), so errors in the packets can be
detected. But any CRC scheme has limited detection powers, so if you
hammer on it with errored packets enough, an error will get through.
CRC error checking, is not a solution for a poorly designed card.

SATA_ext --
\
\___________ Controller
/ Interface
/
SATA_int --

If the chip is something like a VT6421A and you see two connectors
on the card, then you know they haven't taken any shortcuts. The
VT6421A would have two electrical interfaces, one going to each
connector. The chances of getting good results are much better,
if no tricks were used in the card design.

+------------------------+
SATA#1 -----------| Controller_Interface#1 |
| |
SATA#2 -----------| Controller_Interface#2 |
+------------------------+

So all I can suggest, is look at the design of the card, to
see if they did something dumb. I've seen cards with as many
as four connectors, when there are only two electrical interfaces
on the controller chip. And that means, it will be hard to pick
an interface with clean signals on it. You want a SATA connector
that does not "share" with any other connector. In some cases,
you can actually look at the copper tracks on the PCB, and figure
out where the signals are going.

Paul
 
cronokleewrote:





Well, you got some good news then. That the drive isn't bad after all.

What I'd suggest, is look at how the SATA connectors on the controller
card are allocated.

I think a VT6421A has two SATA ports and one IDE port. Now, some
manufacturers will take the wires for one port, and connect those
wires to an external (faceplate) connector, as well as an internal
connector. On one product I saw, there were a series of jumper plugs,
and you moved the jumper plugs, to enable either the external connector
or the internal one. On another product, they didn't even use jumper
plugs, instead choosing to leave an electrical mess for the chip to
deal with.

The signals on SATA are running at an extremely high speed. The very
best wiring pattern on the PCB, is one set of wires of constant
impedance. Preferably with differential wiring, with matched length
for each wire. That preserves as much as possible, of the original
signal quality.

Making "stubs" off the wires, like this, is considered poor practice.
There is a signal reflection at the "Y" joint, which ruins the signal
quality and causes errors. SATA is a packet protocol, with some kind
of CRC (cyclic redundancy check), so errors in the packets can be
detected. But any CRC scheme has limited detection powers, so if you
hammer on it with errored packets enough, an error will get through.
CRC error checking, is not a solution for a poorly designed card.

    SATA_ext --
               \
                \___________ Controller
                /            Interface
               /
    SATA_int --

If the chip is something like a VT6421A and you see two connectors
on the card, then you know they haven't taken any shortcuts. The
VT6421A would have two electrical interfaces, one going to each
connector. The chances of getting good results are much better,
if no tricks were used in the card design.

                      +------------------------+
    SATA#1 -----------| Controller_Interface#1 |
                      |                       |
    SATA#2 -----------| Controller_Interface#2 |
                      +------------------------+

So all I can suggest, is look at the design of the card, to
see if they did something dumb. I've seen cards with as many
as four connectors, when there are only two electrical interfaces
on the controller chip. And that means, it will be hard to pick
an interface with clean signals on it. You want a SATA connector
that does not "share" with any other connector. In some cases,
you can actually look at the copper tracks on the PCB, and figure
out where the signals are going.

    Paul



Thanks Paul, I'll have a look. Although it sounds a little over my
head, I'll try to follow your guidelines carefully. My card has 3 SATA
ports and one IDE port. Also there are jumper switches on the side,
one of which I've just noticed is slightly bent. It was shipped quite
badly packaged in just a padded envelope and an anti static bag. I'm
going to get back to the seller and see what he has to say. I'll
report back in a few days.

Ciarán
 
Back
Top