linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Hugh Dickins <hugh@veritas.com>
To: "Martin J. Bligh" <mbligh@aracnet.com>
Cc: Andrew Morton <akpm@digeo.com>,
	dmccr@us.ibm.com, linux-kernel@vger.kernel.org,
	linux-mm@kvack.org
Subject: Re: 2.5.65-mm2 vs 2.5.65-mm3 (full objrmap)
Date: Sat, 22 Mar 2003 23:48:29 +0000 (GMT)	[thread overview]
Message-ID: <Pine.LNX.4.44.0303222309050.1617-100000@localhost.localdomain> (raw)
In-Reply-To: <362150000.1048349169@[10.10.2.4]>

On Sat, 22 Mar 2003, Martin J. Bligh wrote:
> 
> I see very little impact either way. My initial analysis showed that 90%
> of the anonymous mappings were singletons, so the chain manipulation costs
> are probably very low. If there's a workload that has long anonymous chains,
> and manipulates them a lot, that might benefit. 

It would, yes - but like you I'm unable to name that workload
(aside from one of my own tests, not much use to the wide world).

> However, I thought there might be some benefit in the fork/exec cycle 
> (which presumably sets up a new chain instead of the direct mapping then
> tears it down again) ... but seemingly not.

I do see such benefit, but disappointingly little.  In kernel builds,
say 1% to 3% consistently (on a given machine with given jN) off the
system time; but the user time correspondingly up (eh? lock step tick
issue? cache oddity?), and elapsed time either same or slightly up.
oprofiles didn't enlighten me.

Your figures don't seem to show even that reduction in system time;
though I think you were comparing 2.5.65-mm2 against 2.5.65-mm3,
whereas I was comparing 2.5.65-mm3 with 2.5.65-mm3 minus anobjrmap.
It's conceivable there's something else in -mm3 affecting results.

> Did you keep the pte_direct
> optimisation? That seems worth keeping, with partial objrmap as well
> (I think that was removed in Dave's patch, but would presumably be easy
> to put back).

Dave didn't remove it at all, just went another way so that it became
irrelevant to obj rmaps (or you could say, every obj rmap direct,
apart from the sys_remap_file pages).  I did the same with anonymous,
they're almost all direct (since a given anon page is almost always
mapped at the same user virtual address in whatever mms it appears),
the exception needing chains coming from a perverse use of mremap.

The clearest advantage of anobjrmap so far is for your HIGHMEM64G
HIGHPTE configurations: which had a 64-bit direct pte_addr_t in
struct page, now just a 32-bit count like in the non-PAE configs.
(Though that saving could have been achieved in other ways.)

> Or maybe we just need some more tuning ;-)

Be nice if a magic wand would make it go faster, but it seems too
simple for tuning.  A lot of effort went into speeding up pte_chains,
looks like the effort paid off.  (It's particularly helpful that the
chains got collapsed back to direct lazily, by page_referenced, not
by page_remove_rmap - that means a repetitively forking process
was not perpetually convulsed in allocating and freeing chains).

Hugh

--
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.linux-mm.org/ .
Don't email: <a href=mailto:"aart@kvack.org">aart@kvack.org</a>

  reply	other threads:[~2003-03-22 23:48 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-03-21  7:58 2.5.65-mm3 Andrew Morton
2003-03-21 10:58 ` 2.5.65-mm3 Alexander Hoogerhuis
2003-03-21 11:05   ` 2.5.65-mm3 Andrew Morton
2003-03-21 12:05     ` 2.5.65-mm3 Alexander Hoogerhuis
2003-03-21 15:23 ` [BUG] 2.5.65-mm3 kernel BUG at fs/ext3/super.c:1795! Alexander Hoogerhuis
2003-03-21 20:39   ` Andrew Morton
2003-03-22  2:55     ` Alexander Hoogerhuis
2003-03-21 20:15 ` 2.5.65-mm3 Seth Chandler
2003-03-21 20:17 ` 2.5.65-mm3 Robert Love
2003-03-22 12:38 ` 2.5.65-mm3 bad: scheduling while atomic! [SCSI] Alexander Hoogerhuis
2003-03-22 14:49   ` Alan Cox
2003-03-22 16:06 ` 2.5.65-mm2 vs 2.5.65-mm3 (full objrmap) Martin J. Bligh
2003-03-22 23:48   ` Hugh Dickins [this message]
2003-03-23  1:07     ` Martin J. Bligh
2003-03-23  8:14       ` Hugh Dickins
2003-03-23  8:56         ` William Lee Irwin III

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=Pine.LNX.4.44.0303222309050.1617-100000@localhost.localdomain \
    --to=hugh@veritas.com \
    --cc=akpm@digeo.com \
    --cc=dmccr@us.ibm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=mbligh@aracnet.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