6

最近 Linux 内核中的Transparent Huge Pages(THP)支持允许在不同页面大小(例如,x86-64 中的 4KB 和 2MB)之间自动升级/降级。但我不确定 THP 是否也可以在4KB1GB页面之间或在2MB1GB页面之间提升/降低页面大小。

有人可以对此发表评论吗?

4

1 回答 1

10

根据这篇文章

http://lwn.net/Articles/423584/

当前补丁仅适用于匿名页面;将大页面与页面缓存集成的工作尚未完成。它也只处理一个巨大的页面大小(2MB)。即便如此,还是可以看到一些有用的性能改进。Mel Gorman 运行了一些基准测试,显示在某些情况下提高了 10% 左右。一般来说,结果不如使用hugetlbfs 获得的结果好,但实际使用THP 的可能性更大。

因此,似乎为 4k -> 2M/4M 合并/拆分实现了 THP 支持。

此外,在内核源代码中,我看到有一个split_huge_page_pmd函数,并且在进行PMD拆分和PMD管理页面条目时,PTE's它具有固定的 4k 大小,我认为PMD大小(2M/4M)是最大透明大页面大小。

于 2012-10-18T17:43:08.487 回答