Multiple page size support on FreeBSD?

Alfred Perlstein bright at mu.org
Wed Apr 10 20:00:35 UTC 2013


On 4/10/13 11:42 AM, Benjamin Kaduk wrote:
> On Wed, 10 Apr 2013, Wojciech Puchar wrote:
>
>>> How do your tests work?  Do you examine PTEs directly to check for 
>>> superpages
>>> or are you relying on the vm.pmap.pde sysctls?
>>
>> the later.
>>
>> anyway - algorithm described on list - that heuristics detects 
>> consecutive page access doesn't really help the urgent case - RANDOM 
>> access to large amount of memory.
>
> The algorithm is not a heuristic based on consecutive accesses, 
> promotion occurs when the entire superpage's worth of memory has 
> actually been accessed.  If I remember correctly, the performance gain 
> from superpages was only a few percent, so spending more time trying 
> to decide when to use them would make the algorithm a net wash.
>
> You should really watch the talk I linked to if you're interested, it 
> was quite interesting.
>
>> sequential access will get minimal improvement.
>>
>> IMHO the only way that really make sens is to add options to madvise 
>> to give kernel information about usage.
>
> Maybe.

It is cool that FreeBSD got this work via Alan Cox and the others that 
contributed.

I am wondering if it makes sense to have an explicit model.

At one place, for a platform with high performance but a very small TLB, 
we made it possible to explicitly request a large TLB for our process 
and it made a BIG difference for performance.

Sometimes being "general purpose" means that you can expose such low 
level things for the user to tune instead of requiring them to fit the 
app to a heuristic that may change.

-Alfred


>
> -Ben Kaduk
> _______________________________________________
> freebsd-hackers at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
> To unsubscribe, send any mail to 
> "freebsd-hackers-unsubscribe at freebsd.org"
>



More information about the freebsd-hackers mailing list