Hello,

On 05/29/12 17:28, Kenneth R Westerback wrote:
On Tue, May 29, 2012 at 03:48:02PM +0200, csszep wrote:
Hi!

So i tested the ciss performance with Openbsd 5.1 and Netbsd 5.1.2 and
the numbers are the same. :(

approx 13Mbyte/s write with dd if=/dev/zero of=/dev/rsd1c bs=1m count=500

But why Linux is four times faster (approx 40Mbyte/s)?

Dunno. But the diff below should apply the NetBSD 'fix' for the INQUIRY
command.

.... Ken


Dunno. But the diff below should apply the NetBSD 'fix' for the INQUIRY
command.


I also can confirm relatively slow ciss(4) performance on OpenBSD. Enabling the (not battery backed) cache via BIOS doesn't help significantly.

I just did some tests on a HP Proliant DL360G7 with RAID1 via ciss(4) with 2x300GB 6G SAS 10000 rpm HDDs (cache disabled on this box):

# disklabel sd0
# /dev/rsd0c:
type: SCSI
disk: SCSI disk
label: LOGICAL VOLUME
duid: 410f0efc5a9d86dd
flags:
bytes/sector: 512
sectors/track: 63
tracks/cylinder: 255
sectors/cylinder: 16065
cylinders: 36468
total sectors: 585871964
boundstart: 64
boundend: 585858420
drivedata: 0

16 partitions:
#                size           offset  fstype [fsize bsize  cpg]
  a:          1028096               64  4.2BSD   2048 16384    1 # /
  c:        585871964                0  unused
  d:          1028160          1028160  4.2BSD   2048 16384    1 # /var
  e:        146801952          2056320  4.2BSD   2048 16384    1 # /usr
  f:         20964832        148858272  4.2BSD   2048 16384    1 # /home
  g:        416035264        169823104  4.2BSD   4096 32768    1 # /log

# mount
/dev/sd0a on / type ffs (local, noatime, softdep)
/dev/sd0f on /home type ffs (local, noatime, nodev, nosuid, softdep)
/dev/sd0g on /log type ffs (local, noatime, nodev, nosuid, softdep)
/dev/sd0e on /usr type ffs (local, noatime, nodev, softdep)
/dev/sd0d on /var type ffs (local, noatime, nodev, nosuid, softdep)


# dmesg|grep ciss
ciss0 at pci1 dev 0 function 0 "Hewlett-Packard Smart Array" rev 0x01: apic 0 int 4
ciss0: 2 LDs, HW rev 2, FW 3.66/3.66, 64bit fifo rro
scsibus0 at ciss0: 2 targets

before applying your patch:

[/usr]
# dd if=/dev/zero of=testfile bs=1m count=1000
1000+0 records in
1000+0 records out
1048576000 bytes transferred in 16.428 secs (63825353 bytes/sec)

[/usr]
# dd if=/dev/zero of=testfile bs=1m count=10000
10000+0 records in
10000+0 records out
10485760000 bytes transferred in 153.910 secs (68128911 bytes/sec)

[/log]
# dd if=/dev/zero of=testfile bs=1m count=1000
1000+0 records in
1000+0 records out
1048576000 bytes transferred in 8.122 secs (129087680 bytes/sec)

[/log]
# dd if=/dev/zero of=testfile bs=1m count=10000
10000+0 records in
10000+0 records out
10485760000 bytes transferred in 87.701 secs (119561580 bytes/sec)

after applying your patch:

[/usr]
# dd if=/dev/zero of=testfile bs=1m count=1000
1000+0 records in
1000+0 records out
1048576000 bytes transferred in 14.113 secs (74296489 bytes/sec)

[/usr]
# dd if=/dev/zero of=testfile bs=1m count=10000
10000+0 records in
10000+0 records out
10485760000 bytes transferred in 154.600 secs (67824996 bytes/sec)

[/log]
# dd if=/dev/zero of=testfile bs=1m count=1000
1000+0 records in
1000+0 records out
1048576000 bytes transferred in 6.836 secs (153379539 bytes/sec)

[/log]
# dd if=/dev/zero of=testfile bs=1m count=10000
10000+0 records in
10000+0 records out
10485760000 bytes transferred in 82.955 secs (126402027 bytes/sec)

The larger fsize/bsize of partition sd0g almost seems to double the writing throughput in comparison to partition sd0e. I didn't expect this much of a difference.

Regarding performance, copying many small files (~190 MB) is much worse (time is identical before and after the patch):
[/log/test]
# date ; cp -Rp /usr/src/sys . ; date
Tue May 29 20:42:32 CEST 2012
Tue May 29 20:43:15 CEST 2012

Best Regards
Andreas

Reply via email to