From: Yury Umanets <umka@namesys.com>
To: Daniel Egger <degger@fhm.edu>
Cc: Nikita Danilov <Nikita@Namesys.COM>,
Hans Reiser <reiser@namesys.com>,
Linux Kernel Mailinglist <linux-kernel@vger.kernel.org>,
reiserfs mailing list <reiserfs-list@namesys.com>
Subject: Re: Reiser4 status: benchmarked vs. V3 (and ext3)
Date: Sun, 27 Jul 2003 15:46:29 +0400 [thread overview]
Message-ID: <1059306389.17567.165.camel@haron.namesys.com> (raw)
In-Reply-To: <1059303929.11755.160.camel@sonja>
On Sun, 2003-07-27 at 15:05, Daniel Egger wrote:
> Am Son, 2003-07-27 um 12.30 schrieb Yury Umanets:
>
> > So what? I mean, that if an IO request size does not equal to flash
> > erase size, then corresponding block device driver can't just submit
> > data to flash, but need maintain some cache, and cache size the same as
> > erase size for particular flash device. And in the case when WRITE
> > request is encountered, and write sector does not equal to start sector
> > of cached data or cache is empty, block device driver should read data
> > from flash first to fill cache up. This is redundant IO operation.
>
> Right, but it should be possible to ensure (by using a special encoding)
> that a part of the erased block can be detected as empty or already
> occupied by reading just a few bytes. Sure this is a tradeoff but one
> I'd be willing to make. :)
This is probably tradeoff for flash producers first of all.
>
> > This is some misunderstanding :) First we've spoken about reiser4, then
> > you asked how does reiserfs behave on flash devices and is it convenient
> > for flash at all.
>
> > Just make sure, that we're speaking about the same thing:
>
> > Plugin-based architecture is used in reiser4, not in reiserfs (reiser3).
> > Reiser4 is fully different, written from the scratch filesystem.
>
> My bad, I thought you're using the term reiserfs also for reiser4. I was
> always talking about reiser4 when I said reiserfs.
Reiser4 will use compression. So, it will be more convenient or flash
devices. But using XIP is problematic in this case.
>
> > > I don't see what the compression has to do with the limited number of
> > > erase/write cycles.
>
> > Compressed data which should be written is smaller then uncompressed
> > one, thus, its writing affects smaller number of blocks. Each block will
> > be erased rarely, that will prolong flash live.
>
> Only when the data is in motion. Considering that most of the data is
> quite fixed with only some bytes of configuration being written a few
> times and an update of a few packages every now and then I'm pretty sure
> the wear affect will hardly hit. It's more important, that the
> configuration bits are spread evenly over the full filesystem.
>
> > So, you prefer speed?
>
> Yes. Especially startup times are important to us but also execution
> times for cachecold executables.
>
> > What do you use for this x86 box with flash?
>
> This are VIA Eden boxes with 667 Mhz fanless x86 compatible CPUs. They
> come in a booksize chassis and deliver pretty impressive performance for
> their size.
My friend used something like this for video player :)
>
> > > Convenient only insofar that it's more reliable.
> > I'd not say, that ext2 is too reliable though.
>
> No it's not. Especially the fsck annoyance is a real killer because we
> can either not run it, thereby risking an inconsistent filesystem or run
> it unattended thereby risking a loss of files.
>
> > You should take a look to reiser4, not to reiserfs. Don't forget :)
>
> I'm aware, thanks. :)
>
> > But I don't understand, why do you want to make changes in current block
> > allocator plugin? In other words, what is wrong with current
> > implementation, which is willing to allocate blocks closer one to
> > another one?
>
> > I thought, if blocks lie side by side, as current block allocator does,
> > this increases probability of flash block device cache hitting (take a
> > look to drivers/mtd/mtdblock.c), what is definitely good. Isn't it?
>
> I've some doubts that placing blocks close to another wears out all of
> the flash equally. I imagine something like circular or hashed block
> allocator which ensures equal wear leveling taking the erasesize of the
> flash into account.
Probably you are right in general.
But erasesize is block device driver abstraction level related issue.
General purpose filesystem should not be concerned about it.
--
We're flying high, we're watching the world passes by...
next prev parent reply other threads:[~2003-07-27 11:34 UTC|newest]
Thread overview: 68+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-07-23 21:02 Reiser4 status: benchmarked vs. V3 (and ext3) Hans Reiser
2003-07-24 4:26 ` Tupshin Harper
2003-07-24 4:31 ` Shawn
2003-07-24 4:56 ` Tupshin Harper
2003-07-24 5:21 ` Shawn
2003-07-24 5:33 ` Shawn
2003-07-24 11:10 ` Nikita Danilov
2003-07-24 15:10 ` Tupshin Harper
2003-07-24 15:26 ` Larry McVoy
2003-07-24 15:32 ` Tupshin Harper
2003-07-24 15:54 ` Larry McVoy
2003-07-24 15:32 ` Shawn
2003-07-27 12:28 ` Hans Reiser
2003-07-27 12:45 ` Tomas Szepe
2003-07-27 14:01 ` Hans Reiser
2003-07-27 15:04 ` Gene Heskett
2003-07-24 15:59 ` Daniel Egger
2003-07-24 17:07 ` Nikita Danilov
2003-07-24 21:10 ` Tupshin Harper
2003-07-25 12:57 ` Nikita Danilov
2003-07-25 0:39 ` Daniel Egger
2003-07-25 13:02 ` Nikita Danilov
2003-07-25 14:20 ` Daniel Egger
2003-07-25 14:39 ` Yury Umanets
2003-07-26 1:08 ` Daniel Egger
2003-07-26 7:19 ` Yury Umanets
2003-07-26 14:13 ` Daniel Egger
2003-07-26 14:54 ` Yury Umanets
2003-07-26 15:21 ` Daniel Egger
2003-07-27 3:28 ` Valdis.Kletnieks
2003-07-27 10:30 ` Yury Umanets
2003-07-27 11:05 ` Daniel Egger
2003-07-27 11:46 ` Yury Umanets [this message]
2003-08-08 14:01 ` David Woodhouse
2003-08-08 14:28 ` Bernd Eckenfels
2003-08-08 23:58 ` David Woodhouse
2003-08-09 0:29 ` Bernd Eckenfels
2003-08-09 0:38 ` David Woodhouse
2003-07-27 13:31 ` Hans Reiser
2003-07-27 14:13 ` Yury Umanets
2003-07-27 13:28 ` Hans Reiser
2003-07-27 14:10 ` Daniel Egger
2003-07-27 14:15 ` Yury Umanets
2003-08-13 20:12 ` Bill Davidsen
2003-08-14 5:04 ` Yury Umanets
2003-08-14 14:10 ` David Woodhouse
2003-08-15 11:15 ` Yury Umanets
2003-08-15 15:28 ` Bill Davidsen
2003-08-15 15:53 ` David Woodhouse
2003-08-14 13:58 ` David Woodhouse
2003-07-27 15:30 ` Bernd Eckenfels
2003-07-27 15:49 ` Alan Cox
2003-08-08 13:23 ` David Woodhouse
2003-07-28 11:30 ` Hans Reiser
2003-07-26 17:14 ` Jussi Laako
2003-07-27 13:35 ` Hans Reiser
2003-08-08 14:08 ` David Woodhouse
2003-07-27 12:59 ` Hans Reiser
2003-07-27 14:16 ` Daniel Egger
2003-07-27 15:32 ` Bernd Eckenfels
2003-08-08 14:29 ` David Woodhouse
2003-07-28 12:44 ` Hans Reiser
2003-07-28 13:06 ` Daniel Egger
2003-07-28 13:29 ` Hans Reiser
2003-07-28 13:48 ` Hans Reiser
2003-07-27 12:38 ` Hans Reiser
2003-07-26 8:33 ` Andrew Morton
2003-07-27 13:24 ` Hans Reiser
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=1059306389.17567.165.camel@haron.namesys.com \
--to=umka@namesys.com \
--cc=Nikita@Namesys.COM \
--cc=degger@fhm.edu \
--cc=linux-kernel@vger.kernel.org \
--cc=reiser@namesys.com \
--cc=reiserfs-list@namesys.com \
/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;
as well as URLs for NNTP newsgroup(s).