哪些 CPU 支持 1GB 页面?

Jon*_*art 21 cpu

某些 Intel CPU 支持 1GB 页。这是通过查看CPUID 0x80000001, EDX 位 26来识别的。Linux 内核将此 via/proc/cpuinfo作为pdpe1gb标志公开。

我们在哪里可以找到哪些 CPU 支持,哪些不支持?或者什么产品线支持这个功能?这些英特尔方舟页面上没有任何内容表明支持此功能。

CPU,可以支持1GB页面:

其他支持 1GB 页的CPU :

Via*_*nov 4

根据此页面

除了标准的 4 KB 页面外,较新的 x86-64 处理器(例如 AMD 的较新 AMD64 处理器和Intel 的 Westmere 及更高版本的处理器)可以在长模式下使用 1 GB 页面

似乎是真的,因为这是Westmere CPU 的一项新功能

  • 是的,我确实查看了所有这些维基百科页面!然而,这个答案并不正确。Sandy Bridge 比 Westmere 更新,我现在有两个*不*支持它的 Sandy Bridge CPU。 (6认同)
  • @Peter您的评论对用户空间有效。 1GB 页面特别有用的一个地方是 Linux 内核本身,其中所有物理内存都被映射到一系列内核 VA 空间中。这意味着只需少量页面即可维护此映射,并且 TLB 条目也更少。当内核堆分配直接来自此直接映射区域时,这一点很重要。 (3认同)
  • @JonathonReinhart:一般使用的 Hugepages 的*巨大*缺点,尤其是。1G 页,即整个大页占用了那么多物理 RAM。如果一个进程正常分配1GiB,那么只有它曾经接触过的部分才真正占用虚拟内存。(过度使用甚至允许内核没有足够的交换空间来处理的分配)。即使进程停止,Linux 也无法将大页分页到磁盘,因此大页分配有效地固定/锁定了那么多的物理内存。 (2认同)