xfs
[Top] [All Lists]

Re: XFS options for writing streaming data (contiguous data)

To: "Brandon, Nicholas" <nicholas.brandon@xxxxxxxxxxxxxx>
Subject: Re: XFS options for writing streaming data (contiguous data)
From: Chris Wedgwood <cw@xxxxxxxx>
Date: Tue, 10 May 2005 10:11:47 -0700
Cc: "'linux-xfs@xxxxxxxxxxx'" <linux-xfs@xxxxxxxxxxx>
In-reply-to: <8393EBB4684F9A4F8A6049813438456A05F23F9C@amsms01002.jupiterlnk.net>
References: <8393EBB4684F9A4F8A6049813438456A05F23F9C@amsms01002.jupiterlnk.net>
Sender: linux-xfs-bounce@xxxxxxxxxxx
On Tue, May 10, 2005 at 11:26:36AM +0100, Brandon, Nicholas wrote:

> I'm new to XFS and researching the use of XFS as the filesystem for
> an application that writes sequential data streamed from gigabit
> Ethernet. This data is then read at the fastest possible throughput
> for further processing.

How much data are we talking about and how long before it's read?
(ie. can this fit in memory).

> After reviewing the mailing list archive, I am unsure of what
> options (both in the app and at filesystem creation) should be used
> to ensure the greatest throughput (currently estimated at 40MB/s+).

40MB/s is pretty low.  I don't think you'll need to do anything overly
clever.

> Is there a way to increased the buffered i/o for a file to be larger
> than 64K (XFS_IOC_SETBIOSIZE in man xfs(5)) or would this have
> minimal effect on read/write performance?

Check the mount option "biosize".

> Is buffered i/o part of the delayed allocation that I have read from
> other sources?

No.

> (http://www-106.ibm.com/developerworks/linux/library/l-fs9.html)

That article wasn't overly useful when it was written let alone now.

> If I know the size of the data before receiving it, should I use the
> XFS_IOC_RESVSP64 (man xfs(5)) in the application with unwritten=0
> option set for the filesystem?

XFS_IOC_RESVSP64 probably won't hurt (sometimes it's *really* handy
but it depends).  unwritten=0 for the fs I doubt will make much
difference (not to mention the fact it probably doesn't do what you
think it does).

> Using this technique, would it be reasonable to assume the XFS
> overhead is low enough for the throughput to be near the hardware
> benchmarks (sustained read/write)?

40MB/s?  Easily I should think.

For streaming data it's more of an issue of having some idea of your
access patterns and having some control over how memory is used
(ie. often it makes sense to use dio and control the buffering
yourself).


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