From: W. eWatson on
I'm trying to transfer about 64G from an internal drive to an external
Seagate Free Agent 1.0 terrabyte drive (Subject). The estimated time is
about 3.3 hours. That seems very slow. I have no idea if I'm using a USB
2.0 or 1.0 port. I ran Sandra and it showed USB Controller 5, 12419 NEC
PIC to USB 2.0. No other USB controller shows any USB version, that is,
not 1.0. I have about a six year old ASUSA7S333 MB.

How do I know which of the 6 USB ports (four on a card), two in front,
is the 2.0 port? Only five USB controllers are listed by Sandra. One of
the front ones may not be connected.
From: Paul on
W. eWatson wrote:
> I'm trying to transfer about 64G from an internal drive to an external
> Seagate Free Agent 1.0 terrabyte drive (Subject). The estimated time is
> about 3.3 hours. That seems very slow. I have no idea if I'm using a USB
> 2.0 or 1.0 port. I ran Sandra and it showed USB Controller 5, 12419 NEC
> PIC to USB 2.0. No other USB controller shows any USB version, that is,
> not 1.0. I have about a six year old ASUSA7S333 MB.
>
> How do I know which of the 6 USB ports (four on a card), two in front,
> is the 2.0 port? Only five USB controllers are listed by Sandra. One of
> the front ones may not be connected.

First of all, the items in the Device Manager, are not "Ports".
They're "logic blocks".

The USB2 one is shared. One USB2 logic block may feed as many as
six USB ports.

The sharing ratio on USB 1.1 logic blocks is different. One USB 1.1
logic block is shared over two ports.

To operate six USB ports on a modern computer, requires one USB2
logic block and three USB 1.1 logic blocks.

(These ratios are common, but there are exceptions.)

When a USB device is plugged in, there is a negotiation procedure
that decides whether the port is "bound" to a USB 1.1 logic
block or a USB 2.0 logic block.

*******

To test your drive, try HDTune. I presume it works over a USB
interface.

http://www.hdtune.com/files/hdtune_255.exe

If you run the "benchmark" test, it does sequential reads (which is
the most efficient way to access the hard drive). On a USB2
hard drive, the USB bus protocol is the limiting factor. You can
expect somewhere in the order of 30MB/sec (about five times faster
than your current claimed transfer rate). USB hard drive protocol
seems incapable of reaching the 60MB/sec promised by the PHY
data speed. So you get about 30MB/sec out of it.

Your HDTune benchmark, if it is working properly, should be a
"flat line" at 30MB/sec.

On some older USB2 controller chips, you might see 20MB/sec. There
were some controller chips, that were less capable.

If you see an actual flat line at 6MB/sec, then that is too fast
for USB 1.1 rate. USB 1.1 achieves 1MB/sec. If you're getting 6MB/sec,
that is in between any reasonable values, and I don't have an explanation
(at least, where sequential access is concerned).

Since the USB2 controller is shared, if you had a number of USB2 webcams
capturing video, at the same time as you were doing your disk transfer,
that might explain it. But I've yet to run into someone, who was doing
so much simultaneous USB operations, to have that happen.

If you were transferring files between two external USB2 drives, you'd
expect the achieved rate to be lower in that case.

And if you transfer a lot of small files, your average transfer rate
will be very low. That is because, all the "seek" head movement, takes
up precious transfer time, reducing efficiency.

*******

The A7S333 uses an SIS745 chipset. The claim here, is it has two OHCI controllers
driving six total ports. OHCI is USB 1.1. (EHCI is USb 2.0). For you to be seeing
more than 1 MB/sec transfer rate on that computer, you must be using a separate
PCI USB2 card.

http://web.archive.org/web/20080616045830/http://www.sis.com/products/sis745.htm

Paul
From: W. eWatson on
On 5/6/2010 2:23 PM, Paul wrote:
> W. eWatson wrote:
>> I'm trying to transfer about 64G from an internal drive to an external
>> Seagate Free Agent 1.0 terrabyte drive (Subject). The estimated time
>> is about 3.3 hours. That seems very slow. I have no idea if I'm using
>> a USB 2.0 or 1.0 port. I ran Sandra and it showed USB Controller 5,
>> 12419 NEC PIC to USB 2.0. No other USB controller shows any USB
>> version, that is, not 1.0. I have about a six year old ASUSA7S333 MB.
>>
>> How do I know which of the 6 USB ports (four on a card), two in front,
>> is the 2.0 port? Only five USB controllers are listed by Sandra. One
>> of the front ones may not be connected.
>
> First of all, the items in the Device Manager, are not "Ports".
> They're "logic blocks".
>
> The USB2 one is shared. One USB2 logic block may feed as many as
> six USB ports.
>
> The sharing ratio on USB 1.1 logic blocks is different. One USB 1.1
> logic block is shared over two ports.
>
> To operate six USB ports on a modern computer, requires one USB2
> logic block and three USB 1.1 logic blocks.
>
> (These ratios are common, but there are exceptions.)
>
> When a USB device is plugged in, there is a negotiation procedure
> that decides whether the port is "bound" to a USB 1.1 logic
> block or a USB 2.0 logic block.
>
> *******
>
> To test your drive, try HDTune. I presume it works over a USB
> interface.
>
> http://www.hdtune.com/files/hdtune_255.exe
>
> If you run the "benchmark" test, it does sequential reads (which is
> the most efficient way to access the hard drive). On a USB2
> hard drive, the USB bus protocol is the limiting factor. You can
> expect somewhere in the order of 30MB/sec (about five times faster
> than your current claimed transfer rate). USB hard drive protocol
> seems incapable of reaching the 60MB/sec promised by the PHY
> data speed. So you get about 30MB/sec out of it.
>
> Your HDTune benchmark, if it is working properly, should be a
> "flat line" at 30MB/sec.
>
> On some older USB2 controller chips, you might see 20MB/sec. There
> were some controller chips, that were less capable.
>
> If you see an actual flat line at 6MB/sec, then that is too fast
> for USB 1.1 rate. USB 1.1 achieves 1MB/sec. If you're getting 6MB/sec,
> that is in between any reasonable values, and I don't have an explanation
> (at least, where sequential access is concerned).
>
> Since the USB2 controller is shared, if you had a number of USB2 webcams
> capturing video, at the same time as you were doing your disk transfer,
> that might explain it. But I've yet to run into someone, who was doing
> so much simultaneous USB operations, to have that happen.
>
> If you were transferring files between two external USB2 drives, you'd
> expect the achieved rate to be lower in that case.
>
> And if you transfer a lot of small files, your average transfer rate
> will be very low. That is because, all the "seek" head movement, takes
> up precious transfer time, reducing efficiency.
>
> *******
>
> The A7S333 uses an SIS745 chipset. The claim here, is it has two OHCI
> controllers
> driving six total ports. OHCI is USB 1.1. (EHCI is USb 2.0). For you to
> be seeing
> more than 1 MB/sec transfer rate on that computer, you must be using a
> separate
> PCI USB2 card.
>
> http://web.archive.org/web/20080616045830/http://www.sis.com/products/sis745.htm
>
>
> Paul
Well, whatever the cause, it certainly changed this evening when I tried
copy 86G. I put the USB plug into a different block on the 4 block card.
I started the transfer about 30 minutes ago and a message appeared
immediately it would take 72 minutes!

I've noticed this "flakiness" before in doing these transfers. One day
it takes only 10-20 minutes, and then a week later when I want to do a
similar transfer, it takes 2 hours. I guess a strategy is for really
long transfers is to change the plug to another block when the estimated
time seems out of bounds.