[RFC PATCH 00/17] THP support for PPC64
Aneesh Kumar K.V
aneesh.kumar at linux.vnet.ibm.com
Mon Feb 18 21:27:58 EST 2013
Hi,
This is an early RFC version adding transparent huge page support for PPC64.
I am sharing the changes, so that we can have early review on the approach
taken. The TODOs include
*) Compile issues with different config option
*) HugeTLBfs is disabled now (mostly compile issues)
*) PPC32 and other sub architecture details need to be worked out.
*) 4K page size details need to be worked out
*) Closer review of PMD* flags.
Some numbers:
The latency measurements code from Anton found at
http://ozlabs.org/~anton/junkcode/latency2001.c
THP disabled 64K page size
------------------------
[root at llmp24l02 ~]# ./latency2001 8G
8589934592 731.73 cycles 205.77 ns
[root at llmp24l02 ~]# ./latency2001 8G
8589934592 743.39 cycles 209.05 ns
[root at llmp24l02 ~]#
THP disabled large page via hugetlbfs
-------------------------------------
[root at llmp24l02 ~]# ./latency2001 -l 8G
8589934592 416.09 cycles 117.01 ns
[root at llmp24l02 ~]# ./latency2001 -l 8G
8589934592 415.74 cycles 116.91 ns
THP enabled 64K page size.
----------------
[root at llmp24l02 ~]# ./latency2001 8G
8589934592 405.07 cycles 113.91 ns
[root at llmp24l02 ~]# ./latency2001 8G
8589934592 411.82 cycles 115.81 ns
[root at llmp24l02 ~]#
We are close to hugetlbfs in latency and we can achieve this with zero
config/page reservation. Most of the allocations above are fault allocated.
I haven't really measured the collapse alloc impact.
Another test that does 50000000 random access over 1GB area goes from
2.65 seconds to 1.07 seconds with this patchset.
Thanks,
-aneesh
More information about the Linuxppc-dev
mailing list