Re: ciss(4): speed degradation for Compaq Smart Array

From: Poul-Henning Kamp <phk_at_phk.freebsd.dk>
Date: Wed, 30 Mar 2005 13:13:35 +0200
In message <20050330133031.56c27ce3.aka_at_veco.ru>, Andrey Koklin writes:

>I've noticed there is drastic difference in speed for the systems.
>While I have linear transfer 45-50 Mb/s (write) and 100 Mb/s (read)
>for FreeBSD 4.11, there is near two times degradation in speed
>with 5.4 and 6.0.

First, you chosen benchmark doesn't measure speed, it measures
latency.  If you don't know the difference, you have no business
running benchmarks.  (If you wanted to measure speed you should use
a large block size to minimize the per transaction overhead.)

>FreeBSD 4.11:
>ciss.c,v 1.2.2.21 2005/01/21
>
># dd if=/dev/zero of=/var/tmp/4G bs=1024 count=$[4*1024*1024]
>
>4294967296 bytes transferred in 107.075789 secs (40111470 bytes/sec)

107.075789/(4*1024*1024) = .000025528

What you measure here is that it takes 25.528 microseconds per
1K write.

Sequential 1K writes is an incredible useless thing to measure 
performance off on a RAID-5 volume.

># dd if=/var/tmp/4G of=/dev/zero
>
>4294967296 bytes transferred in 42.394322 secs (101309966 bytes/sec)

42.394322/(4294967296/512) = .000000119

And 119 nanoseconds per 512 byte read.

>FreeBSD 5.4-pre:
>ciss.c,v 1.56.2.1 2005/01/20
>
># dd if=/dev/zero of=/var/tmp/4G bs=1024 count=$[4*1024*1024]
>
>4294967296 bytes transferred in 163.088095 secs (26335259 bytes/sec)

163.088095/(4*1024*1024) = .000038883

Now it takes 38.883 microseconds per write.

># dd if=/var/tmp/4G of=/dev/zero
>
>4294967296 bytes transferred in 79.773797 secs (53839324 bytes/sec)

79.773797/(4294967296/512) = .000009509

And 9.509 microseconds per read.

It is not that these numbers are not interesting, but you have
to see them in context:  A typical high end disk drive has a
4-5 millisecond access time which means that the degradation
is on the order of 0.2%

I ignored your 6-current numbers because you gave no indication
that if you had actually read lines 11 to 22 of src/UPDATING.

You don't state if you are running SMP or UP or if you have indeed
built kernels to match the configuration.  That makes your numbers
a bit on the suspect side.

Finally, learn about standard deviations, and don't post benchmarks
without providing them in the future.

-- 
Poul-Henning Kamp       | UNIX since Zilog Zeus 3.20
phk_at_FreeBSD.ORG         | TCP/IP since RFC 956
FreeBSD committer       | BSD since 4.3-tahoe    
Never attribute to malice what can adequately be explained by incompetence.
Received on Wed Mar 30 2005 - 09:13:40 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:30 UTC