DaemonForums  

Go Back   DaemonForums > FreeBSD > FreeBSD General

FreeBSD General Other questions regarding FreeBSD which do not fit in any of the categories below.

Reply
 
Thread Tools Display Modes
  #1   (View Single Post)  
Old 25th January 2010
vermaden's Avatar
vermaden vermaden is offline
Administrator
 
Join Date: Apr 2008
Location: pl_PL.lodz
Posts: 1,052
Thanked 118 Times in 93 Posts
Default ZFS / UFS / Soft Updates / GJurnal / Bonnie Performance

I have done some tests with UFS/ZFS under bonnie benchmark.

here are the results if you are interested.

software:
OS: FreeBSD 7-CURRENT 200708 snapshot
benchmark: bonnie -s 2048
CFLAGS: -O2 -fno-strict-aliasing -pipe -s
CPUTYPE: athlon-mp
scheduler: ULE
hardware:
CPU: (single) Athlon XP 2000+ [ 12.5 x 1333MHz ]
MEM: 1 GB DDR 266MHz CL2
FSB Ratio: 1:1
MOTHERBOARD: AMD 760 MPX
HDD: (single) Maxtor 6L160P0 ATA/133
legend:
Code:
    GJ - GJournal
    SU - Soft Updates
  lzjb - zfs set compression=lzjb ${POOL}
gzip-* - zfs set compression=gzip-* ${POOL}
colors:
Code:
 GREEN - first
ORANGE - second
   RED - third
Code:
                     ---------Sequential Output----------   -----Sequential Input---   --Random--
                     -Per Char-   --Block---   -Rewrite--   -Per Char-    ---Block---  --Seeks---
                     K/sec %CPU   K/sec %CPU   K/sec %CPU   K/sec %CPU    K/sec %CPU   /sec  %CPU
UFS                  44735 64.9   46970 18.0   15565  7.0   41166 54.9    47447 12.9   173.9  1.1
UFS.noatime          45524 66.0   47032 18.1   15397  7.0   40431 54.3    46874 12.8   177.8  1.1
UFS.noatime.async    45621 66.4   46510 17.8   15432  7.0   41227 55.4    47501 12.9   174.0  1.1
UFS_SU               45294 66.5   42729 17.5   15563  7.1   39849 53.4    43410 11.9   167.4  1.0
UFS_SU.noatime       45998 67.6   42278 17.3   15378  6.9   39169 51.7    44086 12.0   166.6  1.0
UFS_SU.noatime.async 46125 67.7   43361 17.7   15520  7.0   39132 52.4    43598 11.9   169.0  1.0
UFS_GJ               18357 27.5   18079  7.5   10931  4.7   40076 52.9    46950 13.3   181.1  1.2
UFS_GJ.noatime       18140 27.1   16990  7.1   10973  4.7   39837 53.4    47476 13.4   169.4  1.1
UFS_GJ.noatime.async 17942 26.9   17586  7.3   11107  4.8   38021 51.1    47414 13.2   171.4  1.1
ZFS                  32858 64.1   30611 20.4   15401 10.0   39544 60.3    47483 11.0    65.5  0.8
ZFS.noatime          32463 64.5   29860 20.8   14992  9.8   40286 62.0    47717 12.9    65.3  0.7
ZFS.comp=lzjb        40061 78.8   86064 61.5   55270 42.2   51819 79.8   132028 50.1   138.0  3.2
ZFS.comp=gzip-1      25843 49.2   38214 26.8   25772 30.7   45479 77.2   102446 54.4   354.7 21.0
ZFS.comp=gzip-9      19968 38.2   22995 16.3   19615 25.2   46752 84.6   102759 63.0   740.6 62.6
ZFS_DEF: default ZFS/FreeBSD settings for 1GB/i386 system

Code:
kern.maxvnodes:           70235
vfs.zfs.prefetch_disable: 0
vfs.zfs.arc_max:          167772160
vm.kmem_size_max:         335544320
vfs.zfs.zil_disable:      0
ZFS_TUNE: tuned settings reccomneded here: http://wiki.freebsd.org/ZFSTuningGuide

Code:
kern.maxvnodes:           50000
vfs.zfs.prefetch_disable: 1
vfs.zfs.arc_max:          104857600
vm.kmem_size_max:         402653184
vfs.zfs.zil_disable:      0 / 1
ZFS results:

Code:
                                ---------Sequential Output----------   -----Sequential Input---   --Random--
                                -Per Char-   --Block---   -Rewrite--   -Per Char-    ---Block---  --Seeks---
                                K/sec %CPU   K/sec %CPU   K/sec %CPU   K/sec %CPU    K/sec %CPU   /sec  %CPU
ZFS_DEF                         32858 64.1   30611 20.4   15401 10.0   39544 60.3    47483 11.0    65.5  0.8
ZFS_TUNE                        35637 68.1   30117 20.2   18787  9.9   35982 47.9    48953  9.3    66.3  0.7
ZFS_TUNE.zil=disabled           38353 74.9   31409 21.1   20198 10.6   35449 48.6    48207  9.6    65.6  0.7

ZFS_DEF.comp=lzjb               40061 78.8   86064 61.5   55270 42.2   51819 79.8   132028 50.1   138.0  3.2
ZFS_TUNE.comp=lzjb              40228 75.6   89397 59.1   50634 40.1   54886 91.4   156476 80.1   127.6  2.9
ZFS_TUNE.comp=lzjb.zil=disabled 40536 76.4   83370 57.4   52601 41.8   54335 92.1   151080 80.2   133.3  2.9

kernel config:

Code:
cpu		I686_CPU
ident		VERMADEN

options	SCHED_ULE		# ULE scheduler
options 	PREEMPTION		# Enable kernel thread preemption
options 	INET			# InterNETworking
options 	FFS			# Berkeley Fast Filesystem
options 	SOFTUPDATES		# Enable FFS soft updates support
options 	UFS_ACL		# Support for access control lists
options 	UFS_DIRHASH		# Improve performance on big directories
options 	UFS_GJOURNAL		# Enable gjournal-based UFS journaling
options 	GEOM_PART_GPT		# GUID Partition Tables.
options 	GEOM_LABEL		# Provides labelization
options 	COMPAT_43TTY		# BSD 4.3 TTY compat [KEEP THIS!]
options 	SCSI_DELAY=5000	# Delay (in ms) before probing SCSI
options 	SYSVSHM		# SYSV-style shared memory
options 	SYSVMSG		# SYSV-style message queues
options 	SYSVSEM		# SYSV-style semaphores
options 	_KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions
options 	KBD_INSTALL_CDEV	# install a CDEV entry in /dev
options 	ADAPTIVE_GIANT	# Giant mutex is adaptive.
options 	STOP_NMI		# Stop CPUS using NMI instead of IPI

# SMP kernel
options 	SMP			# Symmetric MultiProcessor Kernel
device		apic			# I/O APIC

# Bus support
device		eisa
device		pci

# Floppy drives
device		fdc

# ATA and ATAPI devices
device		ata
device		atadisk		# ATA disk drives
device		atapicd		# ATAPI CDROM drives
device		atapifd		# ATAPI floppy drives
options 	ATA_STATIC_ID	# Static device numbering

# SCSI peripherals
device		scbus		# SCSI bus (required for SCSI)
device		da		# Direct Access (disks)
device		cd		# CD
device		pass		# Passthrough device (direct SCSI access)

# Keyboard and the PS/2 mouse
device		atkbdc		# AT keyboard controller
device		atkbd		# AT keyboard
device		psm		# PS/2 mouse
device		kbdmux		# keyboard multiplexer

# Syscons console driver
device		sc
device		vga		# VGA video card driver
device		splash		# Splash screen and screen saver support

# Add suspend/resume support for the i8254.
device		pmtimer

# NIC
device		miibus		# MII bus support
device		fxp		# Intel EtherExpress PRO/100B (82557, 82558)

# Pseudo devices
device		loop		# Network loopback
device		random		# Entropy device
device		ether		# Ethernet support
device		pty		# Pseudo-ttys (telnet etc)
device		md		# Memory "disks"

# Berkeley Packet Filter
device		bpf		# Berkeley packet filter
I added this old thread here, since it was present on bsdformus.org [RIP] and is still present on other UNIX sites/forums but not here.
__________________
religions, worst damnation of mankind
"If 386BSD had been available when I started on Linux, Linux would probably never had happened." Linus Torvalds

Linux is not UNIX! Face it! It is not an insult. It is fact: GNU is a recursive acronym for “GNU's Not UNIX”.
vermaden's: links resources deviantart spreadbsd
Reply With Quote
  #2   (View Single Post)  
Old 25th January 2010
vermaden's Avatar
vermaden vermaden is offline
Administrator
 
Join Date: Apr 2008
Location: pl_PL.lodz
Posts: 1,052
Thanked 118 Times in 93 Posts
Default

Here are my current results on new box:

Create:
# zfs create basefs/test
# zfs set mountpoint=/test basefs/test


Options:
# zfs set compression=[on|off] basefs/test
# zfs set checksum=[on|off] basefs/test


Code:
# cd /test && bonnie -s 8192 (this machine has 3GB RAM)
              -------Sequential Output-------- ---Sequential Input-- --Random--
              -Per Char- --Block--- -Rewrite-- -Per Char- --Block--- --Seeks---
Machine    MB K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU  /sec %CPU 
         8192 36165 36.9 46683 16.4 20419  9.7 74582 78.0 94540 13.8  75.1  1.8 ZFS (default)
         8192 36325 37.1 43597 15.6 19792  9.5 72155 75.4 83432 12.8  58.6  1.6 ZFS checksum=off
         8192 36345 37.0 45016 16.5 23312 10.5 69788 72.5 84694 12.8  67.9  1.2 ZFS checksum=off compression=on
/boot/loader.conf
Code:
# modules
zfs_load="YES"
ahci_load="YES"

# zfs tuning
vm.kmem_size=536870912          # 512 MB
vm.kmem_size_max=536870912      # 512 MB
vfs.zfs.vdev.cache.size=8388608 #   8 MB
vfs.zfs.arc_max=67108864        #  64 MB
vfs.zfs.prefetch_disable=0      # enable prefetch

# page share factor per proc
vm.pmap.shpgperproc=512

# default 1000
kern.hz=100

# avoid additional 128 interrupts per second per core
hint.atrtc.0.clock=0

# do not power devices without driver
hw.pci.do_power_nodriver=3

# ahci power management
hint.ahcich.0.pm_level=5
hint.ahcich.1.pm_level=5
hint.ahcich.2.pm_level=5
hint.ahcich.3.pm_level=5
hint.ahcich.4.pm_level=5
hint.ahcich.5.pm_level=5
/etc/sysctl.conf
Code:
# fs
vfs.read_max=32
__________________
religions, worst damnation of mankind
"If 386BSD had been available when I started on Linux, Linux would probably never had happened." Linus Torvalds

Linux is not UNIX! Face it! It is not an insult. It is fact: GNU is a recursive acronym for “GNU's Not UNIX”.
vermaden's: links resources deviantart spreadbsd
Reply With Quote
  #3   (View Single Post)  
Old 4th February 2010
vermaden's Avatar
vermaden vermaden is offline
Administrator
 
Join Date: Apr 2008
Location: pl_PL.lodz
Posts: 1,052
Thanked 118 Times in 93 Posts
Default

I will add some new tests results with 3 x of that one:
http://daemonforums.org/showpost.php...6&postcount=45
__________________
religions, worst damnation of mankind
"If 386BSD had been available when I started on Linux, Linux would probably never had happened." Linus Torvalds

Linux is not UNIX! Face it! It is not an insult. It is fact: GNU is a recursive acronym for “GNU's Not UNIX”.
vermaden's: links resources deviantart spreadbsd
Reply With Quote
  #4   (View Single Post)  
Old 5th February 2010
vermaden's Avatar
vermaden vermaden is offline
Administrator
 
Join Date: Apr 2008
Location: pl_PL.lodz
Posts: 1,052
Thanked 118 Times in 93 Posts
Smile

RAID0 on 3 x Samsung F3 1TB (HD103SJ)

Simple bonnie benchmark performance:
Code:
raw# gstripe status
       Name  Status  Components
stripe/raw       UP  ada0s2
                     ada1s2
                     ada2s2

bonnie# bonnie -s 2560m
              -------Sequential Output-------- ---Sequential Input-- --Random--
              -Per Char- --Block--- -Rewrite-- -Per Char- --Block--- --Seeks---
Machine    MB  K/sec %CPU  K/sec %CPU  K/sec %CPU  K/sec %CPU   K/sec %CPU    /sec  %CPU
         2560 105848 77.5 255758 46.2  53981 11.5  87115 82.3  214039 26.5  8254.0  16.3 UFS
         2560 110135 78.7 255036 46.6  52714 11.3  86784 82.0  215048 27.2 10383.1  20.4 UFS (SoftUpdates)
         2560  77014 60.5 114061 24.4 110470 27.5 110183 98.0 1286423 99.7 49717.9 180.7 UFS (GJournal/async)
Simple raw device performance:
Code:
write# dd < /dev/zero > /dev/stripe/raw bs=4M count=256
256+0 records in
256+0 records out
1073741824 bytes transferred in 4.187841 secs (256395083 bytes/sec) [250MB/s]

read# dd > /dev/null < /dev/stripe/raw bs=4M count=256
256+0 records in
256+0 records out
1073741824 bytes transferred in 3.785693 secs (283631498 bytes/sec) [280MB/s]

RAID5 (zfs raidz) on 3 x Samsung F3 1TB (HD103SJ)

Simple bonnie benchmark performance:
Code:
zfs# zpool create basefs raidz ada0s3 ada1s3 ada2s3
zfs# zpool status
  pool: basefs
 state: ONLINE
 scrub: none requested
config:

        NAME        STATE     READ WRITE CKSUM
        basefs      ONLINE       0     0     0
          raidz1    ONLINE       0     0     0
            ada0s3  ONLINE       0     0     0
            ada1s3  ONLINE       0     0     0
            ada2s3  ONLINE       0     0     0

errors: No known data errors

zfs# zpool list
NAME     SIZE   USED  AVAIL    CAP  HEALTH  ALTROOT
basefs  2.72T  3.00G  2.72T     0%  ONLINE  -

zfs# zfs list
NAME        USED  AVAIL  REFER  MOUNTPOINT
basefs     2.00G  1.78T  2.00G  /basefs

zfs# df -h /basefs
Filesystem    Size    Used   Avail Capacity  Mounted on
basefs        1.8T    2.0G    1.8T     0%    /basefs

zfs# cd /basefs && bonnie -s 8192m
              -------Sequential Output-------- ---Sequential Input-- --Random--
              -Per Char- --Block--- -Rewrite-- -Per Char- --Block--- --Seeks---
Machine    MB K/sec %CPU K/sec  %CPU K/sec %CPU K/sec %CPU K/sec  %CPU   /sec %CPU
	 8192 46592 49.4  70095 21.9 44199 19.9 73329 77.9 151731 24.8   97.8  1.5 checksum=on  compression=off
	 8192 50684 51.1  76920 24.0 47233 19.7 85592 92.9 153819 24.3  115.0  1.2 checksum=off compression=off
	 8192 59356 59.3 103940 32.5 84086 34.0 83807 89.0 348380 55.3  157.1  1.9 checksum=on  compression=on (lzjb)
	 8192 58047 58.3 102645 32.1 83974 34.0 84356 89.6 353521 56.8  159.5  1.9 checksum=off compression=on (lzjb)
	 8192 43438 43.6  66016 20.6 49970 19.8 78088 81.5 256126 40.0  247.0  2.6 checksum=on  compression=gzip-1
	 8192 42704 43.1  65948 20.6 50832 20.1 77435 81.9 256208 40.0  255.0  2.5 checksum=off compression=gzip-1
	 8192 36383 36.7  45631 15.6 41276 17.1 76290 82.0 250496 42.0 1353.5  8.1 checksum=on  compression=gzip-9
	 8192 36896 37.1  46299 14.4 41364 17.0 77537 81.7 259652 40.6 1236.4  7.4 checksum=off compression=gzip-9
Simple raw device performance:
Code:
write# dd < /dev/zero > /basefs/FILE bs=4M count=512
512+0 records in
512+0 records out
2147483648 bytes transferred in 23.038062 secs (93214596 bytes/sec) [90MB/s]

read# dd > /dev/null < /basefs/FILE bs=4M count=512
512+0 records in
512+0 records out
2147483648 bytes transferred in 13.027241 secs (164845622 bytes/sec) [160MB/s]
__________________
religions, worst damnation of mankind
"If 386BSD had been available when I started on Linux, Linux would probably never had happened." Linus Torvalds

Linux is not UNIX! Face it! It is not an insult. It is fact: GNU is a recursive acronym for “GNU's Not UNIX”.
vermaden's: links resources deviantart spreadbsd
Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
OpenBSD OpenBSD ports tree soft lock J65nko News 0 14th January 2010 01:06 AM
Package Updates for OpenBSD 4.2 and 4.3 shep OpenBSD Packages and Ports 15 17th October 2009 02:39 PM
openbsd stables updates milo974 OpenBSD General 5 12th October 2008 06:46 PM
updates from openbsd errata milo974 OpenBSD General 10 24th September 2008 12:41 PM


All times are GMT. The time now is 10:45 AM.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content copyright © 2007-2010, the authors
Daemon image copyright ©1988, Marshall Kirk McKusick