xfs
[Top] [All Lists]

Re: benchmark: write barrier/write cache on XFS

To: xfs@xxxxxxxxxxx
Subject: Re: benchmark: write barrier/write cache on XFS
From: Martin Steigerwald <Martin@xxxxxxxxxxxx>
Date: Mon, 8 Dec 2008 22:43:14 +0100
Cc: linux-fsdevel@xxxxxxxxxxxxxxx, linux-kernel@xxxxxxxxxxxxxxx
In-reply-to: <200812082139.58328.Martin@xxxxxxxxxxxx>
References: <200812082139.58328.Martin@xxxxxxxxxxxx> (sfid-20081208_214015_115571_1580D367)
User-agent: KMail/1.9.9
Am Montag 08 Dezember 2008 schrieb Martin Steigerwald:
> Hi!
>
> I got curious about the recent discussions about the write barrier
> feature[1][2].
>
> Thus I did my own benchmark this evening. Since I use XFS and tested
> with XFS for now only. Write barrier + write cache, no barrier + write
> cache, no write barrier + no write cache. I just did tar -xf
> linux-2.6.27.tar.bz2 and rm -rf linux-2.6.27.

I disabled write cache and barriers for my XFS filesystems on my TP 42 
shambhala. During that I did further tests. This time I also include IO 
scheduler settings. They are default and have been the same during my 
previous tests.

Write cache has about 13 seconds benefit on the barrier enabled XFS for 
the tar -xf linux-2.6.27.tar.bz2 workload but no benefit at all for the 
rm -rf linux-2.6.27 workload!

And again nobarrier and no cache wins.


On a heavily used /home-XFS - I know it should have more free space:

martin@shambhala:~ -> LANG=C df -hT /home/
Filesystem    Type    Size  Used Avail Use% Mounted on
/dev/sda5      xfs    112G  107G  5.1G  96% /home



It has been grown two times - since 6 AGs instead of the default of 4:

shambhala:~> xfs_info /home
meta-data=/dev/sda5              isize=256    agcount=6, agsize=4883256 
blks
         =                       sectsz=512   attr=2
data     =                       bsize=4096   blocks=29299536, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096
log      =internal               bsize=4096   blocks=32768, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0



IO scheduler settings:

martin@shambhala:~> cat /sys/block/sda/queue/scheduler
noop anticipatory deadline [cfq]
martin@shambhala:~> grep "" /sys/block/sda/queue/iosched/*
/sys/block/sda/queue/iosched/back_seek_max:16384
/sys/block/sda/queue/iosched/back_seek_penalty:2
/sys/block/sda/queue/iosched/fifo_expire_async:250
/sys/block/sda/queue/iosched/fifo_expire_sync:123
/sys/block/sda/queue/iosched/quantum:4
/sys/block/sda/queue/iosched/slice_async:40
/sys/block/sda/queue/iosched/slice_async_rq:2
/sys/block/sda/queue/iosched/slice_idle:6
/sys/block/sda/queue/iosched/slice_sync:100



Write barriers and no write cache:

shambhala:~> hdparm -W /dev/sda

/dev/sda:
 write-caching =  0 (off)

shambhala:> cat /proc/mounts | egrep "(/ |home)"
rootfs / rootfs rw 0 0
/dev/disk/by-uuid/7fcd9766-bf1a-426a-8a07-2c3e0c510898 / xfs 
rw,relatime,attr2,noquota 0 0
/dev/sda5 /home xfs rw,relatime,attr2,logbufs=8,logbsize=256k,noquota 0 0
martin@shambhala:~/Zeit> sync; time tar -xf 
~/Linux/Kernel/Mainline/linux-2.6.27.tar.bz2 ; time sync
tar -xf ~/Linux/Kernel/Mainline/linux-2.6.27.tar.bz2  36,71s user 4,22s 
system 36% cpu 1:51,58 total
sync  0,00s user 0,05s system 0% cpu 12,689 total
martin@shambhala:~/Zeit> sync; time rm -rf linux-2.6.27 ; time sync
rm -rf linux-2.6.27  0,06s user 3,90s system 17% cpu 22,906 total
sync  0,00s user 0,01s system 6% cpu 0,103 total



Write barriers and write cache:

shambhala:~> hdparm -W1 /dev/sda

/dev/sda:
 setting drive write-caching to 1 (on)
 write-caching =  1 (on)

martin@shambhala:~/Zeit> sync; time tar -xf 
~/Linux/Kernel/Mainline/linux-2.6.27.tar.bz2 ; time sync
tar -xf ~/Linux/Kernel/Mainline/linux-2.6.27.tar.bz2  34,38s user 3,91s 
system 38% cpu 1:38,84 total
sync  0,00s user 0,04s system 0% cpu 10,493 total
martin@shambhala:~/Zeit> sync; time rm -rf linux-2.6.27 ; time sync
rm -rf linux-2.6.27  0,07s user 3,98s system 17% cpu 23,511 total
sync  0,00s user 0,01s system 5% cpu 0,126 total



No write barriers and no write cache:

shambhala:> vim fstab
shambhala:> mount -o remount /
shambhala:> mount -o remount /home
shambhala:> cat /proc/mounts | egrep "(/ |home)"
rootfs / rootfs rw 0 0
/dev/disk/by-uuid/7fcd9766-bf1a-426a-8a07-2c3e0c510898 / xfs 
rw,relatime,attr2,nobarrier,noquota 0 0
/dev/sda5 /home xfs 
rw,relatime,attr2,nobarrier,logbufs=8,logbsize=256k,noquota 0 0

martin@shambhala:~/Zeit> sync; time tar -xf 
~/Linux/Kernel/Mainline/linux-2.6.27.tar.bz2 ; time sync
tar -xf ~/Linux/Kernel/Mainline/linux-2.6.27.tar.bz2  30,36s user 3,31s 
system 48% cpu 1:08,94 total
sync  0,00s user 0,08s system 0% cpu 17,462 total
martin@shambhala:~/Zeit> sync; time rm -rf linux-2.6.27 ; time sync
rm -rf linux-2.6.27  0,07s user 3,87s system 20% cpu 19,172 total
sync  0,00s user 0,01s system 4% cpu 0,142 total



martin@shambhala:~> date
Mo 8. Dez 22:38:06 CET 2008

Ciao,
-- 
Martin 'Helios' Steigerwald - http://www.Lichtvoll.de
GPG: 03B0 0D6C 0040 0710 4AFA  B82F 991B EAAC A599 84C7

Attachment: signature.asc
Description: This is a digitally signed message part.

<Prev in Thread] Current Thread [Next in Thread>