linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: kanoj@google.engr.sgi.com (Kanoj Sarcar)
To: "David S. Miller" <davem@redhat.com>
Cc: mingo@chiara.csoma.elte.hu, andrea@suse.de,
	torvalds@transmeta.com, linux-kernel@vger.rutgers.edu,
	linux-mm@kvack.org
Subject: Re: [RFC] [RFT] [PATCH] memory zone balancing
Date: Thu, 6 Jan 2000 10:36:03 -0800 (PST)	[thread overview]
Message-ID: <200001061836.KAA95195@google.engr.sgi.com> (raw)
In-Reply-To: <200001061528.HAA05974@pizda.ninka.net> from "David S. Miller" at Jan 06, 2000 07:28:19 AM

> 
>    Date:   Thu, 6 Jan 2000 17:05:41 +0100 (CET)
>    From: Ingo Molnar <mingo@chiara.csoma.elte.hu>
> 
>    i think this is pretty much 'type-dependent'. In earlier versions
>    of the zone allocator i added a zone->memory_balanced() function
>    (but removed it later because it first needed the things your patch
>    adds). Then every zone can decide for itself wether it's
>    balanced. Eg. the DMA zone is rather critical and we want to keep
>    it free aggressively (part of that is already achieved by placing
>    it at the end of the zone chain), the highmem zone might not need
>    any balancing at all, the normal zone wants some high/low watermark
>    stuff.

After thinking about this more, I came to the conclusion that the
ZONE_BALANCED macro is just a quick way of checking whether we are
_really_ unbalanced. If so, then we need to see if we are really 
unbalanced, and do appropriate freeing. To determine whether a zone 
is _really_ unbalanced, I need to look at the number of free pages 
in the lower order zones too, then compare against the zone's water
marks. Ie, the "balancing" is not just about the absolute number of
free pages in the zone, but rather in the class that the zone 
represents.

I am waiting to see if Linus takes in my previous patch, before 
puting too much work into the balancing heuristics.

> 
> Let's be careful not to design any balancing heuristics which will
> fall apart on architectures where only one zone ever exists (because
> GFP_DMA is completely meaningless).

Yes, with all different types of machines out there, we need to be 
able to provide enough hooks to the arch code to tune the watermarks and
balancing frequency. Luckily, the zone structure is exposed via the
pg_data_t, so this should be no problem. Some sysctls are probably also 
called for.

Kanoj
> 
> Later,
> David S. Miller
> davem@redhat.com
> 

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.nl.linux.org/Linux-MM/

  reply	other threads:[~2000-01-06 18:36 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1999-12-15 19:50 Kanoj Sarcar
1999-12-17  7:27 ` Mike Galbraith
1999-12-27 16:00   ` Andrea Arcangeli
1999-12-27 16:06 ` Andrea Arcangeli
2000-01-04  2:27   ` Kanoj Sarcar
2000-01-04  3:23     ` Rik van Riel
2000-01-04 15:47       ` Rik van Riel
2000-01-06 16:05     ` Ingo Molnar
2000-01-06 15:28       ` David S. Miller
2000-01-06 18:36         ` Kanoj Sarcar [this message]
2000-01-06 19:14         ` Rik van Riel
2000-01-04 19:42 Rik van Riel

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=200001061836.KAA95195@google.engr.sgi.com \
    --to=kanoj@google.engr.sgi.com \
    --cc=andrea@suse.de \
    --cc=davem@redhat.com \
    --cc=linux-kernel@vger.rutgers.edu \
    --cc=linux-mm@kvack.org \
    --cc=mingo@chiara.csoma.elte.hu \
    --cc=torvalds@transmeta.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