[prev in list] [next in list] [prev in thread] [next in thread] 

List:       openbsd-misc
Subject:    Re: ciss(4) write very slow w/o bbwc
From:       csszep <csszep () gmail ! com>
Date:       2012-05-30 13:53:02
Message-ID: CADobNNJ4oNVrehtJYd-E68SS=p=usC-aRreP0Ro95Gka=MCncQ () mail ! gmail ! com
[Download RAW message or body]

Hi!

I tested the performance w and w/o the patch. There is no difference.

ciss0 at pci3 dev 3 function 0 "Compaq Smart Array 64xx" rev 0x01: apic 10 int
3
ciss0: 2 LDs, HW rev 1, FW 2.84/2.84, 64bit fifo
scsibus0 at ciss0: 2 targets
sd0 at scsibus0 targ 0 lun 0: <HP, LOGICAL VOLUME, 2.84> SCSI2 0/direct fixed
sd0: 69459MB, 512 bytes/sector, 142253280 sectors
sd1 at scsibus0 targ 1 lun 0: <HP, LOGICAL VOLUME, 2.84> SCSI2 0/direct fixed
sd1: 140006MB, 512 bytes/sector, 286734240 sectors

kern.bufcachepercent=20

w/o patch

raw device

# dd if=/dev/zero of=/dev/rsd1d bs=1m count=1000
1000+0 records in
1000+0 records out
1048576000 bytes transferred in 75.550 secs (13879230 bytes/sec)

file

# dd if=/dev/zero of=test bs=1m count=1000
1000+0 records in
1000+0 records out
1048576000 bytes transferred in 16.986 secs (61728607 bytes/sec)

w patch

raw device

# dd if=/dev/zero of=/dev/rsd1d bs=1m count=1000
1000+0 records in
1000+0 records out
1048576000 bytes transferred in 75.609 secs (13868396 bytes/sec)

file

# dd if=/dev/zero of=test bs=1m count=1000
1000+0 records in
1000+0 records out
1048576000 bytes transferred in 16.165 secs (64863961 bytes/sec)

In fact, the file test performance is acceptable for me.

The raw performace (eg. newfs) is not so important.

Thx
csszep

2012/5/29 Andreas Bartelt <obsd@bartula.de>:
> 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

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic