From owner-freebsd-stable@FreeBSD.ORG Mon Feb 15 17:01:59 2010 Return-Path: Delivered-To: freebsd-stable@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 645AC10656CD for ; Mon, 15 Feb 2010 17:01:59 +0000 (UTC) (envelope-from jdc@koitsu.dyndns.org) Received: from qmta07.emeryville.ca.mail.comcast.net (qmta07.emeryville.ca.mail.comcast.net [76.96.30.64]) by mx1.freebsd.org (Postfix) with ESMTP id 4C2AC8FC26 for ; Mon, 15 Feb 2010 17:01:57 +0000 (UTC) Received: from omta08.emeryville.ca.mail.comcast.net ([76.96.30.12]) by qmta07.emeryville.ca.mail.comcast.net with comcast id iEG81d0090FhH24A7H1yoL; Mon, 15 Feb 2010 17:01:58 +0000 Received: from koitsu.dyndns.org ([98.248.46.159]) by omta08.emeryville.ca.mail.comcast.net with comcast id iH1x1d00J3S48mS8UH1x65; Mon, 15 Feb 2010 17:01:58 +0000 Received: by icarus.home.lan (Postfix, from userid 1000) id 8D2641E301A; Mon, 15 Feb 2010 09:01:56 -0800 (PST) Date: Mon, 15 Feb 2010 09:01:56 -0800 From: Jeremy Chadwick To: freebsd-stable@freebsd.org Message-ID: <20100215170156.GA64731@icarus.home.lan> References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.20 (2009-06-14) Subject: Re: More zfs benchmarks X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Feb 2010 17:01:59 -0000 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: 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: on atapci0 ata3: on atapci0 ata4: on atapci0 ata5: on atapci0 ata5: [ITHREAD] ata6: on atapci0 ata7: on atapci0 ata7: [ITHREAD] ad10: 953869MB at ata5-master UDMA100 SATA 3Gb/s ad14: 953869MB 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