Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 28 May 2013 09:38:23 -0400
From:      Mike Tancsa <mike@sentex.net>
To:        "freebsd-hardware@freebsd.org" <freebsd-hardware@freebsd.org>
Subject:   Rocket Raid 622 in AHCI mode
Message-ID:  <51A4B34F.7000505@sentex.net>

next in thread | raw e-mail | index | archive | help
I picked up an external PMP/Cage/RR6622 combo that claims to be Sata
III. From the BIOS, the card implies it does indeed see the SATA III drives

Pic of the BIOS here
http://tancsa.com/rr.jpg

ahci0: <HighPoint RocketRAID 622 AHCI SATA controller> port
0x4090-0x4097,0x4080-0x4083,0x4070-0x4077,0x4060-0x4063,0x4050-0x405f
mem 0xc2430000-0xc24307ff irq 16 at device 0.0 on pci1
ahci0: AHCI v1.00 with 2 6Gbps ports, Port Multiplier supported with FBS
ahcich0: <AHCI channel> at channel 0 on ahci0
ahcich1: <AHCI channel> at channel 1 on ahci0



However, performance is abysmal and worse than using a regular sii based
SATA II card.

It sees the PMP and cage as

pmp0 at ahcich1 bus 0 scbus1 target 15 lun 0
pmp0: <Port Multiplier 38261095 1706> ATA-0 device
pmp0: 300.000MB/s transfers (SATA 2.x, NONE, PIO 8192bytes)
pmp0: 5 fan-out ports
ada1 at ahcich1 bus 0 scbus1 target 0 lun 0
ada1: <WDC WD1002FAEX-00Z3A0 05.01D05> ATA-8 SATA 3.x device
ada1: 300.000MB/s transfers (SATA 2.x, UDMA6, PIO 8192bytes)
ada1: Command Queueing enabled
ada1: 953869MB (1953525168 512 byte sectors: 16H 63S/T 16383C)
ada1: Previously was known as ad6
ada2 at ahcich1 bus 0 scbus1 target 1 lun 0
ada2: <WDC WD1002FAEX-00Z3A0 05.01D05> ATA-8 SATA 3.x device
ada2: 300.000MB/s transfers (SATA 2.x, UDMA6, PIO 8192bytes)
ada2: Command Queueing enabled
ada2: 953869MB (1953525168 512 byte sectors: 16H 63S/T 16383C)
ada2: Previously was known as ad7
ada3 at ahcich1 bus 0 scbus1 target 2 lun 0
ada3: <WDC WD1502FAEX-007BA0 05.01D05> ATA-8 SATA 3.x device
ada3: 300.000MB/s transfers (SATA 2.x, UDMA6, PIO 8192bytes)
ada3: Command Queueing enabled
ada3: 1430799MB (2930277168 512 byte sectors: 16H 63S/T 16383C)
ada4 at ahcich1 bus 0 scbus1 target 3 lun 0
ada4: <WDC WD2002FAEX-007BA0 05.01D05> ATA-8 SATA 3.x device
ada4: 300.000MB/s transfers (SATA 2.x, UDMA6, PIO 8192bytes)
ada4: Command Queueing enabled
ada4: 1907729MB (3907029168 512 byte sectors: 16H 63S/T 16383C)
ada5 at ahcich1 bus 0 scbus1 target 4 lun 0
ada5: <WDC WD2002FAEX-007BA0 05.01D05> ATA-8 SATA 3.x device
ada5: 300.000MB/s transfers (SATA 2.x, UDMA6, PIO 8192bytes)
ada5: Command Queueing enabled
ada5: 1907729MB (3907029168 512 byte sectors: 16H 63S/T 16383C)

# camcontrol devlist
<WDC WD1002FAEX-00Z3A0 05.01D05>   at scbus1 target 0 lun 0 (ada1,pass2)
<WDC WD1002FAEX-00Z3A0 05.01D05>   at scbus1 target 1 lun 0 (ada2,pass3)
<WDC WD1502FAEX-007BA0 05.01D05>   at scbus1 target 2 lun 0 (ada3,pass4)
<WDC WD2002FAEX-007BA0 05.01D05>   at scbus1 target 3 lun 0 (ada4,pass5)
<WDC WD2002FAEX-007BA0 05.01D05>   at scbus1 target 4 lun 0 (ada5,pass6)
<Port Multiplier 38261095 1706>    at scbus1 target 15 lun 0 (pmp0,pass1)
<WDC WD5002AALX-00J37A0 15.01H15>  at scbus2 target 0 lun 0 (pass0,ada0)

Writing to the individual disks seems fine, but when all the disks are
engaged, its very slow

# zpool create -f tank raidz ada1 ada2 ada3 ada4 ada5

# dd if=/dev/zero of=/tank/test1 bs=2048k count=10
10+0 records in
10+0 records out
20971520 bytes transferred in 60.370025 secs (347383 bytes/sec)
# zpool export tank; zpool import tank
# dd if=/tank/test1 of=/dev/null bs=2048k
10+0 records in
10+0 records out
20971520 bytes transferred in 7.678915 secs (2731052 bytes/sec)


# for i in `jot 5 1`; do dd if=/dev/ada$i of=/dev/null count=200
bs=2048k;done
200+0 records in
200+0 records out
419430400 bytes transferred in 3.211699 secs (130594554 bytes/sec)
200+0 records in
200+0 records out
419430400 bytes transferred in 3.034111 secs (138238327 bytes/sec)
200+0 records in
200+0 records out
419430400 bytes transferred in 3.639701 secs (115237601 bytes/sec)
200+0 records in
200+0 records out
419430400 bytes transferred in 2.841386 secs (147614716 bytes/sec)
200+0 records in
200+0 records out
419430400 bytes transferred in 3.020611 secs (138856154 bytes/sec)
#

# for i in `jot 5 1`; do dd if=/dev/zero  of=/dev/ada$i  count=200
bs=2048k;done
200+0 records in
200+0 records out
419430400 bytes transferred in 3.285333 secs (127667539 bytes/sec)
200+0 records in
200+0 records out
419430400 bytes transferred in 3.043410 secs (137815945 bytes/sec)
200+0 records in
200+0 records out
419430400 bytes transferred in 3.611478 secs (116138154 bytes/sec)
200+0 records in
200+0 records out
419430400 bytes transferred in 2.830386 secs (148188414 bytes/sec)
200+0 records in
200+0 records out
419430400 bytes transferred in 2.987366 secs (140401412 bytes/sec)
#

Any ideas on how to fix this controller to make it work better with ZFS
and get better speeds ?


ahci0@pci0:1:0:0:       class=0x010400 card=0x00011103 chip=0x06221103
rev=0x01 hdr=0x00
    vendor     = 'HighPoint Technologies, Inc.'
    class      = mass storage
    subclass   = RAID
    bar   [10] = type I/O Port, range 32, base 0x4090, size  8, enabled
    bar   [14] = type I/O Port, range 32, base 0x4080, size  4, enabled
    bar   [18] = type I/O Port, range 32, base 0x4070, size  8, enabled
    bar   [1c] = type I/O Port, range 32, base 0x4060, size  4, enabled
    bar   [20] = type I/O Port, range 32, base 0x4050, size 16, enabled
    bar   [24] = type Memory, range 32, base 0xc2430000, size 2048, enabled
    cap 01[40] = powerspec 3  supports D0 D3  current D0
    cap 05[50] = MSI supports 1 message enabled with 1 message
    cap 10[70] = PCI-Express 2 legacy endpoint max data 128(512) link x1(x1)
                 speed 5.0(5.0)
ecap 0001[100] = AER 1 1 fatal 0 non-fatal 0 corrected


	---Mike








-- 
-------------------
Mike Tancsa, tel +1 519 651 3400
Sentex Communications, mike@sentex.net
Providing Internet services since 1994 www.sentex.net
Cambridge, Ontario Canada   http://www.tancsa.com/



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?51A4B34F.7000505>