On Mon, 2 Apr 2007, Andi Kleen wrote: > > Correct. 2MB worth of struct page is 128 mb of memory. Are there nodes > > with smaller amounts of memory? > > Yes the discontigmem minimum is 64MB and there are some setups > (mostly with numa emulation) where you end up with nodes that small.
Ok. Then I guess we cannot remove discontigmem. > BTW there is no guarantee the node size is a multiple of 128MB so > you likely need to handle the overlap case. Otherwise we can > get cache corruptions How does sparsemem handle that? > Sparsemem is still quite experimental; discontigmem is the default > on x86-64. Ok more fodder for preserving the choice. > > > Do you have any benchmarks numbers to prove it? There seem to be a few > > > benchmarks where the discontig virt_to_page is a problem > > > (although I know ways to make it more efficient), and sparsemem > > > is normally slower. Still some numbers would be good. > > > > You want a benchmark to prove that the removal of memory references and > > code improves performance? > > You're just moving them into MMU, not really removing it. And need more TLB > entries. No no no. For the gazillions time: All of 1-1 mapped kernel memory on x86_64 needs a 2 MB page table entry. The virtual memmap uses the same. There are *no* additional TLBs used. > It might be faster or it might not. There are some unexpected issues, like > most x86-64 > CPUs have a quite small number of large TLBs so you can get thrashing etc. > > So numbers with TLB intensive workloads would be good. You did not read the descriptions. Sigh. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/