[sclug] disk transfer rates (was) Newbie, partitioning 120Gb HDD - recommendations?
Tom Dawes-Gamble
tmdg at tmdg.co.uk
Wed Jan 19 07:52:55 UTC 2005
Hi,
Prompted by the information in
http://www.pcguide.com/ref/hdd/geom/tracksZBR-c.html
I thought I'd look the information on my 200 Gig WDC disk I noticed
that it gave two transfer rates. One for disk to buffer and one for
buffer to host. But alas I couldn't find out the Zone information.
Anyway I read again the information and followed the "data transfer
rate" to link
http://www.pcguide.com/ref/hdd/perf/perf/spec/trans_Media.htm
This points out that the "data transfer rate" has nothing to do with the
"interface transfer rate".
So I've knocked together a very rough benchmark. How long so it take to
read a gigabyte from the disk. I did each test several times and these
are typical results.
# time dd if=/dev/sda of=/dev/null bs=1024 count=1048576
1048576+0 records in
1048576+0 records out
real 0m18.691s
user 0m2.519s
sys 0m6.494s
However I can speed that up.
# time dd if=/dev/sda of=/dev/null bs=8192 count=131072
131072+0 records in
131072+0 records out
real 0m17.801s
user 0m0.328s
sys 0m2.149s
Showing it spent > 2 sec less in user and > 4 sec less in system but the
elapsed time was barely 1 sec better.
Next I tried skipping down the disk 80Gig
# time dd if=/dev/sda of=/dev/null bs=8192 count=131072 skip=10000000
131072+0 records in
131072+0 records out
real 0m18.898s
user 0m0.339s
sys 0m2.107s
No real difference user and sys about ht esame which is what you would
expect. But elapsed a second slower.
Now skip 160gig
# time dd if=/dev/sda of=/dev/null bs=8192 count=131072 skip=20000000
131072+0 records in
131072+0 records out
real 0m24.208s
user 0m0.334s
sys 0m2.098s
Again no change in user and sys but a good 50% increase in elapsed time.
If I skip to getting on for 192 gig
# time dd if=/dev/sda of=/dev/null bs=8192 count=131072 skip=24000000
131072+0 records in
131072+0 records out
real 0m30.330s
user 0m0.313s
sys 0m2.171s
Yuk!!!
Now if I change the rules and only read 64Meg things change.
# time dd if=/dev/sda of=/dev/null bs=1024 count=65536 skip=192000000
65536+0 records in
65536+0 records out
real 0m0.496s
user 0m0.150s
sys 0m0.346s
# time dd if=/dev/sda of=/dev/null bs=1024 count=65536
65536+0 records in
65536+0 records out
real 0m0.495s
user 0m0.187s
sys 0m0.309s
To my mind there is no difference in these figures.
>From these figures I conclude that it does depend on what you are doing
and how you do it that has the most effect.
I would suggest that the 64Meg test is closer to what most people do.
regards,
Tom.
More information about the Sclug
mailing list