linux-btrfs.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Re: 2.6.35 performance results
@ 2010-08-08  4:18 A. James Lewis
  0 siblings, 0 replies; 10+ messages in thread
From: A. James Lewis @ 2010-08-08  4:18 UTC (permalink / raw)
  To: linux-btrfs


> On Fri, Aug 06, 2010 at 01:44:11PM -0500, Steven Pratt wrote:
> > Here is the latest set of performance runs from the 2.6.35-rc5 tree.
> > Included is a refresh of all the other filesystems with some changes
> > for barriers on and off since this has been somewhat of a hot topic
> > recently.
> > 
> > New data linked in to the history graphs here:
> > http://btrfs.boxacle.net/repository/raid/history/History.html
> > 
> > From a BTRFS performance perspective, we took a major regression on
> > write heavy workloads. As much as a 10x hit!  The problems seems to
> > be due to this changeset:
> > http://git.kernel.org/?p=linux/kernel/git/mason/btrfs-unstable.git;a=commit;h=5da9d01b66458b180a6bee0e637a1d0a3effc622
> 
> Ouch!  The problem is we're not being aggressive enough about
> allocating chunks for data, which makes the flusher come in and start
> data IO.
> 
> Thanks a lot for finding the regression, my machine definitely didn't
> show this.
> 
> I'll reproduce and fix it up.
> 
The guys testing this in Ubuntu's Maverick Alpha's have noticed this too... 

It happens only in some configurations... for example, I tested in a VM 
and did not see any issue, but when installing for real on the same hardware
performance fell through the floor.

https://bugs.launchpad.net/ubuntu/+source/linux-meta/+bug/601299?comments=all

> 
> -chris
> 
> > Btrfs: Shrink delay allocated space in a synchronized
> > 
> > Shrink delayed allocation space in a synchronized manner is more
> > controllable than flushing all delay allocated space in an async
> > thread.
> > 
> > This changeset introduced "btrfs_start_one_delalloc_inode" in
> > http://git.kernel.org/?p=linux/kernel/git/mason/btrfs-unstable.git;a=commitdiff;h=5da9d01b66458b180a6bee0e637a1d0a3effc622
> > 
> > In heavy write workloads this new function is now dominating the profiles:
> > 
> > samples  %        app name                 symbol name
> > 8914973  65.1261  btrfs.ko                 btrfs_start_one_delalloc_inode
> > 1024841   7.4867  vmlinux-2.6.35-rc5-autokern1 rb_get_reader_page
> > 716046    5.2309  vmlinux-2.6.35-rc5-autokern1 ring_buffer_consume
> > 315354    2.3037  oprofile.ko              add_event_entry
> > 202484    1.4792  vmlinux-2.6.35-rc5-autokern1 write_inode_now
> > 195018    1.4247  btrfs.ko                 btrfs_tree_lock
> > 
> > 
> > Appears to be major contention on the spin lock, as this gets worse
> > with more threads.  This needs to be redone.
> > 
> > 
> > Steve
> 


^ permalink raw reply	[flat|nested] 10+ messages in thread
* 2.6.35 performance results
@ 2010-08-06 18:44 Steven Pratt
  2010-08-06 18:58 ` Chris Mason
  2010-08-16 20:04 ` Chris Mason
  0 siblings, 2 replies; 10+ messages in thread
From: Steven Pratt @ 2010-08-06 18:44 UTC (permalink / raw)
  To: linux-btrfs

Here is the latest set of performance runs from the 2.6.35-rc5 tree. 
Included is a refresh of all the other filesystems with some changes for 
barriers on and off since this has been somewhat of a hot topic recently. 

New data linked in to the history graphs here:
http://btrfs.boxacle.net/repository/raid/history/History.html

 From a BTRFS performance perspective, we took a major regression on 
write heavy workloads. As much as a 10x hit!  The problems seems to be 
due to this changeset:
http://git.kernel.org/?p=linux/kernel/git/mason/btrfs-unstable.git;a=commit;h=5da9d01b66458b180a6bee0e637a1d0a3effc622
Btrfs: Shrink delay allocated space in a synchronized

Shrink delayed allocation space in a synchronized manner is more
controllable than flushing all delay allocated space in an async
thread.

This changeset introduced "btrfs_start_one_delalloc_inode" in
http://git.kernel.org/?p=linux/kernel/git/mason/btrfs-unstable.git;a=commitdiff;h=5da9d01b66458b180a6bee0e637a1d0a3effc622

In heavy write workloads this new function is now dominating the profiles:

samples  %        app name                 symbol name
8914973  65.1261  btrfs.ko                 btrfs_start_one_delalloc_inode
1024841   7.4867  vmlinux-2.6.35-rc5-autokern1 rb_get_reader_page
716046    5.2309  vmlinux-2.6.35-rc5-autokern1 ring_buffer_consume
315354    2.3037  oprofile.ko              add_event_entry
202484    1.4792  vmlinux-2.6.35-rc5-autokern1 write_inode_now
195018    1.4247  btrfs.ko                 btrfs_tree_lock


Appears to be major contention on the spin lock, as this gets worse with 
more threads.  This needs to be redone.


Steve

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2010-08-23 20:10 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-08-08  4:18 2.6.35 performance results A. James Lewis
  -- strict thread matches above, loose matches on Subject: below --
2010-08-06 18:44 Steven Pratt
2010-08-06 18:58 ` Chris Mason
2010-08-16 20:04 ` Chris Mason
2010-08-16 21:51   ` Steven Pratt
2010-08-19  1:00     ` Chris Mason
2010-08-21 15:25       ` Steven Pratt
2010-08-23 19:13         ` Steven Pratt
2010-08-23 19:33           ` Chris Mason
2010-08-23 20:10             ` Steven Pratt

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).