Re: XFS vs Elevators (was Re: [PATCH RFC] nilfs2: continuous snapshotting file system)

!MAILaRCHIVE_VOTE_RePLACE
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: <linux-xfs@...>
Cc: Szabolcs Szakacsits <szaka@...>, Andrew Morton <akpm@...>, <linux-fsdevel@...>, <linux-kernel@...>, <xfs@...>
Date: Thursday, August 21, 2008 - 11:00 am

Am Donnerstag 21 August 2008 schrieb Martin Steigerwald:
wrote:

Okay, some numbers attached:

- On XFS: Barrier versus Nobarrier makes quite a difference with 
compilebench. Also on rm -rf'ing the large directory tree it leaves 
behind. While I did not measure the first barrier related compilebench 
directory deletion I am pretty sure it took way longer. Also vmstat 
throughput it higher without nobarriers.
 
- On XFS: CFQ versus NOOP does not seem to make that much of a difference, 
at least not with barriers enabled (didn't test without). With NOOP 
responsiveness was even weaker than with CFQ. Opening a context menu on a 
webpage link displayed in Konqueror could take easily a minute or more. I 
think it shall never ever take that long for the OS to respond to user 
input.

- Ext3, NILFS, BTRFS with CFQ: Perform quite well. Especially btrfs. nilfs 
text isn't complete, cause likely due to checkpoints those 4G I dedicated 
to it were not enough for the compilebench test to complete.

So at least here performance degration with XFS seems more related to 
barriers than scheduler decision - least when it comes to the two choices 
CFQ and NOOP. But no, I won't switch barriers off permanently on my 
laptop. ;) Would be fine if performance impact of barriers could be 
reduced a bit tough.

At last I appear to see something different than the I/O scheduler issue 
discussed here.

Anyway subjectively I am quite happy with XFS performance nonetheless. But 
then since I can't switch from XFS to ext3 or btrfs in a second I can't 
really compare subjective impressions. Maybe desktop would respond faster 
with ext3 or btrfs? Who knows?

I think a script which does extensive automated testing would be fine:

- have some basic settings like

SCRATCH_DEV=/dev/sda8 (this should be a real partition in order to be able 
to test barriers which do not work over LVM / device mapper)

SCRATCH_MNT=/mnt/test

- have an array of pre-pre-test setups like

[ echo "cfq" >/sys/block/sda/queue/scheduler ]
[ echo "deadline" >/sys/block/sda/queue/scheduler ]
[ echo "anticipatory" >/sys/block/sda/queue/scheduler ]
[ echo "noop" >/sys/block/sda/queue/scheduler ]

- have an array of pre-test setups like

[ mkfs.xfs -f $SCRATCH_DEV
mount $SCRATCH_DEV $SCRATCH_MNT ]
[ mkfs.xfs -f $SCRATCH_DEV
mount -o nobarrier $SCRATCH_DEV $SCRATCH_MNT ]
[ mkfs.xfs -f $SCRATCH_DEV
mount -o logbsize=256k $SCRATCH_DEV $SCRATCH_MNT ]
[ mkfs.btrfs $SCRATCH_DEV
mount $SCRATCH_DEV $SCRATCH_MNT ]

- have an array of tests like

[ ./compilebench -D /mnt/zeit-btrfs -i 5 -r 10 ]
[ postmark whatever ]
[ iozone whatever ]

- and let it run every combination of those array elements unattended 
(over night;-)

- have any results collected with settings for each patch and basic 
machine info in one easy to share text file

- then as additional feature let it test responsiveness during each 
running test. Let it makes sure there are some files that are not in the 
cache and let it access one of those files once in a while and measure 
how long it takes the filesystem to respond

Ciao,
-- 
Martin 'Helios' Steigerwald - http://www.Lichtvoll.de
GPG: 03B0 0D6C 0040 0710 4AFA  B82F 991B EAAC A599 84C7
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[PATCH RFC] nilfs2: continuous snapshotting file system, Ryusuke Konishi, (Tue Aug 19, 10:45 pm)
Re: [PATCH RFC] nilfs2: continuous snapshotting file system, Ryusuke Konishi, (Thu Aug 21, 12:57 am)
Re: [PATCH RFC] nilfs2: continuous snapshotting file system, Ryusuke Konishi, (Wed Aug 20, 12:13 pm)
Re: [PATCH RFC] nilfs2: continuous snapshotting file system, Ryusuke Konishi, (Tue Aug 26, 12:54 pm)
Re: [PATCH RFC] nilfs2: continuous snapshotting file system, Ryusuke Konishi, (Fri Aug 29, 2:29 am)
Re: [PATCH RFC] nilfs2: continuous snapshotting file system, Ryusuke Konishi, (Fri Aug 29, 12:37 pm)
Re: [PATCH RFC] nilfs2: continuous snapshotting file system, Szabolcs Szakacsits, (Wed Aug 20, 5:25 pm)
Re: [PATCH RFC] nilfs2: continuous snapshotting file system, Szabolcs Szakacsits, (Wed Aug 20, 10:46 pm)
Re: XFS vs Elevators (was Re: [PATCH RFC] nilfs2: continuous..., Szabolcs Szakacsits, (Thu Aug 21, 1:10 pm)
Re: XFS vs Elevators (was Re: [PATCH RFC] nilfs2: continuous..., Szabolcs Szakacsits, (Thu Aug 21, 1:33 pm)
Re: XFS vs Elevators (was Re: [PATCH RFC] nilfs2: continuous..., Szabolcs Szakacsits, (Fri Aug 22, 8:44 am)
Re: XFS vs Elevators (was Re: [PATCH RFC] nilfs2: continuous..., Szabolcs Szakacsits, (Sat Aug 23, 8:52 am)
Re: XFS vs Elevators (was Re: [PATCH RFC] nilfs2: continuous..., Martin Steigerwald, (Fri Aug 22, 2:49 am)
Re: XFS vs Elevators (was Re: [PATCH RFC] nilfs2: continuous..., Martin Steigerwald, (Thu Aug 21, 7:02 am)
Re: XFS vs Elevators (was Re: [PATCH RFC] nilfs2: continuous..., Martin Steigerwald, (Thu Aug 21, 11:00 am)
Re: [PATCH RFC] nilfs2: continuous snapshotting file system, Szabolcs Szakacsits, (Wed Aug 20, 5:48 pm)
Re: [PATCH RFC] nilfs2: continuous snapshotting file system, Ryusuke Konishi, (Wed Aug 20, 2:47 pm)