kern/137797: gmirror split does not improve performance

Oles Hnatkevych don_oles at able.com.ua
Sat Aug 15 14:20:07 UTC 2009


>Number:         137797
>Category:       kern
>Synopsis:       gmirror split does not improve performance
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Sat Aug 15 14:20:06 UTC 2009
>Closed-Date:
>Last-Modified:
>Originator:     Oles Hnatkevych
>Release:        FreeBSD 7.2
>Organization:
>Environment:
>Description:
Mirror is created with gmirror on ad8 and ad10
ad8: 476940MB <Seagate ST3500630NS 3.AEK> at ata4-master SATA150
ad10: 476940MB <Seagate ST3500630NS 3.AEK> at ata5-master SATA150
Geom name: ar1
State: COMPLETE
Components: 2
Balance: split
Slice: 4096
Flags: NONE
GenID: 0
SyncID: 1
mirror/ar1  COMPLETE  ad8
                      ad10
The split algorithm does not improve any performance. Even simple dd with block size 1M has the same speed as a single drive, while two dd's on singe drive run simultaneously proove that SATA throughput is not a bottleneck.

>How-To-Repeat:
gmirror label ar1 ad8 ad10
dd if=/dev/ad8 of=/dev/null bs=1M count=500
dd if=/dev/mirror/ar1 of=/dev/null bs=1M count=500
both give the same speed (around 80MB/s for Seagate 500GB SATA drives)

but 
dd if=/dev/ad8 of=/dev/null bs=1M count=500 & dd if=/dev/ad10 of=/dev/null bs=1M count=500
show that in parallel they do provide data faster.

BTW, the performance of a RAID1 created with the atacontrol is a bit better then gmirror.
>Fix:


>Release-Note:
>Audit-Trail:
>Unformatted:


More information about the freebsd-bugs mailing list