All of lore.kernel.org
 help / color / mirror / Atom feed
From: Matteo Croce <mcroce@linux.microsoft.com>
To: daejun7.park@samsung.com
Cc: "tytso@mit.edu" <tytso@mit.edu>,
	"linux-ext4@vger.kernel.org" <linux-ext4@vger.kernel.org>
Subject: Re: discard and data=writeback
Date: Tue, 29 Dec 2020 14:42:22 +0100	[thread overview]
Message-ID: <CAFnufp39qXBtOfETsYz5LSoPZWik70uB=czmfpwiA8Hdwpi+dA@mail.gmail.com> (raw)
In-Reply-To: <20201229054143epcms2p15ae3cce43bb3c503adf94528f354ba78@epcms2p1>

On Tue, Dec 29, 2020 at 6:41 AM Daejun Park <daejun7.park@samsung.com> wrote:
>
> Hi,
>
> > # dmesg |grep EXT4-fs |tail -1
> > [ 1594.829833] EXT4-fs (nvme0n1p1): mounted filesystem with ordered
> > data mode. Opts: data=ordered,discard
> > # blktrace /dev/nvme0n1 & sleep 1 ; time rm -rf /media/linux-5.10/ ; kill $!
> > [1] 3032
> >
> > real    0m1.328s
> > user    0m0.063s
> > sys     0m1.231s
> > # === nvme0n1 ===
> >   CPU  0:                    0 events,        0 KiB data
> >   CPU  1:                    0 events,        0 KiB data
> >   CPU  2:                    0 events,        0 KiB data
> >   CPU  3:                 1461 events,       69 KiB data
> >   CPU  4:                    1 events,        1 KiB data
> >   CPU  5:                    0 events,        0 KiB data
> >   CPU  6:                    0 events,        0 KiB data
> >   CPU  7:                    0 events,        0 KiB data
> >   Total:                  1462 events (dropped 0),       69 KiB data
> >
> >
> > # dmesg |grep EXT4-fs |tail -1
> > [ 1734.837651] EXT4-fs (nvme0n1p1): mounted filesystem with writeback
> > data mode. Opts: data=writeback,discard
> > # blktrace /dev/nvme0n1 & sleep 1 ; time rm -rf /media/linux-5.10/ ; kill $!
> > [1] 3069
> >
> > real    1m30.273s
> > user    0m0.139s
> > sys     0m3.084s
> > # === nvme0n1 ===
> >   CPU  0:               133830 events,     6274 KiB data
> >   CPU  1:                21878 events,     1026 KiB data
> >   CPU  2:                46365 events,     2174 KiB data
> >   CPU  3:                98116 events,     4600 KiB data
> >   CPU  4:               290902 events,    13637 KiB data
> >   CPU  5:                10926 events,      513 KiB data
> >   CPU  6:                76861 events,     3603 KiB data
> >   CPU  7:                17855 events,      837 KiB data
> >   Total:                696733 events (dropped 0),    32660 KiB data
> >
>
> In this result, there is few IO in ordered mode.
>
> As I understand (please correct this if I am wrong), with writeback +
> discard, ext4_issue_discard is called immediately at each rm command.
> However, with ordered mode, ext4_issue_discard is called when end of
> committing a transaction to pace with the corresponding transaction.
> It means, they are not discarded yet.
>
> Even with ordered mode, if sync is called after rm command,
> ext4_issue_discard can be called due to transaction commit.
> So, I think you will get similar results form writeback mode with sync
> command.
>

Hi,

that's what I get with data=ordered if I issue a sync after the removal:

# time rm -rf /media/linux-5.10/ ; sync ; kill $!

real    0m1.569s
user    0m0.044s
sys     0m1.508s
#
 === nvme0n1 ===
 CPU  0:                10980 events,      515 KiB data
 CPU  1:                    0 events,        0 KiB data
 CPU  2:                    0 events,        0 KiB data
 CPU  3:                   26 events,        2 KiB data
 CPU  4:                 3601 events,      169 KiB data
 CPU  5:                    0 events,        0 KiB data
 CPU  6:                21786 events,     1022 KiB data
 CPU  7:                    0 events,        0 KiB data
 Total:                 36393 events (dropped 0),     1706 KiB data

Still way less transactions than writeback.

Cheers,
-- 
per aspera ad upstream

  reply	other threads:[~2020-12-29 13:43 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <CGME20201229054143epcms2p15ae3cce43bb3c503adf94528f354ba78@epcms2p1>
2020-12-29  5:41 ` discard and data=writeback Daejun Park
2020-12-29 13:42   ` Matteo Croce [this message]
     [not found]   ` <CGME20201229054143epcms2p15ae3cce43bb3c503adf94528f354ba78@epcms2p5>
2020-12-30  5:21     ` Daejun Park
2020-12-30 15:16       ` Matteo Croce
     [not found]       ` <CGME20201229054143epcms2p15ae3cce43bb3c503adf94528f354ba78@epcms2p6>
2020-12-31  1:32         ` Daejun Park
2020-12-18 18:40 Matteo Croce
2020-12-21  3:04 ` Theodore Y. Ts'o
2020-12-22 14:59   ` Matteo Croce
2020-12-22 16:34     ` Theodore Y. Ts'o
2020-12-22 22:53       ` Andreas Dilger
2020-12-23  1:25         ` Matteo Croce
2020-12-23  0:47       ` Matteo Croce
2020-12-23 18:12         ` Theodore Y. Ts'o
2020-12-23 18:59           ` Matteo Croce
2020-12-24  3:16             ` Theodore Y. Ts'o
2020-12-24 10:53               ` Matteo Croce

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='CAFnufp39qXBtOfETsYz5LSoPZWik70uB=czmfpwiA8Hdwpi+dA@mail.gmail.com' \
    --to=mcroce@linux.microsoft.com \
    --cc=daejun7.park@samsung.com \
    --cc=linux-ext4@vger.kernel.org \
    --cc=tytso@mit.edu \
    /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.