The Linux Kernel Mailing List
 help / color / mirror / Atom feed
From: "Rafael J. Wysocki" <rjw@sisk.pl>
To: Pavel Machek <pavel@ucw.cz>
Cc: LKML <linux-kernel@vger.kernel.org>,
	Andrew Morton <akpm@linux-foundation.org>,
	Nigel Cunningham <ncunningham@linuxmail.org>
Subject: Re: [RFC][PATCH -mm] swsusp: Use rbtree for tracking allocated swap
Date: Tue, 10 Apr 2007 23:00:28 +0200	[thread overview]
Message-ID: <200704102300.29411.rjw@sisk.pl> (raw)
In-Reply-To: <20070409123920.GA4251@ucw.cz>

On Monday, 9 April 2007 14:39, Pavel Machek wrote:
> Hi!
> 
> > > > Some time ago we discussed the possibility of simplifying the swsusp's approach
> > > > towards tracking the swap pages allocated by it for saving the image (so that
> > > > they can be freed if there's an error).
> > > > 
> > > > I think we can get back to it now, as it is a nice optimization that should
> > > > allow us to use less memory (almost always) and improve performance a bit.
> > > > 
> > > 
> > > Well, I do not think you can measure the difference, but...
> > 
> > As far as the memory usage is concerned, I can. :-)  Usually, it takes 1 extent
> > (40 B on x86_64) to register all of the allocated swap pages.  If bitmaps are
> > used, we need as many bits as there are swap pages available (for 1 GB swap
> > and 4 KB pages that would be ~250000 bits, which gives ~8 pages, and we can
> > save more than 800 extents using that much memory).
> 
> Well... obviously it works for the best case. OTOH, for the worst, it
> needs 40bytes for every 2 bits. That's 16000% worse. And for that
> nightmare-fragmented 1GB swap, you'll need 5000000bytes... which is
> pretty bad.
> 
> OTOH 5MB RAM per 1GB swap is not _too_ bad... so we can do it...

In real-life scenarios you always need to keep free swap space enough for
suspending all the time, which IMO effectively prevents the "totally fragmented
1 GB swap" situation from happening.

Greetings,
Rafael

      reply	other threads:[~2007-04-10 20:57 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-04-07 21:20 [RFC][PATCH -mm] swsusp: Use rbtree for tracking allocated swap Rafael J. Wysocki
2007-04-07 22:06 ` Andrew Morton
2007-04-07 22:31   ` Nigel Cunningham
2007-04-07 23:13     ` Rafael J. Wysocki
2007-04-07 23:42       ` Nigel Cunningham
2007-04-08 16:47         ` Rafael J. Wysocki
2007-04-08 21:07           ` Nigel Cunningham
2007-04-09 13:03             ` Rafael J. Wysocki
2007-04-09 21:00               ` Nigel Cunningham
2007-04-08 12:56 ` Pavel Machek
2007-04-08 17:02   ` Rafael J. Wysocki
2007-04-09 12:39     ` Pavel Machek
2007-04-10 21:00       ` Rafael J. Wysocki [this message]

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=200704102300.29411.rjw@sisk.pl \
    --to=rjw@sisk.pl \
    --cc=akpm@linux-foundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=ncunningham@linuxmail.org \
    --cc=pavel@ucw.cz \
    /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