From: Dmitry Monakhov <dmonakhov@openvz.org>
To: ext4 development <linux-ext4@vger.kernel.org>,
LKML <linux-kernel@vger.kernel.org>
Cc: Jan Kara <jack@suse.cz>, axboe@kernel.dk
Subject: [PATCH 0/2] [RFC] blkdev: flush generation optimization
Date: Sun, 14 Apr 2013 23:31:17 +0400 [thread overview]
Message-ID: <87wqs4kiyi.fsf@openvz.org> (raw)
[-- Attachment #1: Type: text/plain, Size: 487 bytes --]
Some filesystems try to optimize barrier flushes by maintaining
fs-specific generation counters, but if we introduce generic
flush generation counter for block device filesystems may use
it for fdatasync(2) optimization. Optimization should works if
userspace performs mutli-threaded IO with a lot of fdatasync()
Here are graphs for a test where each task performs random buffered writes
to dedicated file and performs fdatasync(2) after each operation.
Axis: x=nr_tasks, y=write_iops
[-- Attachment #2: fsync_test.fio --]
[-- Type: text/plain, Size: 322 bytes --]
# Chunk server simulation workload
# Files 'chunk.$NUM_JOB.0' should be precreated before the test
#
[global]
bs=4k
ioengine=psync
filesize=64M
size=8G
direct=0
runtime=30
directory=/mnt
fdatasync=1
group_reporting=1
[chunk]
overwrite=1
new_group=1
write_bw_log=bw.log
rw=randwrite
numjobs=${NUM_JOBS}
fsync=1
stonewall
[-- Attachment #3: ssd-fsync.png --]
[-- Type: image/png, Size: 5313 bytes --]
[-- Attachment #4: hdd-fsync.png --]
[-- Type: image/png, Size: 5566 bytes --]
[-- Attachment #5: Type: text/plain, Size: 103 bytes --]
TOC:
0001 blkdev: add flush generation counter
0002 ext4: Add fdatasync scalability optimization
next reply other threads:[~2013-04-14 19:31 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-04-14 19:31 Dmitry Monakhov [this message]
2013-04-14 19:34 ` [PATCH 1/2] blkdev: add flush generation counter Dmitry Monakhov
2013-04-14 19:34 ` [PATCH 2/2] ext4: Add fdatasync scalability optimization Dmitry Monakhov
2013-04-15 14:14 ` [PATCH 1/2] blkdev: add flush generation counter Jan Kara
2013-04-17 8:46 ` Dmitry Monakhov
2013-04-18 14:34 ` Jan Kara
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=87wqs4kiyi.fsf@openvz.org \
--to=dmonakhov@openvz.org \
--cc=axboe@kernel.dk \
--cc=jack@suse.cz \
--cc=linux-ext4@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.