max transfer update

  • Thread starter Thread starter Geoff
  • Start date Start date
What is your percentage of CPU utilization ?
Paul

Is the Windows 7 machine maxed out ?

Copying files from Windows 7 to Xp Pro using RAMDisks, on the Windows
7 PC I see % CPU usage start at 85%, drop to 48% and then to 1-2%.

Whilst the above is happening on the XP Pro PC I see % CPU usage
around 40% and then drop to 2%.

Cheers

Geoff
 
Paul,

I have just noticed that when Outlook 2010 exports my folders to the
c: drive on the Windows 7 PC it does so at a rate of 40MB/sec which is
much the same rate at which a file can be copied from the XP Pro PC to
the Windows 7 PC.

Not having Outlook on the XP Pro PC I tried simply copying a file from
one folder to another on each PC. On the Windows 7 PC the figure
started at 90MB/sec but then fell via 81, 64, 56, 51 to 44. Timing the
copying the calculated rate was 44MB/sec. Similar to the Outlook
figure.

On the XP Pro PC copying a file from 1 folder to another happened at
the rate of 20MB/sec.

These 2 figures are actually close to the rates of copying files from
one PC to the other so it looks as if the network/NIC side is OK but
that the slowness is due to the MDT HDD on the XP Pro PC.

A new, SATA HDD may be the answer, as you suggested!

Cheers

Geoff
 
Paul

You will see that in my message re the rate of copying a file from one
folder to another on the Windows 7 PC I said the rate was 44MB/sec and
that this was similar to the rate of copying a file from the XP Pro PC
to the Windows 7 PC.

But! Can this mean that it is impossible to get a a file copied to
this PC at a rate greated than this?! Is the rate of copying a file
from one folder to another on the same PC the fastest rate possible?

This would mean the limit is 320Mbps even though I have a 1000Mbps
network.

My logic is flawed?

Geoff.
 
Paul

You will see that in my message re the rate of copying a file from one
folder to another on the Windows 7 PC I said the rate was 44MB/sec and
that this was similar to the rate of copying a file from the XP Pro PC
to the Windows 7 PC.

But! Can this mean that it is impossible to get a a file copied to
this PC at a rate greated than this?! Is the rate of copying a file
from one folder to another on the same PC the fastest rate possible?

This would mean the limit is 320Mbps even though I have a 1000Mbps
network.

I should write 8 x 44 = 352Mbps ...

Geoff
 
Geoff said:
I should write 8 x 44 = 352Mbps ...

Geoff

Well, if the disk data source or data sink has an I/O limit,
and that limit is below the network limit, then the disk will be
the limiting factor.

Best case, by using a SATA drive, a SATA to IDE adapter, connecting
the adapter to the ribbon cable interface on your 845 chipset, you
can get 88.9MB/sec. (Limited by the Intel Southbridge ribbon cable
design, which due to strobing issues, can only do 88.9MB/sec on writes.)

You benched your MDT hard drive and got something like 40MB/sec,
so that would be a limiting factor. For benchmarking purposes,
you could use a RAMDisk and file share that, and since that is
*not* a hard drive, that might work better.

*******

I went into the storage area, and picked out a P4 1.8GHz computer,
with 845 (SDRAM) chipset, and 1.5GB of installed memory. The CMOS
battery was flat, so all the settings were lost. I hate batteries :-)

Your 845 uses DDR memory, while mine is an earlier design that
used SDRAM instead. There isn't much difference in those early
designs, between SDRAM and DDR. The motherboard is similar enough,
for the purposes of this benchmark exercise.

I installed the TPLink TG3269 in the machine, and used the mini-CD
in the box to install a driver. The driver didn't "take" properly,
and I ended up going to the Realtek site to get a driver from them.
That seemed to work better on my old computer.

I tried to set up a RAMDisk, but the "good" RAMdisk wants WinXP
or higher, so that didn't work. I tried the AR Soft RAMDisk,
which installs fine, but it is limited to around 256MB (from
non paged pool), and that wasn't worth the trouble either.

I couldn't even get file sharing set up on that machine.

While I was in Windows, I ran HDTune and the Maxtor 60GB hard
drive in that computer, benches at 40MB/sec max! Pretty poor.
But understandable for such an old computer. So even if
everything was otherwise working in Windows, I couldn't go
faster than 40MB/sec (320mbit/sec network speed) while
transferring files. I'd need the workaround I described
previously, to hit the 88.9MB/sec limit of the chipset interface.
Installing a PCI SATA card isn't the answer, due to the limited
PCI bus bandwidth (bandwidth shared by the TG3269 and the SATA
controller card), which would limit file sharing copies over
the network to no more than 60MB/sec (even if the disk supports more).
So using a SATA to IDE adapter dongle, it might be possible to
do better than with a SATA card (for the purposes of benchmarking).

So I went back to Linux, and used a Ubuntu LiveCD on both the
source and destination computers. I used RCP protocol for testing.
And used the /tmp directory to hold the file (so the disk drive would
not be the limit).

First, I make a test file in /tmp. This makes a roughly 700MB file.

dd if=/dev/zero of=/tmp/test.bin bs=1048576 count=700

Then, I send it with RCP.

rcp /tmp/test.bin 192.168.123.231:/tmp/test.bin

When sending from the Core2 machine with "good" Marvell NIC to
the P4 1.8GHz with TPLink card, I get

45.4MB/sec transfer rate 4% CPU usage on the Core2 processor.

When I reverse the direction of transfer, using the P4 1.8GHz to
push the file across, I get

56.8MB/sec transfer rate 49% CPU usage on the 1.8GHz P4

What is interesting, is I didn't "hit top speed". The only
bus activity on the P4 1.8GHz machine with 845, should have
been the PCI NIC card. And I didn't hit 117MB/sec in this
test. By using /tmp on the LiveCD, the idea was that
it functions as a RAMDisk.

So even if you improve your hard drive performance, with yet more
purchased hardware, you might run into the same kind of limit
I'm seeing. There is no guarantee you'd get to the 88.9MB/sec
point as determined by the Intel IDE interface.

That's why it's important to "benchmark in pieces". For
example, my results show my current disk is 40MB/sec,
my network alone is 56.8MB/sec, so what good would it
do to purchase an 88.9MB/sec disk setup ? I have to
*somehow* tweak my network, to do a better job.
And it isn't obvious what is amiss there. I
don't believe it is a PCI bus issue. On my
70MB/sec VIA chipset system, I was blaming that
on the PCI bus, rather than the TPLink card. I
was expecting better things from the Intel 845
chipset and its PCI bus.

Paul
 
Well, if the disk data source or data sink has an I/O limit,
and that limit is below the network limit, then the disk will be
the limiting factor.

Best case, by using a SATA drive, a SATA to IDE adapter, connecting
the adapter to the ribbon cable interface on your 845 chipset, you
can get 88.9MB/sec. (Limited by the Intel Southbridge ribbon cable
design, which due to strobing issues, can only do 88.9MB/sec on writes.)

You benched your MDT hard drive and got something like 40MB/sec,
so that would be a limiting factor. For benchmarking purposes,
you could use a RAMDisk and file share that, and since that is
*not* a hard drive, that might work better.

*******

I went into the storage area, and picked out a P4 1.8GHz computer,
with 845 (SDRAM) chipset, and 1.5GB of installed memory. The CMOS
battery was flat, so all the settings were lost. I hate batteries :-)

Your 845 uses DDR memory, while mine is an earlier design that
used SDRAM instead. There isn't much difference in those early
designs, between SDRAM and DDR. The motherboard is similar enough,
for the purposes of this benchmark exercise.

I installed the TPLink TG3269 in the machine, and used the mini-CD
in the box to install a driver. The driver didn't "take" properly,
and I ended up going to the Realtek site to get a driver from them.
That seemed to work better on my old computer.

I tried to set up a RAMDisk, but the "good" RAMdisk wants WinXP
or higher, so that didn't work. I tried the AR Soft RAMDisk,
which installs fine, but it is limited to around 256MB (from
non paged pool), and that wasn't worth the trouble either.

I couldn't even get file sharing set up on that machine.

While I was in Windows, I ran HDTune and the Maxtor 60GB hard
drive in that computer, benches at 40MB/sec max! Pretty poor.
But understandable for such an old computer. So even if
everything was otherwise working in Windows, I couldn't go
faster than 40MB/sec (320mbit/sec network speed) while
transferring files. I'd need the workaround I described
previously, to hit the 88.9MB/sec limit of the chipset interface.
Installing a PCI SATA card isn't the answer, due to the limited
PCI bus bandwidth (bandwidth shared by the TG3269 and the SATA
controller card), which would limit file sharing copies over
the network to no more than 60MB/sec (even if the disk supports more).
So using a SATA to IDE adapter dongle, it might be possible to
do better than with a SATA card (for the purposes of benchmarking).

So I went back to Linux, and used a Ubuntu LiveCD on both the
source and destination computers. I used RCP protocol for testing.
And used the /tmp directory to hold the file (so the disk drive would
not be the limit).

First, I make a test file in /tmp. This makes a roughly 700MB file.

dd if=/dev/zero of=/tmp/test.bin bs=1048576 count=700

Then, I send it with RCP.

rcp /tmp/test.bin 192.168.123.231:/tmp/test.bin

When sending from the Core2 machine with "good" Marvell NIC to
the P4 1.8GHz with TPLink card, I get

45.4MB/sec transfer rate 4% CPU usage on the Core2 processor.

When I reverse the direction of transfer, using the P4 1.8GHz to
push the file across, I get

56.8MB/sec transfer rate 49% CPU usage on the 1.8GHz P4

What is interesting, is I didn't "hit top speed". The only
bus activity on the P4 1.8GHz machine with 845, should have
been the PCI NIC card. And I didn't hit 117MB/sec in this
test. By using /tmp on the LiveCD, the idea was that
it functions as a RAMDisk.

So even if you improve your hard drive performance, with yet more
purchased hardware, you might run into the same kind of limit
I'm seeing. There is no guarantee you'd get to the 88.9MB/sec
point as determined by the Intel IDE interface.

That's why it's important to "benchmark in pieces". For
example, my results show my current disk is 40MB/sec,
my network alone is 56.8MB/sec, so what good would it
do to purchase an 88.9MB/sec disk setup ? I have to
*somehow* tweak my network, to do a better job.
And it isn't obvious what is amiss there. I
don't believe it is a PCI bus issue. On my
70MB/sec VIA chipset system, I was blaming that
on the PCI bus, rather than the TPLink card. I
was expecting better things from the Intel 845
chipset and its PCI bus.

Paul


Paul

I come back to my thought re the speed at which I can copy a file from
one folder to another folder on the same computer, using Windows
Explorer on my better PC, the one with Windows 7 on it.

Since the rate for that is 40MB/sec (using a stop watch) I assume that
means that there is no possibility of moving a file across the
network, using my present 2 PCs at a speed greater than 40MB/sec?

Am I right?!

Cheers

Geoff
 
Geoff said:
Paul

I come back to my thought re the speed at which I can copy a file from
one folder to another folder on the same computer, using Windows
Explorer on my better PC, the one with Windows 7 on it.

Since the rate for that is 40MB/sec (using a stop watch) I assume that
means that there is no possibility of moving a file across the
network, using my present 2 PCs at a speed greater than 40MB/sec?

Am I right?!

Cheers

Geoff

If you copy from one section of a single disk, to another section,
that divides the transfer rate in half. If you have a 40MB/sec disk,
20MB/sec is spent on reads, 20MB/sec is spent on writes, and the
benchmark results shows 20MB/sec.

If transferring across the network, there is only one operation
going on. If the computer is the source, then that disk is
doing reads. At the destination computer, the disk does only writes.

So your disk bandwidth goes further, when working with shares.

If you want to benchmark your disk, by doing a large file transfer
from C: to D:, and C: and D: are on the same disk drive, then
double the result to guess at how much disk bandwidth is available
for (unidirectional) network transfers.

When you use HDTune for benchmarking, that doesn't transfer files.
It just reads sectors. In that case, the 40MB/sec number is what
you should see, because all of the bandwidth is used for reads.

Paul
 
If you copy from one section of a single disk, to another section,
that divides the transfer rate in half. If you have a 40MB/sec disk,
20MB/sec is spent on reads, 20MB/sec is spent on writes, and the
benchmark results shows 20MB/sec.

If transferring across the network, there is only one operation
going on. If the computer is the source, then that disk is
doing reads. At the destination computer, the disk does only writes.

So your disk bandwidth goes further, when working with shares.

If you want to benchmark your disk, by doing a large file transfer
from C: to D:, and C: and D: are on the same disk drive, then
double the result to guess at how much disk bandwidth is available
for (unidirectional) network transfers.

Paul,

If I get 40MB/sec for this copying of file from one folder to another
folder on the same HDD are you saying that the max theoretically
possible rate for copying a file across the network is 80MB/sec?

Cheers

Geoff
 
Geoff said:
Paul,

If I get 40MB/sec for this copying of file from one folder to another
folder on the same HDD are you saying that the max theoretically
possible rate for copying a file across the network is 80MB/sec?

Cheers

Geoff

If I make a copy of an 800MB file, to the same folder, and it takes
20 seconds, that's a total of 1600MB of data being handled by the
disk in 20 seconds. 1600/20 = 80MB/sec. Of that, there is 800/20
or 40MB/sec of reading going on, and 800/20 or 40MB/sec of
writing going on. The disk is time shared in bursts. The disk
sees 80MB/sec of activity.

If I own a 120MB/sec disk, I expect to be able to copy-paste
into the same folder at 60MB/sec. I expect to be able to network
transfer (unidirectional) at 120MB/sec. If the protocol can go
that fast.

Paul
 
If I make a copy of an 800MB file, to the same folder, and it takes
20 seconds, that's a total of 1600MB of data being handled by the
disk in 20 seconds. 1600/20 = 80MB/sec. Of that, there is 800/20
or 40MB/sec of reading going on, and 800/20 or 40MB/sec of
writing going on. The disk is time shared in bursts. The disk
sees 80MB/sec of activity.

If I own a 120MB/sec disk, I expect to be able to copy-paste
into the same folder at 60MB/sec. I expect to be able to network
transfer (unidirectional) at 120MB/sec. If the protocol can go
that fast.

Paul

Paul

Re my Seagate Barracuda ST1000DL002-9TT153 ATA 1T HDD it is described
as 300MBps,

so I could copy/paste at 150MBps.

If I use HDTune for a read test I see an average of 95MBps

In fact the copy/paste when timed using a stop watch the rate is
44MBps.

Can you reconcile these figures?!

Geoff
 
Geoff said:
Paul

Re my Seagate Barracuda ST1000DL002-9TT153 ATA 1T HDD it is described
as 300MBps,

so I could copy/paste at 150MBps.

If I use HDTune for a read test I see an average of 95MBps

In fact the copy/paste when timed using a stop watch the rate is
44MBps.

Can you reconcile these figures?!

Geoff

When you see that number (150/300/600), that is for the SATA *cable* .

The platters are a separate limitation.

The original cable and interface, has a physical rate of 1.5Gbit/sec
and uses 8B/10B encoding. You multiply 1.5 x 8/10 and then divide
the result by 8 to get bytes. And that gives 150MB/sec. So after
the overhead bits are removed, the basic cable transfer rate is 150MB/sec.
The information flow is packetized, so there is a bit of overhead in each
packet that isn't your data. Now the transfer rate on the cable is
less than 150MB/sec.

But the platters are what gives the distinctive curve in HDTune.
The left part of the graph, is the outer cylinder of the disk.
The outer cylinder has a larger diameter than the inner cylinder.
Ignoring other details, that gives a basic curve shape (lower
rate near the hub).

Year over year, the bit density on the disk has been rising, and
with it, the bit rate at the head assembly. So now, I can own a
disk for $50-$60, that transfers at the platters at around 125MB/sec.
It wasn't that many years ago it was 65MB/sec or 40MB/sec.

Now, you can also see in the above info, the silliness of a hard drive
with a SATA III cable interface. What good is a 600MB/sec cable
rate, when the platter is still 125MB/sec ? Part of the answer to that,
is what optional modes it has. You can use what is known as Port
Multiplier technology, to connect multiple disks to a single port
on the computer. If you did that, you could potentially do a better
job of filling the 600MB/sec pipe. But so far, that market hasn't
really advanced that much. I still haven't run into anyone on the
newsgroups, who has used a port multiplier for SATA. I'm not even sure
what SATA cable rate, the existing port multiplier supports.

The disk controller has a cache, and for a short time, the controller
board can "absorb" data and hold it in the cache chip. When you use
HDTune and you see the field marked "Burst Rate", they do a test
where they try to get the info to go to the cache chip. The burst rate
thus measured, is pretty high. It's intended to show how close
to the cable rate you can get. But when you're transferring an 800MB
file (a copy-paste), the amount of information is much larger than the
cache chip, so any speedup for the first few milliseconds is lost
as the disk is limited by the platters. Then, you see the
"sustained" transfer rate, as embodied in the curve in the graph.

So when you really need the speed, to transfer that large file,
what you're faced with is the platter speed limit. And even then, that
speed is only available on a purely sequential access. If you are file
sharing and moving a folder with a thousand 2KB files, the overall
transfer rate will be tiny. It won't even be close to 125MB/sec,
because of all the head movement to locate each 2KB file. Once the head
has to be moved, performance goes out the window. When the head is moving,
no data can be transferred, until the head arrives at the destination
and finds the desired sector(s) to transfer. So head movement is a
big penalty. HDTune moves the head sequentially, which is why that
curve looks so good.

HTH,
Paul
 
When you see that number (150/300/600), that is for the SATA *cable* .

The platters are a separate limitation.

The original cable and interface, has a physical rate of 1.5Gbit/sec
and uses 8B/10B encoding. You multiply 1.5 x 8/10 and then divide
the result by 8 to get bytes. And that gives 150MB/sec. So after
the overhead bits are removed, the basic cable transfer rate is 150MB/sec.
The information flow is packetized, so there is a bit of overhead in each
packet that isn't your data. Now the transfer rate on the cable is
less than 150MB/sec.

But the platters are what gives the distinctive curve in HDTune.
The left part of the graph, is the outer cylinder of the disk.
The outer cylinder has a larger diameter than the inner cylinder.
Ignoring other details, that gives a basic curve shape (lower
rate near the hub).

Year over year, the bit density on the disk has been rising, and
with it, the bit rate at the head assembly. So now, I can own a
disk for $50-$60, that transfers at the platters at around 125MB/sec.
It wasn't that many years ago it was 65MB/sec or 40MB/sec.

Now, you can also see in the above info, the silliness of a hard drive
with a SATA III cable interface. What good is a 600MB/sec cable
rate, when the platter is still 125MB/sec ? Part of the answer to that,
is what optional modes it has. You can use what is known as Port
Multiplier technology, to connect multiple disks to a single port
on the computer. If you did that, you could potentially do a better
job of filling the 600MB/sec pipe. But so far, that market hasn't
really advanced that much. I still haven't run into anyone on the
newsgroups, who has used a port multiplier for SATA. I'm not even sure
what SATA cable rate, the existing port multiplier supports.

The disk controller has a cache, and for a short time, the controller
board can "absorb" data and hold it in the cache chip. When you use
HDTune and you see the field marked "Burst Rate", they do a test
where they try to get the info to go to the cache chip. The burst rate
thus measured, is pretty high. It's intended to show how close
to the cable rate you can get. But when you're transferring an 800MB
file (a copy-paste), the amount of information is much larger than the
cache chip, so any speedup for the first few milliseconds is lost
as the disk is limited by the platters. Then, you see the
"sustained" transfer rate, as embodied in the curve in the graph.

So when you really need the speed, to transfer that large file,
what you're faced with is the platter speed limit. And even then, that
speed is only available on a purely sequential access. If you are file
sharing and moving a folder with a thousand 2KB files, the overall
transfer rate will be tiny. It won't even be close to 125MB/sec,
because of all the head movement to locate each 2KB file. Once the head
has to be moved, performance goes out the window. When the head is moving,
no data can be transferred, until the head arrives at the destination
and finds the desired sector(s) to transfer. So head movement is a
big penalty. HDTune moves the head sequentially, which is why that
curve looks so good.

HTH,
Paul

Many thanks Paul - will read with care1

Cheers

Geoff
 
Back
Top