Re: Have the 2.4 kernel memory management problems on large machines been fixed?

Martin J. Bligh
2002-05-22T16:37:10Z

> pte-highmem isn't enough. On an 8GB machine it's already dead. Sharing
> is required just to avoid running out of space period. IIRC Dave
> McCracken has been working on daniel's original pte sharing patch.

Depends on the workload, but yes.

>> 5. kmap
>> Persistent kmap sucks, and the global systemwide TLB flushes
>> scale as O(1/N^2) with the number of CPUs. Enlarging the kmap
>> area helps a little, but really we need to stop doing this to
>> ourselves. I will have a patch (hopefully within a week) to do
>> per-task kmap, based on the UKVA patch that Dave McCracken has
>> already implemented.
>
> O(1/N^2)? wouldn't that get progressively better as the number of cpu's
> grows without bound?

Cost of TLB flush on 1 cpu = 1. Number of CPUs = N. Cost of systemwide
TLB flush = N. Assuming we actually use those CPUs in a comparable way,
we do N times as many global tlbflushes per second with N cpus. This N^2.
Or that's my reckoning, anyway.

M.