Mike Tancsa
2013-05-28 13:38:34 UTC
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
Loading Image...
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 ?
***@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
III. From the BIOS, the card implies it does indeed see the SATA III drives
Pic of the BIOS here
Loading Image...
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 ?
***@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, ***@sentex.net
Providing Internet services since 1994 www.sentex.net
Cambridge, Ontario Canada http://www.tancsa.com/
-------------------
Mike Tancsa, tel +1 519 651 3400
Sentex Communications, ***@sentex.net
Providing Internet services since 1994 www.sentex.net
Cambridge, Ontario Canada http://www.tancsa.com/