From: Gordan Bobic <gordan-UpbECiGlrmGsTnJN9+BGXg@public.gmane.org>
To: Jiro SEKIBA <jir-hfpbi5WX9J54Eiagz67IpQ@public.gmane.org>
Cc: linux-nilfs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: SSD and non-SSD Suitability
Date: Sat, 29 May 2010 09:43:35 +0100 [thread overview]
Message-ID: <4C00D3B7.8060904@bobich.net> (raw)
In-Reply-To: <87d3wf17vj.wl%jir-27yqGEOhnJbQT0dZR+AlfA@public.gmane.org>
Jiro SEKIBA wrote:
>>>> 2) Mechanical disks suffer from slow random writes (or any random
>>>> operation for that matter), too. Do the benefits of nilfs show in random
>>>> write performance on mechanical disks?
>>> I think it may have benefits, for nilfs will write sequentially whatever
>>> data is located before writing it. But still some tweaks might be required
>>> to speed up compared with ordinary filsystem like ext3.
>> Can you quantify what those tweaks may be, and when they might become
>> available/implemented?
>
> I might choose the wrong word, but what I meant is more hack is required
> to improve write performance. Not just configuration matters :(.
I understand what you meant. I just wanted to know when those hacks may
be implemented and be available for those of us interested in using
nilfs to optimize write-heavy workloads.
>>>> 3) How does this affect real-world read performance if nilfs is used on
>>>> a mechanical disk? How much additional file fragmentation in absolute
>>>> terms does nilfs cause?
>>> The data is scattered if you modified the file again and again,
>>> but it'll be almost sequential at the creation time. So it will
>>> affect much if files are modified frequently.
>> Right. So bad for certain tasks, such as databases.
>
> Indeed. maybe /var type of directories too.
Interesting. So nilfs' suitability for write heavy loads is actually
quite limited on mechanical disks, as it isn't suitable for append-heavy
situations such as databases and logging, but for use-cases that are
write+delete heavy such as mail servers or other spool type loads it
should still be advantageous.
>>>> 4) As the data gets expired, and snapshots get deleted, this will
>>>> inevitably lead to fragmentation, which will de-linearize writes as they
>>>> have to go into whatever holes are available in the data. How does this
>>>> affect nilfs write performance?
>>> For now, my understanding, nilfs garbage collector moves the live (in use)
>>> blocks to the end of logs, so holes are not created (it is correct?).
>>> However, it leads another issue that garbage collector process, which is
>>> nilfs_cleanerd, will consume the I/O. This is major I/O performance
>>> bottle neck current implementation.
>> Since this moves files, it sounds like this could be a major issue for
>> flash media since it unnecessarily creates additional writes. Can this
>> be suppressed?
>
> You can simply kill the nilfs_clearnerd after you mount the nilfs partition.
> This case, of course, any garbage is reclaimed and finally end up with
> disk full, even size of files don't occupy the storage size.
>
> I don't have data for now, but it made about twice better write performance
> compared with "with garbage collector".
What about enabling garbage collection, but disabling degragmentation?
De-allocating space that isn't used any more is a necessary evil, but
defragmentation is rather pointless in a lot of cases (e.g. SSDs) and
counter-productive in others (mechanical disks under heavy load). Also,
what about making the garbage collector "lazy", so that it runs either
just-in time to overwrite discarded data (worst case scenario) or runs
when the disks are idle (e.g. at ionice -c3, and even that only when
there have been no disk transactions for, some selectable number of ms)?
Gordan
--
To unsubscribe from this list: send the line "unsubscribe linux-nilfs" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
next prev parent reply other threads:[~2010-05-29 8:43 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-05-26 10:18 SSD and non-SSD Suitability Gordan Bobic
[not found] ` <4BFCF55A.80205-UpbECiGlrmGsTnJN9+BGXg@public.gmane.org>
2010-05-28 6:29 ` Jiro SEKIBA
[not found] ` <87typspmiq.wl%jir-27yqGEOhnJbQT0dZR+AlfA@public.gmane.org>
2010-05-28 9:50 ` Gordan Bobic
[not found] ` <4BFF91E7.9000102-UpbECiGlrmGsTnJN9+BGXg@public.gmane.org>
2010-05-29 7:31 ` Jiro SEKIBA
[not found] ` <87d3wf17vj.wl%jir-27yqGEOhnJbQT0dZR+AlfA@public.gmane.org>
2010-05-29 7:50 ` David Arendt
[not found] ` <4C00C745.6050903-/LHdS3kC8BfYtjvyW6yDsg@public.gmane.org>
2010-05-29 8:45 ` Gordan Bobic
[not found] ` <4C00D433.2010406-UpbECiGlrmGsTnJN9+BGXg@public.gmane.org>
2010-05-29 8:56 ` David Arendt
2010-05-29 8:43 ` Gordan Bobic [this message]
[not found] ` <4C00D3B7.8060904-UpbECiGlrmGsTnJN9+BGXg@public.gmane.org>
2010-06-01 13:05 ` Jiro SEKIBA
2010-05-28 8:17 ` Vincent Diepeveen
[not found] ` <927E6E4B-B072-42EE-915A-FD34A88D478A-qWit8jRvyhVmR6Xm/wNWPw@public.gmane.org>
2010-05-28 9:24 ` Gordan Bobic
[not found] ` <4BFF8BD6.7080802-UpbECiGlrmGsTnJN9+BGXg@public.gmane.org>
2010-05-28 10:15 ` Vincent Diepeveen
[not found] ` <72C0FCE6-CE1A-4262-B89F-A1C3CBA99EAD-qWit8jRvyhVmR6Xm/wNWPw@public.gmane.org>
2010-05-28 10:44 ` Gordan Bobic
[not found] ` <4BFF9E74.6040900-UpbECiGlrmGsTnJN9+BGXg@public.gmane.org>
2010-05-28 12:33 ` Vincent Diepeveen
[not found] ` <BF3C6199-02BC-415A-B028-E856312FB2DD-qWit8jRvyhVmR6Xm/wNWPw@public.gmane.org>
2010-05-28 13:36 ` Gordan Bobic
[not found] ` <4BFFC6FA.8010208-UpbECiGlrmGsTnJN9+BGXg@public.gmane.org>
2010-05-28 14:31 ` Vincent Diepeveen
[not found] ` <20C856F0-0CEB-45B9-A668-C07C89A7D338-qWit8jRvyhVmR6Xm/wNWPw@public.gmane.org>
2010-05-28 15:36 ` Gordan Bobic
2010-05-28 12:45 ` Vincent Diepeveen
[not found] ` <A3BB0C84-D2BD-4119-9296-0A4D9FC02F19-qWit8jRvyhVmR6Xm/wNWPw@public.gmane.org>
2010-05-28 13:39 ` Gordan Bobic
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=4C00D3B7.8060904@bobich.net \
--to=gordan-upbeciglrmgstnjn9+bgxg@public.gmane.org \
--cc=jir-hfpbi5WX9J54Eiagz67IpQ@public.gmane.org \
--cc=linux-nilfs-u79uwXL29TY76Z2rM5mHXA@public.gmane.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox