hard disk performance issue

Chris Newman canman at ev1.net
Sun Aug 24 20:19:51 PDT 2003


Hmm... when I do what you suggest, here's what I get...

tigger# dd if=/dev/ad8s1d of=/dev/null bs=64k count=100
100+0 records in
100+0 records out
6553600 bytes transferred in 0.147501 secs (44430888 bytes/sec)
tigger# dd if=/dev/ad8s1d of=/dev/null bs=100k count=100
100+0 records in
100+0 records out
10240000 bytes transferred in 0.230168 secs (44489246 bytes/sec)
tigger# dd if=/dev/ad8s1d of=/dev/null bs=200k count=100
100+0 records in
100+0 records out
20480000 bytes transferred in 0.429506 secs (47682693 bytes/sec)

~47MB ? huge difference

I'm still not sure at this point what the best way is to evaluate whether
I'm getting my money's worth out of this disk/controller. How do I do a good
benchmark of the speed?

Thanks,

cn


-----Original Message-----
From: Erik Trulsson [mailto:ertr1013 at student.uu.se]
Sent: Sunday, August 24, 2003 7:32 PM
To: Chris Newman
Cc: freebsd-questions at FreeBSD.ORG
Subject: Re: hard disk performance issue


On Sun, Aug 24, 2003 at 06:16:11PM -0500, Chris Newman wrote:
> Hi,
>
> I have a Dell P3-500 Optiplex GX1. I was running FreeBSD 5.0 on an 8G
drive.
> I recently upgraded to a Western Digital ATA100 40GB drive and loaded
> FreeBSD 5.1.
> I expected to get improved drive performance, however, my motherboard
would
> only do UDMA-33.
>
> So, I picked up a Maxtor SATA/150 PCI Combo card. It's supposed to do
> ATA-100. My dmesg
> indicates that it is running UDMA-100, but my disk dump performance is
still
> pathetic.
>
> Here's a dd sample:
>
> tigger# dd if=/dev/ad8s1d of=/home/chris/tmp.dat count=10000
> 10000+0 records in
> 10000+0 records out
> 5120000 bytes transferred in 2.292473 secs (2233396 bytes/sec)
>
> ~ 2MB per second?? It was about 1.8MB per second before I upgraded. The
only
> thing
> I can attribute the marginal speed-up to is the faster drive rotation
speed
> (7400 RPM).

What do you expect when you only transfer 512 bytes with each
read/write? That is a lot of overhead, and will make the actual speed
of the disk to have little effect on the numbers obtained.

Try increasing the block size. I.e. try:

dd if=/dev/ad8s1d of=/home/chris/tmp.dat bs=64k count=100

On my system that gives about a factor of 8 faster performance.
To get a better idea on how fast the disk actually is (with less
overhead from the filesystem, and with less seeking involved) (and also
to get bigger numbers :-) ) try sending the output to /dev/null instead
of an actual file. (I.e. use of=/dev/null instead of of=/home/chris/tmp.dat)

--
<Insert your favourite quote here.>
Erik Trulsson
ertr1013 at student.uu.se

---
Incoming mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.408 / Virus Database: 230 - Release Date: 10/24/2002

---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.408 / Virus Database: 230 - Release Date: 10/24/2002




More information about the freebsd-questions mailing list