Re: [00/17] Large Blocksize Support V3

Nick Piggin
2007-04-26T08:55:13Z

Mel Gorman wrote:
> On (26/04/07 16:50), Nick Piggin didst pronounce:

>>Fragmentation is the problem. The anti-frag patches don't actually
>>guarantee anything about fragmentation, and even if they did, then
>
>
> The grouping pages by mobility do not guarantee anything but the memory
> partition (kernelcore= boot parameter) does give hard guarantees about
> the amount of memory that is "movable". Of course, the partition requires
> configuration at boot-time so it's less than ideal but it does give hard
> guarantees.

For the hugepages people, I can understand that's a solution. But that's
the last thing you want to do on a system with a limited amount of memory,
or a regular Joe's desktop/server.

> Indeed but then you have to deal with internal fragmentation
> for pages-larger-than-TLB-page. I'm not saying it's wrong but it does
> come with it's own set of issues.

None of them is perfect (the ways to increase the size of pagecache pages,
that is).

I think in the long term, TLB page sizes will probably increase a little
bit... but if a given page size is "good enough" for a CPU, they really
should be good enough for other hardware. I mean, come on, the CPU's TLB
has to have a good hit ratio and handle several lookups per cycle with a
3-cycle latency on 3GHz+ hardware... surely a an IO controller's
scatter-gather engine or IOMMU that has to do a few lookups per disk IO
is nowhere near so critical as a CPU's datapath: just add a few more
entries to it, they've already got hundreds of megs of cache, so that
isn't an issue either.

--
SUSE Labs, Novell Inc.