From: Pavel Machek <pavel@suse.cz>
To: Jamie Lokier <jamie@shareable.org>
Cc: Nigel Cunningham <ncunningham@users.sourceforge.net>,
Pavel Machek <pavel@suse.cz>,
Suspend development list <swsusp-devel@lists.sourceforge.net>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: fast compressed fs (was Re: -nice tree)
Date: Mon, 29 Mar 2004 14:10:03 +0200 [thread overview]
Message-ID: <20040329121002.GG1453@openzaurus.ucw.cz> (raw)
In-Reply-To: <20040327144945.GG21884@mail.shareable.org>
Hi!
> > How?
>
> Run two parallel tasks: 1. write pages to disk by queuing the I/Os;
> 2. compress unqueued pages.
>
> The first task won't use much CPU because it's always waiting for disk
> DMAs to complete. While it sleeps, the second task runs.
> Alternatively this can be implemented using polling for I/O
> completions in the second task, if that's easier.
>
> The first task should keep the I/O queue full enough to sustain
> writing, but not much fuller than that. Either a fixed queue length
> will be fine, or it is easy to adjust the queue length dynamically by
> enlarging it if any I/O completions occur when the queue is empty.
>
> The second task consumes uncompressed pages and makes available
> compressed pages.
>
> When the first task wants to queue more pages for I/O, it first checks
> the compressed-page list. If there are any, they are queued,
> otherwise it consumes uncompressed pages.
>
> This will automatically converge on an optimal balance between
> compressed and uncompressed page writing, provided the disk is using
> DMA, which they do on all modern system.
>
> This is actually better than fully enabling or disabling compression.
Very clever. This even could be used for a filesystem to make writes faster...
Hmm, compressed fs and *faster* than normal... sounds good.
--
64 bytes from 195.113.31.123: icmp_seq=28 ttl=51 time=448769.1 ms
next prev parent reply other threads:[~2004-03-29 13:00 UTC|newest]
Thread overview: 80+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <1079659165.15559.34.camel@calvin.wpcb.org.au>
[not found] ` <20040318193703.4c02f7f5.akpm@osdl.org>
[not found] ` <1079661410.15557.38.camel@calvin.wpcb.org.au>
[not found] ` <20040318200513.287ebcf0.akpm@osdl.org>
[not found] ` <1079664318.15559.41.camel@calvin.wpcb.org.au>
2004-03-21 22:00 ` swsusp problems [was Re: Your opinion on the merge?] Pavel Machek
2004-03-22 0:29 ` Pavel Machek
2004-03-22 20:55 ` Nigel Cunningham
2004-03-22 23:17 ` Pavel Machek
2004-03-23 9:53 ` [Swsusp-devel] " Jonathan Sambrook
2004-03-23 15:25 ` Micha Feigin
2004-03-23 21:47 ` Pavel Machek
2004-03-23 21:08 ` Nigel Cunningham
2004-03-23 22:17 ` Pavel Machek
2004-03-23 22:38 ` Nigel Cunningham
2004-03-23 23:07 ` Michael Frank
2004-03-23 23:17 ` Pavel Machek
2004-03-23 22:36 ` Nigel Cunningham
2004-03-23 23:45 ` Dumitru Ciobarcianu
2004-03-23 22:52 ` Nigel Cunningham
2004-03-24 0:05 ` Joel Jaeggli
2004-03-23 23:10 ` Nigel Cunningham
2004-03-23 22:43 ` Dmitry Torokhov
2004-03-23 23:32 ` Pavel Machek
2004-03-23 22:40 ` Nigel Cunningham
2004-03-23 23:44 ` Pavel Machek
2004-03-24 3:12 ` Michael Frank
2004-03-24 10:17 ` Pavel Machek
2004-03-24 22:46 ` Michael Frank
2004-03-24 23:23 ` Pavel Machek
2004-03-24 23:56 ` Michael Frank
2004-03-25 0:23 ` -nice tree [was Re: [Swsusp-devel] Re: swsusp problems [was Re: Your opinion on the merge?]] Pavel Machek
2004-03-25 0:50 ` Michael Frank
2004-03-25 1:41 ` Pavel Machek
[not found] ` <200403250857.08920.matthias.wieser@hiasl.net>
2004-03-25 20:39 ` Nigel Cunningham
2004-03-25 22:27 ` Pavel Machek
2004-03-25 21:38 ` Nigel Cunningham
2004-03-25 22:54 ` Pavel Machek
2004-03-26 5:59 ` Michael Frank
2004-03-26 10:50 ` Pavel Machek
2004-03-26 13:17 ` Michael Frank
2004-03-27 14:49 ` Jamie Lokier
2004-03-29 12:10 ` Pavel Machek [this message]
2004-03-26 5:59 ` Michael Frank
2004-03-26 10:22 ` Pavel Machek
2004-03-26 20:30 ` Nigel Cunningham
2004-03-26 22:22 ` Pavel Machek
2004-03-27 2:08 ` Nigel Cunningham
2004-03-27 3:37 ` Luke-Jr
2004-03-27 4:28 ` Micha Feigin
2004-03-27 4:40 ` Luke-Jr
2004-03-27 19:50 ` Micha Feigin
2004-03-27 20:03 ` Luke-Jr
2004-03-27 21:01 ` Paranoia is fun [Was Re: -nice tree [was Re: [Swsusp-devel] Re: swsusp problems [was Re: Your opinion on the merge?]]] Michael Frank
2004-03-27 21:40 ` Luke-Jr
2004-03-27 21:29 ` -nice tree [was Re: [Swsusp-devel] Re: swsusp problems [was Re: Your opinion on the merge?]] Pavel Machek
2004-03-28 0:27 ` Micha Feigin
2004-03-27 2:21 ` Micha Feigin
2004-03-29 12:13 ` Pavel Machek
2004-03-24 4:52 ` [Swsusp-devel] Re: swsusp problems [was Re: Your opinion on the merge?] Dmitry Torokhov
2004-03-24 5:04 ` Nigel Cunningham
2004-03-24 6:22 ` Michael Frank
2004-03-24 5:46 ` Nigel Cunningham
2004-03-24 7:31 ` Michael Frank
2004-03-24 10:26 ` Pavel Machek
2004-03-25 0:06 ` Jonathan Sambrook
2004-03-24 9:32 ` Karol Kozimor
2004-03-24 14:15 ` Michael Frank
2004-03-25 0:35 ` Karol Kozimor
2004-03-24 5:06 ` sleeping in request function mohanlal jangir
[not found] ` <20040324083313.GG3377@suse.de>
2004-03-25 3:45 ` mohanlal jangir
2004-03-24 10:22 ` [Swsusp-devel] Re: swsusp problems [was Re: Your opinion on the merge?] Pavel Machek
2004-03-24 12:48 ` Dmitry Torokhov
2004-03-24 15:18 ` Pavel Machek
2004-03-24 20:22 ` Jonathan Sambrook
2004-03-24 21:06 ` Michael Frank
2004-03-25 22:13 ` swsusp is not reliable. Face it. [was Re: [Swsusp-devel] Re: swsusp problems] Pavel Machek
2004-03-25 21:33 ` Nigel Cunningham
2004-03-25 22:52 ` Pavel Machek
2004-03-26 5:59 ` Michael Frank
2004-03-26 9:59 ` Pavel Machek
2004-03-26 10:21 ` Michael Frank
2004-03-25 22:08 ` [Swsusp-devel] Re: swsusp problems [was Re: Your opinion on the merge?] Pavel Machek
2004-03-24 22:05 ` Markus Gaugusch
2004-03-24 21:25 ` Nigel Cunningham
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=20040329121002.GG1453@openzaurus.ucw.cz \
--to=pavel@suse.cz \
--cc=jamie@shareable.org \
--cc=linux-kernel@vger.kernel.org \
--cc=ncunningham@users.sourceforge.net \
--cc=swsusp-devel@lists.sourceforge.net \
/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