Hi!
(I am not on this list)
As one of the advertised features of XFS is reducing (external) fragmentation
in multple-writer cases, I thought I'd give it a try on my Personal Video
Recorder.
The typical workload of my PVR includes writing files of a few gigabytes
in size over the duration of a few hours (roughly 1-2mb/s video
recording), plus transcoding processes that read previously recorded shows
and re-encode them to mpeg4, which is a slow (non-realtime) process and
usually involves writing around 200-300kb/s.
At any one point in time, I have a maximum of two video recording streams
and two transcoding processes (plus up to 5 readers).
When I run xfs_fsr, I get very high extent counts:
extents before:1903 after:1 DONE ino=537176316
(this was a one-hour show, longer shows easily reach 3000-5000 extents).
This looks very high, compared to ext3 which I previously used (I used a
simple tool that analyzed the block numbers returned by the fibmap ioctl),
where I usually had less than 200 "holes" per gigabyte, many of which were
caused by ext2's layout itself).
I/O speed also seems to be affected: while I can read&write defragmented
files with near disk speed (~30MB/s), I am unable to read newly recorded
or transcoded streams with more than about 8mb/s (However, this was on a
live system, so it's hard to measure actual throughput).
I am using the XFS that came with the (unpatched) 2.6.11 kernel; the disk
is a 160GB disk that is _only_ being used for these recordings, which are
all stored in the same directory. The disk had always 50GB or more of free
space, and the initial contents were simply untar'ed, so there shouldn't
be much fragmentation onm the actual disk.
Is this behaviour to be expected (and my usage pattern is simply bad for
XFS), or can this behaviour somehow be tuned, or am I doing sth. wrong?
Running xfs_fsr is possible in my setup (there is usually a time where no
recordings take place, although this is not deterministic, and running
xfs_fsr during recordings might introduce a too-high load), but most of
the files get created/deleted in less than 24 hours, so when xfs_fsr runs
it's already a bit late.
Thanks a lot for any insights, and thanks a lot for bringing XFS to linux!
--
The choice of a
-----==- _GNU_
----==-- _ generation Marc Lehmann
---==---(_)__ __ ____ __ pcg@xxxxxxxx
--==---/ / _ \/ // /\ \/ / http://schmorp.de/
-=====/_/_//_/\_,_/ /_/\_\ XX11-RIPE
|