On Tue, 2001-12-04 at 11:31, Roy Sigurd Karlsbakk wrote:
> What's the main difference between a realtime partition and a data
> partiton? Can a datapartition (or non-realtime partition) be given an
> extsize= parameter? That's the one I REALLY need...
On Tue, 2001-12-04 at 12:04, D. Stimits wrote:
> Now I'm curious, what's the basic purpose and performance difference
> between a real-time filesystem and a "normal" filesystem? Is it some
> sort of caching behavior change more suitable for streaming media?
> Just curious.
> D. Stimits, stimits@xxxxxxxxxx
OK, here goes, XFS realtime 101
The XFS realtime subvolume is a separate dataspace in the filesystem, it
is only used for files marked as realtime after they are created. There
is nothing in the realtime subvolume except file data, where as in the
normal XFS data subvolume there is a mix of metadata and file data.
Space allocation in the realtime subvolume is managed by a different
allocator which gives out space in multiples of a pre-specified size,
the allocator uses a binary chop approach to space allocation which
is designed to avoid fragmentation at the expense of efficient use of
space - the allocator should also be faster.
The end result is that streaming I/O should behave better on realtime
files and on regular files.
On Irix the realtime subvolume is sometimes used in combination with
GRIO - which is a bandwidth guarantee subsystem, an application can
request X amount of bandwidth for Y amount of time, the system does its
best to schedule I/O to guarantee these requests are met.
There is no plan to offer GRIO on Linux at this time, and the features
of the realtime allocator are not available for regular files.
One feature which can be used on normal files which might help with
placement is preallocation of space. Take a look at the use of the
XFS_IOC_RESVSP64 ioctl in cmd/xfsprogs/mkfile/xfs_mkfile.c
Steve Lord voice: +1-651-683-3511
Principal Engineer, Filesystem Software email: lord@xxxxxxx