Re: [PATCH] Rmap speedup

From: Andrew Morton (
Date: Mon Aug 05 2002 - 13:16:52 EST

Rik van Riel wrote:
> On Mon, 5 Aug 2002, Daniel Phillips wrote:
> > > Despite the fact that the number of pte_chain references in
> > > page_add/remove_rmap now just averages two in that test.
> >
> > It's weird that it only averages two. It's a four way and your running
> > 10 in parallel, plus a process to watch for completion, right?
> I explained this one in the comment above the declaration of
> struct pte_chain ;)
> * A singly linked list should be fine for most, if not all, workloads.
> * On fork-after-exec the mapping we'll be removing will still be near
> * the start of the list, on mixed application systems the short-lived
> * processes will have their mappings near the start of the list and
> * in systems with long-lived applications the relative overhead of
> * exit() will be lower since the applications are long-lived.

I don't think so - the list walks in there are fairly long.
What seems to be happening is that, as Daniel mentioned,
all the pte_chains for page N happen to have good locality
with the pte_chains for page N+1. Like parallel lines.

That might not hold up for longer-lived processes, slab cache
fragmentation, longer chains, etc...
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

This archive was generated by hypermail 2b29 : Wed Aug 07 2002 - 22:00:28 EST