Linux内核中内存管理相关配置项的详细解析7

接前一篇文章:Linux内核中内存管理相关配置项的详细解析6

七、Allow for balloon memory compaction/migration

对应配置变量为:CONFIG_BALLOON_COMPACTION。

此项只有选中和不选中两种状态,默认为选中。

此项的内核源码详细解释为:

Memory fragmentation introduced by ballooning might reduce

significantly the number of 2MB contiguous memory blocks that can be

used within a guest, thus imposing performance penalties associated

with the reduced number of transparent huge pages that could be used

by the guest workload. Allowing the compaction & migration for memory

pages enlisted as being part of memory balloon devices avoids the

scenario aforementioned and helps improving memory defragmentation.

通过膨胀(ballooning)引入的内存碎片可能显著减少可以在客户机内使用的2MB连续内存块的数量,从而施加与访客工作负载可以使用的透明(内存)大页的数量减少相关联的性能惩罚。允许对作为内存balloon设备的一部分登记的内存页进行压缩和迁移,可以避免上述情况,并有助于改进内存碎片整理。

八、 Allow for memory compaction

对应配置变量为:CONFIG_COMPACTION。

此项默认选中。

此项的内核源码详细解释为:

Compaction is the only memory management component to form

high order (larger physically contiguous) memory blocks

reliably. The page allocator relies on compaction heavily and

the lack of the feature can lead to unexpected OOM killer

invocations for high order memory requests. You shouldn't

disable this option unless there really is a strong reason for

it and then we would be really interested to hear about that at

[email protected].

压缩是唯一可靠地形成高阶(较大的物理连续)内存块的内存管理组件。页面分配器严重依赖于压缩,而缺少该功能可能会导致对高阶内存请求的意外OOM killer调用。除非确实有充分的理由,否则不应该禁用此选项,并且我们真的很有兴趣在[email protected]得到反馈。

九、Free page reporting

对应配置变量为:CONFIG_PAGE_REPORTING。

此项默认选中。

此项的内核源码详细解释为:

Free page reporting allows for the incremental acquisition of

free pages from the buddy allocator for the purpose of reporting

those pages to another entity, such as a hypervisor, so that the

memory can be freed within the host for other uses.

自由页面报告允许从伙伴分配器增量获取自由页面,以便向另一实体报告那些页面,诸如hypervisor,从而可以在主机内释放内存以用于其它用途。

十、Page migration

对应配置变量为:CONFIG_MIGRATION。

此项默认选中。

此项的内核源码详细解释为:

Allows the migration of the physical location of pages of processes

while the virtual addresses are not changed. This is useful in

two situations. The first is on NUMA systems to put pages nearer

to the processors accessing. The second is when allocating huge

pages as migration can relocate pages to satisfy a huge page

allocation instead of reclaiming.

允许在不更改虚拟地址的情况下迁移进程页面的物理位置。这在两种情况下有用:第一种情况是在NUMA系统上,将页面放在离所访问处理器更近的位置;第二种情况是当分配大页时,作为迁移可以重新定位页面以满足大页分配,而代替回收。

猜你喜欢

转载自blog.csdn.net/phmatthaus/article/details/131167646
今日推荐