> > we should fix this by trying to allocate continuous physical memory if
> > possible, and fall back to vmalloc() only if this allocation fails.
>
> Check -aa. A patch to do that has been in there for some time now.
We also need a way to satisfy very large allocations for the hashes (eg
the pagecache hash). On a 32G machine we get awful performance on the
pagecache hash because we can only get an order 9 allocation out of
get_free_pages:
http://samba.org/~anton/linux/pagecache/pagecache_before.png
When switching to vmalloc the hash is large enough to be useful:
http://samba.org/~anton/linux/pagecache/pagecache_after.png
As pointed out by Davem and Ingo we should try and avoid vmalloc here
due to tlb trashing.
Anton
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
This archive was generated by hypermail 2b29 : Thu Nov 15 2001 - 21:00:20 EST