Re: sparsemem & sparsemem extreme question

Dave Hansen
2005-10-04T16:15:12Z

On Tue, 2005-10-04 at 08:50 +0200, Heiko Carstens wrote:
> I'm just wondering why there is all this indirection stuff here and why not
> have one contiguous aray of struct pages (residing in the vmalloc area) that
> deals with whatever size of memory an architecture wants to support.

This is exactly what ia64 does today. Programatically, it does remove a
layer of indirection. However, there are some data structures that have
to be traversed during a lookup: the page tables. Granted, the TLB will
provide some caching, but a lookup on ia64 can potentially be much more
expensive than the two cacheline misses that sparsemem extreme might
have.

In the end no one has ever produced any compelling performance reason to
use a vmem_map (as ia64 calls it). In addition, sparsemem doesn't cause
any known performance regressions, either.

-- Dave