Home Contact Download

asyd.net

Welcome to Bruno Bonfils's (aka asyd homepage).

I'm back with a new ZFS benchmark. This time, I have two disks dedicated to my test.

Vendor IBMAS400
Product 0662SW1
Revision 101B
Size 1G

I know, these disks are small and old, but anyway, it's not a performance test but a comparison beetween ZFS, UFS, and SVM. I have more interest in perf of ZFS versus SVM+UFS in mirror mode. Like my previous bench, I used bonnie++ (built with gcc) in a x86 (AMD 1200MHz) running Solaris Express build 27.

As you can see below, I let bonnie++ use just a little less than 80% of available space disk (768M for ~980M). Since I ran 5 bonnie++ tests each time, data was rewrite.

zfs-vs-svm_ufs.jpg

  • Each value in graph is average of 5 tests
# /opt/bonnie++/sbin/bonnie++ -s 768 -x 5 ...

Procedures

UFS Whole disk

# format
Current Disk = c2t2d0
<DEFAULT cyl 1000 alt 2 hd 64 sec 32>
/pci@0,0/pci1000,1000@8/sd@2,0

Part      Tag    Flag     Cylinders       Size            Blocks
  0 unassigned    wm       0 - 999     1000.00MB    (1000/0/0) 2048000
  1 unassigned    wm       0              0         (0/0/0)          0
  2     backup    wu       0 - 999     1000.00MB    (1000/0/0) 2048000
  3 unassigned    wm       0              0         (0/0/0)          0
  4 unassigned    wm       0              0         (0/0/0)          0
  5 unassigned    wm       0              0         (0/0/0)          0
  6 unassigned    wm       0              0         (0/0/0)          0
  7 unassigned    wm       0              0         (0/0/0)          0
  8       boot    wu       0 -   0        1.00MB    (1/0/0)       2048
  9 unassigned    wm       0              0         (0/0/0)          0


anastasia# newfs /dev/rdsk/c2t2d0s0
anastasia# mount /dev/dsk/c2t2d0s0 /mnt/benchmark

SVM + UFS mirror mode

# metadb devices
anastasia# metadb -a -f -c 3 /dev/dsk/c2t4d0s0
anastasia# metadb -a -f -c 3 /dev/dsk/c2t4d0s0

# Init device
anastasia# metainit d1 1 1 c2t2d0s0
d1: Concat/Stripe is setup
anastasia# metainit d2 1 1 c2t4d0s0
d2: Concat/Stripe is setup

# Create the mirror
anastasia# metainit d10 -m d1
d10: Mirror is setup
anastasia# metattach d10 d2
d10: submirror d2 is attached

# Create a soft partition inside the mirror
anastasia# metainit d11 -p d10 986M
anastasia# metastat
d11: Soft Partition
    Device: d10
    State: Okay
    Size: 2019328 blocks (986 MB)
        Extent              Start Block              Block count
             0                     1024                  2019328

d10: Mirror
    Submirror 0: d1
      State: Okay
    Submirror 1: d2
      State: Okay
    Pass: 1
    Read option: roundrobin (default)
    Write option: parallel (default)
    Size: 2021376 blocks (987 MB)

d1: Submirror of d10
    State: Okay
    Size: 2021376 blocks (987 MB)
    Stripe 0:
        Device     Start Block  Dbase        State Reloc Hot Spare
        c2t2d0s0      26624     Yes           Okay   Yes


d2: Submirror of d10
    State: Okay
    Size: 2021376 blocks (987 MB)
    Stripe 0:
        Device     Start Block  Dbase        State Reloc Hot Spare
        c2t4d0s0      26624     Yes           Okay   Yes


Device Relocation Information:
Device   Reloc  Device ID
c2t4d0   Yes    id1,sd@SIBMAS4000662SW1_________________00156915
c2t2d0   Yes    id1,sd@SIBMAS4000662SW1_________________00223936

anastasia# newfs /dev/md/rdsk/d11
newfs: construct a new file system /dev/md/rdsk/d11: (y/n)? y

ZFS Whole disk

anastasia# zpool create -f data c2t2d0
anastasia# zfs create data/benchmark
anastasia# zfs set mountpoint=/mnt/benchmark data/benchmark

ZFS Mirror mode

anastasia# zpool create -f data mirror c2t2d0 c2t4d0
anastasia# zpool list
NAME                    SIZE    USED   AVAIL    CAP  HEALTH     ALTROOT
data                    984M   33.0K    984M     0%  ONLINE     -
anastasia# zfs create data/benchmark
anastasia# zfs set mountpoint=/mnt/benchmark data/benchmark
anastasia# df -h .
Filesystem             size   used  avail capacity  Mounted on
data/benchmark         968M     8K   968M     1%    /mnt/benchmark

Others