linux-btrfs.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/7] Btrfs: improve the latency of the space reservation
@ 2013-11-04 15:13 Miao Xie
  2013-11-04 15:13 ` [PATCH 1/7] Btrfs: remove unnecessary initialization and memory barrior in shrink_delalloc() Miao Xie
                   ` (7 more replies)
  0 siblings, 8 replies; 14+ messages in thread
From: Miao Xie @ 2013-11-04 15:13 UTC (permalink / raw)
  To: linux-btrfs

This patchset improve the latency of the space reservation when doing the
delalloc inode flush. As we know, the current code would wait for
the completion all the ordered extents in the filesystem. It was unnecessary,
we can finish the wait and try to do reservation once again earlier if we
get enough free space. It can reduce the wait time and make the perfermance
up.

We did the buffered write test by the sysbench on my box, the following
is the result.
 Memory:	2GB
 CPU:		2Cores * 1CPU
 Partition:	20GB(SSD)
				w/		w/o
 rndwr-512KB-1Thread-2GB	120.38MB/s	110.08MB/s
 rndwr-512KB-8Threads-2GB	119.43MB/s	110.96MB/s
 seqwr-512KB-1Thread-2GB	99.676MB/s	98.53MB/s
 seqwr-512KB-8Threads-2GB	111.79MB/s	99.176MB/s

 rndwr-128KB-1Thread-2GB	139.23MB/s	95.864MB/s
 rndwr-128KB-8Threads-2GB	126.16MB/s	96.686MB/s
 seqwr-128KB-1Thread-2GB	100.24MB/s	100.95.MB/s
 seqwr-128KB-8Threads-2GB	126.51MB/s	100.26MB/s

rndwr: random write test
seqwr: sequential write test
512KB,128KB: the size of each request
1Thread, 8Threads: the number of the test threads
2GB: The total file size

Miao Xie (7):
  Btrfs: remove unnecessary initialization and memory barrior in shrink_delalloc()
  Btrfs: wait for the ordered extent only when we want
  Btrfs: pick up the code for the item number calculation in flush_space()
  Btrfs: fix the confusion between delalloc bytes and metadata bytes
  Btrfs: don't wait for all the async delalloc when shrinking delalloc
  Btrfs: don't wait for the completion of all the ordered extents
  Btrfs: rename btrfs_start_all_delalloc_inodes

 fs/btrfs/ctree.h        |  3 +--
 fs/btrfs/dev-replace.c  |  6 ++---
 fs/btrfs/extent-tree.c  | 62 ++++++++++++++++++++++++++++++++++---------------
 fs/btrfs/inode.c        |  3 +--
 fs/btrfs/ioctl.c        |  2 +-
 fs/btrfs/ordered-data.c | 22 ++++++++++++++----
 fs/btrfs/ordered-data.h |  4 ++--
 fs/btrfs/relocation.c   |  4 ++--
 fs/btrfs/super.c        |  2 +-
 fs/btrfs/transaction.c  |  4 ++--
 10 files changed, 73 insertions(+), 39 deletions(-)

-- 
1.8.1.4


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

end of thread, other threads:[~2013-11-06  5:28 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-11-04 15:13 [PATCH 0/7] Btrfs: improve the latency of the space reservation Miao Xie
2013-11-04 15:13 ` [PATCH 1/7] Btrfs: remove unnecessary initialization and memory barrior in shrink_delalloc() Miao Xie
2013-11-05 11:45   ` David Sterba
2013-11-06  1:39     ` Miao Xie
2013-11-06  5:29     ` [PATCH V2 " Miao Xie
2013-11-04 15:13 ` [PATCH 2/7] Btrfs: wait for the ordered extent only when we want Miao Xie
2013-11-04 15:13 ` [PATCH 3/7] Btrfs: pick up the code for the item number calculation in flush_space() Miao Xie
2013-11-04 15:13 ` [PATCH 4/7] Btrfs: fix the confusion between delalloc bytes and metadata bytes Miao Xie
2013-11-04 15:13 ` [PATCH 5/7] Btrfs: don't wait for all the async delalloc when shrinking delalloc Miao Xie
2013-11-04 15:13 ` [PATCH 6/7] Btrfs: don't wait for the completion of all the ordered extents Miao Xie
2013-11-04 15:13 ` [PATCH 7/7] Btrfs: rename btrfs_start_all_delalloc_inodes Miao Xie
2013-11-04 17:09   ` Josef Bacik
2013-11-05  3:07     ` Miao Xie
2013-11-04 17:05 ` [PATCH 0/7] Btrfs: improve the latency of the space reservation Josef Bacik

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).