Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 15 Feb 2010 09:01:56 -0800
From:      Jeremy Chadwick <freebsd@jdc.parodius.com>
To:        freebsd-stable@freebsd.org
Subject:   Re: More zfs benchmarks
Message-ID:  <20100215170156.GA64731@icarus.home.lan>
In-Reply-To: <EC10D2E9-04C7-4976-B377-62E79D9BE47A@witchspace.com>
References:  <EC10D2E9-04C7-4976-B377-62E79D9BE47A@witchspace.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, Feb 14, 2010 at 05:28:28PM +0000, Jonathan Belson wrote:
> Hiya
> 
> After reading some earlier threads about zfs performance, I decided to test my own server.  I found the results rather surprising...

Below are my results from my home machine.  Note that my dd size and
count differ from what the OP provided.

I should note that powerd(8) is in effect on this box; I probably should
have disabled it and forced the CPU frequency to be at max before doing
these tests.

-- 
| Jeremy Chadwick                                   jdc@parodius.com |
| Parodius Networking                       http://www.parodius.com/ |
| UNIX Systems Administrator                  Mountain View, CA, USA |
| Making life hard for others since 1977.              PGP: 4BD6C0CB |

# uname -a
FreeBSD icarus.home.lan 8.0-STABLE FreeBSD 8.0-STABLE #0: Sat Jan 16 17:48:04 PST 2010     root@icarus.home.lan:/usr/obj/usr/src/sys/X7SBA_RELENG_8_amd64  amd64

# uptime
 6:51AM  up 29 days, 12:48, 2 users, load averages: 0.06, 0.04, 0.01

# sysctl hw.machine hw.model hw.ncpu hw.physmem hw.usermem hw.realmem hw.pagesizes
hw.machine: amd64
hw.model: Intel(R) Core(TM)2 Duo CPU     E8400  @ 3.00GHz
hw.ncpu: 2
hw.physmem: 4285317120
hw.usermem: 3520425984
hw.realmem: 5100273664
hw.pagesizes: 4096 2097152 0

# sysctl vm.kmem_size vm.kmem_size_min vm.kmem_size_max vm.kmem_size_scale
vm.kmem_size: 1378439168
vm.kmem_size_min: 0
vm.kmem_size_max: 329853485875
vm.kmem_size_scale: 3

# dmesg | egrep '(ata[57]|atapci0)'
atapci0: <Intel ICH9 SATA300 controller> port 0x1c50-0x1c57,0x1c44-0x1c47,0x1c48-0x1c4f,0x1c40-0x1c43,0x18e0-0x18ff mem 0xdc000800-0xdc000fff irq 17 at device 31.2 on pci0
atapci0: [ITHREAD]
atapci0: AHCI called from vendor specific driver
atapci0: AHCI v1.20 controller with 6 3Gbps ports, PM supported
ata2: <ATA channel 0> on atapci0
ata3: <ATA channel 1> on atapci0
ata4: <ATA channel 2> on atapci0
ata5: <ATA channel 3> on atapci0
ata5: [ITHREAD]
ata6: <ATA channel 4> on atapci0
ata7: <ATA channel 5> on atapci0
ata7: [ITHREAD]
ad10: 953869MB <WDC WD1001FALS-00J7B1 05.00K05> at ata5-master UDMA100 SATA 3Gb/s
ad14: 953869MB <WDC WD1001FALS-00J7B1 05.00K05> at ata7-master UDMA100 SATA 3Gb/s

# egrep '^[a-z]' /boot/loader.conf
kern.maxdsiz="1536M"
kern.dfldsiz="1536M"
kern.maxssiz="256M"
hint.sio.1.disabled="1"
vm.pmap.pg_ps_enabled="1"
vfs.zfs.prefetch_disable="1"
debug.cpufreq.lowest="1500"

# zpool status
  pool: storage
 state: ONLINE
 scrub: scrub stopped after 0h27m with 0 errors on Fri Feb 12 10:55:49 2010
config:

        NAME        STATE     READ WRITE CKSUM
        storage     ONLINE       0     0     0
          mirror    ONLINE       0     0     0
            ad10    ONLINE       0     0     0
            ad14    ONLINE       0     0     0

errors: No known data errors

kstat.zfs.misc.arcstats before tests
======================================
kstat.zfs.misc.arcstats.hits: 102892520
kstat.zfs.misc.arcstats.misses: 1043985
kstat.zfs.misc.arcstats.demand_data_hits: 100502054
kstat.zfs.misc.arcstats.demand_data_misses: 1010714
kstat.zfs.misc.arcstats.demand_metadata_hits: 2390466
kstat.zfs.misc.arcstats.demand_metadata_misses: 33271
kstat.zfs.misc.arcstats.prefetch_data_hits: 0
kstat.zfs.misc.arcstats.prefetch_data_misses: 0
kstat.zfs.misc.arcstats.prefetch_metadata_hits: 0
kstat.zfs.misc.arcstats.prefetch_metadata_misses: 0
kstat.zfs.misc.arcstats.mru_hits: 4675003
kstat.zfs.misc.arcstats.mru_ghost_hits: 11655
kstat.zfs.misc.arcstats.mfu_hits: 98217517
kstat.zfs.misc.arcstats.mfu_ghost_hits: 15079
kstat.zfs.misc.arcstats.deleted: 2456180
kstat.zfs.misc.arcstats.recycle_miss: 6236
kstat.zfs.misc.arcstats.mutex_miss: 1238
kstat.zfs.misc.arcstats.evict_skip: 0
kstat.zfs.misc.arcstats.hash_elements: 5753
kstat.zfs.misc.arcstats.hash_elements_max: 23704
kstat.zfs.misc.arcstats.hash_collisions: 643164
kstat.zfs.misc.arcstats.hash_chains: 229
kstat.zfs.misc.arcstats.hash_chain_max: 5
kstat.zfs.misc.arcstats.p: 839285616
kstat.zfs.misc.arcstats.c: 841024368
kstat.zfs.misc.arcstats.c_min: 107690560
kstat.zfs.misc.arcstats.c_max: 861524480
kstat.zfs.misc.arcstats.size: 96783432
kstat.zfs.misc.arcstats.hdr_size: 1196624
kstat.zfs.misc.arcstats.l2_hits: 258
kstat.zfs.misc.arcstats.l2_misses: 0
kstat.zfs.misc.arcstats.l2_feeds: 3337
kstat.zfs.misc.arcstats.l2_rw_clash: 0
kstat.zfs.misc.arcstats.l2_writes_sent: 576
kstat.zfs.misc.arcstats.l2_writes_done: 576
kstat.zfs.misc.arcstats.l2_writes_error: 0
kstat.zfs.misc.arcstats.l2_writes_hdr_miss: 6
kstat.zfs.misc.arcstats.l2_evict_lock_retry: 2
kstat.zfs.misc.arcstats.l2_evict_reading: 0
kstat.zfs.misc.arcstats.l2_free_on_write: 797
kstat.zfs.misc.arcstats.l2_abort_lowmem: 14
kstat.zfs.misc.arcstats.l2_cksum_bad: 0
kstat.zfs.misc.arcstats.l2_io_error: 0
kstat.zfs.misc.arcstats.l2_size: 0
kstat.zfs.misc.arcstats.l2_hdr_size: 0
kstat.zfs.misc.arcstats.memory_throttle_count: 8929



test #1 (327,680,000 bytes)
=============================
# dd if=/dev/zero of=/storage/test01 bs=64k count=5000
5000+0 records in
5000+0 records out
327680000 bytes transferred in 0.500110 secs (655215969 bytes/sec)

test #1 (kstat.zfs.misc.arcstats)
===================================
kstat.zfs.misc.arcstats.hits: 102894825
kstat.zfs.misc.arcstats.misses: 1043985
kstat.zfs.misc.arcstats.demand_data_hits: 100504066
kstat.zfs.misc.arcstats.demand_data_misses: 1010714
kstat.zfs.misc.arcstats.demand_metadata_hits: 2390759
kstat.zfs.misc.arcstats.demand_metadata_misses: 33271
kstat.zfs.misc.arcstats.prefetch_data_hits: 0
kstat.zfs.misc.arcstats.prefetch_data_misses: 0
kstat.zfs.misc.arcstats.prefetch_metadata_hits: 0
kstat.zfs.misc.arcstats.prefetch_metadata_misses: 0
kstat.zfs.misc.arcstats.mru_hits: 4675145
kstat.zfs.misc.arcstats.mru_ghost_hits: 11655
kstat.zfs.misc.arcstats.mfu_hits: 98219680
kstat.zfs.misc.arcstats.mfu_ghost_hits: 15079
kstat.zfs.misc.arcstats.deleted: 2456182
kstat.zfs.misc.arcstats.recycle_miss: 6236
kstat.zfs.misc.arcstats.mutex_miss: 1238
kstat.zfs.misc.arcstats.evict_skip: 0
kstat.zfs.misc.arcstats.hash_elements: 8275
kstat.zfs.misc.arcstats.hash_elements_max: 23704
kstat.zfs.misc.arcstats.hash_collisions: 643458
kstat.zfs.misc.arcstats.hash_chains: 436
kstat.zfs.misc.arcstats.hash_chain_max: 5
kstat.zfs.misc.arcstats.p: 839285616
kstat.zfs.misc.arcstats.c: 841024368
kstat.zfs.misc.arcstats.c_min: 107690560
kstat.zfs.misc.arcstats.c_max: 861524480
kstat.zfs.misc.arcstats.size: 425377840
kstat.zfs.misc.arcstats.hdr_size: 1721200
kstat.zfs.misc.arcstats.l2_hits: 258
kstat.zfs.misc.arcstats.l2_misses: 0
kstat.zfs.misc.arcstats.l2_feeds: 3337
kstat.zfs.misc.arcstats.l2_rw_clash: 0
kstat.zfs.misc.arcstats.l2_writes_sent: 576
kstat.zfs.misc.arcstats.l2_writes_done: 576
kstat.zfs.misc.arcstats.l2_writes_error: 0
kstat.zfs.misc.arcstats.l2_writes_hdr_miss: 6
kstat.zfs.misc.arcstats.l2_evict_lock_retry: 2
kstat.zfs.misc.arcstats.l2_evict_reading: 0
kstat.zfs.misc.arcstats.l2_free_on_write: 797
kstat.zfs.misc.arcstats.l2_abort_lowmem: 14
kstat.zfs.misc.arcstats.l2_cksum_bad: 0
kstat.zfs.misc.arcstats.l2_io_error: 0
kstat.zfs.misc.arcstats.l2_size: 0
kstat.zfs.misc.arcstats.l2_hdr_size: 0
kstat.zfs.misc.arcstats.memory_throttle_count: 8929



test #2 (3,276,800,000 bytes)
===============================
# dd if=/dev/zero of=/storage/test02 bs=64k count=50000
50000+0 records in
50000+0 records out
3276800000 bytes transferred in 36.670274 secs (89358481 bytes/sec)

test #2 (kstat.zfs.misc.arcstats)
===================================
kstat.zfs.misc.arcstats.hits: 102897079
kstat.zfs.misc.arcstats.misses: 1043986
kstat.zfs.misc.arcstats.demand_data_hits: 100506196
kstat.zfs.misc.arcstats.demand_data_misses: 1010715
kstat.zfs.misc.arcstats.demand_metadata_hits: 2390883
kstat.zfs.misc.arcstats.demand_metadata_misses: 33271
kstat.zfs.misc.arcstats.prefetch_data_hits: 0
kstat.zfs.misc.arcstats.prefetch_data_misses: 0
kstat.zfs.misc.arcstats.prefetch_metadata_hits: 0
kstat.zfs.misc.arcstats.prefetch_metadata_misses: 0
kstat.zfs.misc.arcstats.mru_hits: 4677086
kstat.zfs.misc.arcstats.mru_ghost_hits: 11655
kstat.zfs.misc.arcstats.mfu_hits: 98219993
kstat.zfs.misc.arcstats.mfu_ghost_hits: 15080
kstat.zfs.misc.arcstats.deleted: 2474133
kstat.zfs.misc.arcstats.recycle_miss: 6275
kstat.zfs.misc.arcstats.mutex_miss: 1238
kstat.zfs.misc.arcstats.evict_skip: 0
kstat.zfs.misc.arcstats.hash_elements: 14185
kstat.zfs.misc.arcstats.hash_elements_max: 23704
kstat.zfs.misc.arcstats.hash_collisions: 649617
kstat.zfs.misc.arcstats.hash_chains: 2277
kstat.zfs.misc.arcstats.hash_chain_max: 5
kstat.zfs.misc.arcstats.p: 832921238
kstat.zfs.misc.arcstats.c: 834619760
kstat.zfs.misc.arcstats.c_min: 107690560
kstat.zfs.misc.arcstats.c_max: 861524480
kstat.zfs.misc.arcstats.size: 834412096
kstat.zfs.misc.arcstats.hdr_size: 3222752
kstat.zfs.misc.arcstats.l2_hits: 258
kstat.zfs.misc.arcstats.l2_misses: 0
kstat.zfs.misc.arcstats.l2_feeds: 3337
kstat.zfs.misc.arcstats.l2_rw_clash: 0
kstat.zfs.misc.arcstats.l2_writes_sent: 576
kstat.zfs.misc.arcstats.l2_writes_done: 576
kstat.zfs.misc.arcstats.l2_writes_error: 0
kstat.zfs.misc.arcstats.l2_writes_hdr_miss: 6
kstat.zfs.misc.arcstats.l2_evict_lock_retry: 2
kstat.zfs.misc.arcstats.l2_evict_reading: 0
kstat.zfs.misc.arcstats.l2_free_on_write: 797
kstat.zfs.misc.arcstats.l2_abort_lowmem: 14
kstat.zfs.misc.arcstats.l2_cksum_bad: 0
kstat.zfs.misc.arcstats.l2_io_error: 0
kstat.zfs.misc.arcstats.l2_size: 0
kstat.zfs.misc.arcstats.l2_hdr_size: 0
kstat.zfs.misc.arcstats.memory_throttle_count: 8962



test #3 (6,553,600,000 bytes)
===============================
# dd if=/dev/zero of=/storage/test03 bs=64k count=100000
100000+0 records in
100000+0 records out
6553600000 bytes transferred in 75.465144 secs (86842741 bytes/sec)

test #3 (kstat.zfs.misc.arcstats)
===================================
kstat.zfs.misc.arcstats.hits: 102903298
kstat.zfs.misc.arcstats.misses: 1043991
kstat.zfs.misc.arcstats.demand_data_hits: 100511551
kstat.zfs.misc.arcstats.demand_data_misses: 1010720
kstat.zfs.misc.arcstats.demand_metadata_hits: 2391747
kstat.zfs.misc.arcstats.demand_metadata_misses: 33271
kstat.zfs.misc.arcstats.prefetch_data_hits: 0
kstat.zfs.misc.arcstats.prefetch_data_misses: 0
kstat.zfs.misc.arcstats.prefetch_metadata_hits: 0
kstat.zfs.misc.arcstats.prefetch_metadata_misses: 0
kstat.zfs.misc.arcstats.mru_hits: 4681172
kstat.zfs.misc.arcstats.mru_ghost_hits: 11655
kstat.zfs.misc.arcstats.mfu_hits: 98222126
kstat.zfs.misc.arcstats.mfu_ghost_hits: 15083
kstat.zfs.misc.arcstats.deleted: 2523071
kstat.zfs.misc.arcstats.recycle_miss: 6281
kstat.zfs.misc.arcstats.mutex_miss: 1238
kstat.zfs.misc.arcstats.evict_skip: 0
kstat.zfs.misc.arcstats.hash_elements: 16782
kstat.zfs.misc.arcstats.hash_elements_max: 23704
kstat.zfs.misc.arcstats.hash_collisions: 659104
kstat.zfs.misc.arcstats.hash_chains: 2014
kstat.zfs.misc.arcstats.hash_chain_max: 5
kstat.zfs.misc.arcstats.p: 832935741
kstat.zfs.misc.arcstats.c: 834601840
kstat.zfs.misc.arcstats.c_min: 107690560
kstat.zfs.misc.arcstats.c_max: 861524480
kstat.zfs.misc.arcstats.size: 834578624
kstat.zfs.misc.arcstats.hdr_size: 3490656
kstat.zfs.misc.arcstats.l2_hits: 258
kstat.zfs.misc.arcstats.l2_misses: 0
kstat.zfs.misc.arcstats.l2_feeds: 3337
kstat.zfs.misc.arcstats.l2_rw_clash: 0
kstat.zfs.misc.arcstats.l2_writes_sent: 576
kstat.zfs.misc.arcstats.l2_writes_done: 576
kstat.zfs.misc.arcstats.l2_writes_error: 0
kstat.zfs.misc.arcstats.l2_writes_hdr_miss: 6
kstat.zfs.misc.arcstats.l2_evict_lock_retry: 2
kstat.zfs.misc.arcstats.l2_evict_reading: 0
kstat.zfs.misc.arcstats.l2_free_on_write: 797
kstat.zfs.misc.arcstats.l2_abort_lowmem: 14
kstat.zfs.misc.arcstats.l2_cksum_bad: 0
kstat.zfs.misc.arcstats.l2_io_error: 0
kstat.zfs.misc.arcstats.l2_size: 0
kstat.zfs.misc.arcstats.l2_hdr_size: 0
kstat.zfs.misc.arcstats.memory_throttle_count: 9037



test #4 (9,830,400,000 bytes)
===============================
# dd if=/dev/zero of=/storage/test04 bs=64k count=150000
150000+0 records in
150000+0 records out
9830400000 bytes transferred in 117.682951 secs (83532915 bytes/sec)

test #4 (kstat.zfs.misc.arcstats)
===================================
kstat.zfs.misc.arcstats.hits: 102918486
kstat.zfs.misc.arcstats.misses: 1043999
kstat.zfs.misc.arcstats.demand_data_hits: 100522773
kstat.zfs.misc.arcstats.demand_data_misses: 1010728
kstat.zfs.misc.arcstats.demand_metadata_hits: 2395713
kstat.zfs.misc.arcstats.demand_metadata_misses: 33271
kstat.zfs.misc.arcstats.prefetch_data_hits: 0
kstat.zfs.misc.arcstats.prefetch_data_misses: 0
kstat.zfs.misc.arcstats.prefetch_metadata_hits: 0
kstat.zfs.misc.arcstats.prefetch_metadata_misses: 0
kstat.zfs.misc.arcstats.mru_hits: 4689852
kstat.zfs.misc.arcstats.mru_ghost_hits: 11655
kstat.zfs.misc.arcstats.mfu_hits: 98228634
kstat.zfs.misc.arcstats.mfu_ghost_hits: 15088
kstat.zfs.misc.arcstats.deleted: 2596202
kstat.zfs.misc.arcstats.recycle_miss: 6284
kstat.zfs.misc.arcstats.mutex_miss: 1251
kstat.zfs.misc.arcstats.evict_skip: 0
kstat.zfs.misc.arcstats.hash_elements: 16150
kstat.zfs.misc.arcstats.hash_elements_max: 23704
kstat.zfs.misc.arcstats.hash_collisions: 674642
kstat.zfs.misc.arcstats.hash_chains: 1482
kstat.zfs.misc.arcstats.hash_chain_max: 5
kstat.zfs.misc.arcstats.p: 832717343
kstat.zfs.misc.arcstats.c: 834765680
kstat.zfs.misc.arcstats.c_min: 107690560
kstat.zfs.misc.arcstats.c_max: 861524480
kstat.zfs.misc.arcstats.size: 46233760
kstat.zfs.misc.arcstats.hdr_size: 3360032
kstat.zfs.misc.arcstats.l2_hits: 258
kstat.zfs.misc.arcstats.l2_misses: 0
kstat.zfs.misc.arcstats.l2_feeds: 3337
kstat.zfs.misc.arcstats.l2_rw_clash: 0
kstat.zfs.misc.arcstats.l2_writes_sent: 576
kstat.zfs.misc.arcstats.l2_writes_done: 576
kstat.zfs.misc.arcstats.l2_writes_error: 0
kstat.zfs.misc.arcstats.l2_writes_hdr_miss: 6
kstat.zfs.misc.arcstats.l2_evict_lock_retry: 2
kstat.zfs.misc.arcstats.l2_evict_reading: 0
kstat.zfs.misc.arcstats.l2_free_on_write: 797
kstat.zfs.misc.arcstats.l2_abort_lowmem: 14
kstat.zfs.misc.arcstats.l2_cksum_bad: 0
kstat.zfs.misc.arcstats.l2_io_error: 0
kstat.zfs.misc.arcstats.l2_size: 0
kstat.zfs.misc.arcstats.l2_hdr_size: 0
kstat.zfs.misc.arcstats.memory_throttle_count: 9151




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