On 12.07.2007, at 11:44, km b wrote:
"However, I am wondering whether the same tuning can be applied to other parts of the kernel? e.g, can't we map mbuf clusters to 4MB MMU pages instead of 4K pages to improve theperformance under heavy network load?" <-- That might be the question?
I am no expert in this area, however I'll try to reason: - Data gets written by DMA to buffers, so TLB is no issue here - The kernel usually only inspects the packet headers, and they are so small that there is only one pagetable lookup necessary - Copying data to userland anyways incurs pagetable lookupsBut I agree, having all kernel (including data) as 4MB tables probably won't hurt performance. What might be much more efficient could be the new GLOBAL page attribute, which prevents the TLB entries to be flushed unless specified explicitly. If all kernel memory is mapped this way, even a task switch won't invalidate the kernel memory TLBs. Don't know how much impact this might have, though.
cheers simon -- Serve - BSD +++ RENT this banner advert +++ ASCII Ribbon /"\ Work - Mac +++ space for low €€€ NOW!1 +++ Campaign \ / Party Enjoy Relax | http://dragonflybsd.org Against HTML \ Dude 2c 2 the max ! http://golden-apple.biz Mail + News / \
PGP.sig
Description: This is a digitally signed message part
