From: Asdo <asdo@shiftmail.org>
Cc: linux-raid <linux-raid@vger.kernel.org>,
"Kristleifur Daðason" <kristleifur@gmail.com>,
"Eric Sandeen" <sandeen@sandeen.net>,
"Gabor Gombas" <gombasg@sztaki.hu>,
xfs@oss.sgi.com
Subject: Re: Disappointing performance of copy (MD raid + XFS)
Date: Fri, 11 Dec 2009 02:41:32 +0100 [thread overview]
Message-ID: <4B21A34C.9090100@shiftmail.org> (raw)
In-Reply-To: <4B207620.3060605@sandeen.net>
Eric Sandeen wrote:
Gabor Gombas wrote:
Kristleifur Daðason wrote:
[CUT]
Thank you guys for your help
I have done further investigation.
I still have not checked how performances are with very small files and
multiple simultaneous rsyncs.
I have checked the other problem I had which I was mentioning, that I
couldn't go more than 150MB/sec even with large files and multiple
simultaneous transfers.
I confirm this one and I have narrowed the problem: two XFS defaults
(optimizations) actually damage the performances.
The first and most important is the aligned writes: cat /proc/mounts
lists this (autodetected) stripe size: "sunit=2048,swidth=28672" . My
chunks are is 1MB and I have 16 disks in raid-6 so 14 data disks. Do you
think it's correct? xfs_info lists blocks as 4k and sunit and swidth are
in 4k blocks and have a very different value. Please do not use the same
name "sunit"/"swidth" to mean 2 different things in 2 different places,
it can confuse the user (me!)
Anyway that's not the problem: I have tried to specify other values in
my mount (in particular I tried the values sunit and swidth should have
had if blocks were 4k), but ANY xfs aligned mount kills the performances
for me. I have to specify "noalign" in my mount to go fast. (Also note
this option cannot be changed on mount -o remount. I have to unmount.)
The other default feature that kills performances for me is the
rotorstep. I have to max it out at 255 in order to have good
performances. Actually it is reasonable that a higher rotorstep should
be faster... why is 1 the default? Why it even exists? With low values
the await (iostat -x 1) increases, I guess because of the seeks, and
stripe_cache_active stays higher, because there are less filled stripes.
If I use noalign and rotorstep at 255 I am able to go at 325 MB/sec on
average (16 parallel transfers of 7MB files) while with defaults I go at
about 90 MB/sec.
Also with noalign and rotorstep at 255 the stripe_cache_size stays
usually in the lower half (below 16000 out of 32000) while with defaults
it's stuck for most of the time at the maximum and processes are stuck
sleeping in MD locks for this reason.
Do you have any knowledge of sunit/swidth alignment mechanism being
broken on 2.6.31 or more specifically 2.6.31 ubuntu generic-14 ?
(Kristleifur thank you I have seen your mention of the Ubuntu vs vanilla
kernel, I will try a vanilla one but right now I can't. However now I
have narrowed the problem so XFS people might want to watch at the
alignment problem more specifically)
Regarding my previous post I still would like to know what are those
stack traces I posted in my previous post: what are the functions
xlog_state_get_iclog_space+0xed/0x2d0 [xfs]
and
xfs_buf_lock+0x1e/0x60 [xfs]
and what are they waiting for...
these are still the place where processes get stuck, even after having
worked around the alignment/rotorstep problem...
And then a few questions on inode64:
- if I start using inode64, do I have to remember to use inode64 on
every subsequent mount for the life for that filesystem? Or does it
write it in some filesystem info region that the option has been used
once, so it applies the inode64 by itself on subsequent mounts?
- if I use a 64bit linux distro, will ALL userland programs
automatically support 64bit inodes or do I have to continuously pay
attention and risk to damage my data?
Thanks for your help
_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs
next prev parent reply other threads:[~2009-12-11 1:40 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-12-10 0:39 Disappointing performance of copy (MD raid + XFS) Asdo
2009-12-10 0:57 ` Asdo
2009-12-10 1:16 ` Asdo
2009-12-10 4:16 ` Eric Sandeen
2009-12-11 1:41 ` Asdo [this message]
2009-12-11 3:20 ` Eric Sandeen
2009-12-11 3:26 ` Dave Chinner
[not found] ` <1260895872.7209.46.camel@localhost>
2009-12-15 16:53 ` Eric Sandeen
2009-12-10 7:28 ` Gabor Gombas
2009-12-10 9:44 ` Kristleifur Daðason
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4B21A34C.9090100@shiftmail.org \
--to=asdo@shiftmail.org \
--cc=gombasg@sztaki.hu \
--cc=kristleifur@gmail.com \
--cc=linux-raid@vger.kernel.org \
--cc=sandeen@sandeen.net \
--cc=xfs@oss.sgi.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox