Re: [RFC][PATCH 0/3] beat kswapd with the proverbial clue-bat

Nick Piggin
2004-09-06T01:49:27Z

Nick Piggin wrote:

>>
>> Notice how you may need to free 20% of memory to get a 2**3
>> allocation, if you have totally depleted your pages. And it's much
>> worse if you have very little memory to begin with.
>>
>> Anyway. I haven't debugged this program, so it may have serious bugs,
>> and be off by an order of magnitude or two. Whatever. If I'm wrong,
>> somebody can fix the program/script and see what the real numbers are.
>>
>>
>
> No, Andrew just recently reported that order-1 allocations were
> needing to
> free 20MB or more (on systems with not really huge memories IIRC). So I
> think your program could be reasonably close to real life.
>
>

But yeah, that is when your memory is completely depleted. A small
modification to your program to make it just keep scanning until we've
freed a set amount of memory obviously shows that the more you've freed,
the easier it becomes to free higher order areas... In this way, having
kswapd batch up the freeing might possibly make it *more* efficient than
only freeing the single higher order area when we've absolutely run out
of areas (and simply failing !wait allocations altogether).