8.2.15.5. 内核同页合并(KSM)
当虚拟机运行时,它通常会为常见库和高使用数据等项目创建重复的内存页面。另外,运行类似客户机操作系统和应用程序的虚拟机会在虚拟内存中生成重复的内存页面。
启用后,内核同页合并 (KSM)检查主机上的虚拟内存,消除了重复内存页面,并在多个应用程序和虚拟机间共享剩余的内存页面。这些共享内存页面标记为写时复制;如果虚拟机需要向该页面写入更改,它会首先进行复制,然后再将其修改写入到该副本。
启用 KSM 时,M 会管理 KSM。您不需要手动配置或控制 KSM。
KSM 通过两种方式增加虚拟内存性能:由于更频繁地使用共享内存页面,因此主机更有可能将其存储在缓存中或主内存中,从而提高了内存访问速度。另外,有内存过量使用,KSM 会减少虚拟内存空间,从而减少交换性能的可能性。
KSM 消耗的 CPU 资源超过内存膨胀。在压力下,CPU KSM 消耗量保持一致性。在主机上运行相同的虚拟机和应用程序,与运行相同虚拟机和应用程序相比,KSM 有机会合并内存页面。如果您运行大多数不同的虚拟机和应用程序,使用 KSM 的 CPU 成本可能会降低其好处。
性能考虑:
- 在 KSM 守护进程合并大量内存后,内核内存核算统计最终可能会相互冲突。如果您的系统有大量可用内存,可以通过禁用 KSM 来提高性能。
- 对于需要持续高性能和低延迟的工作负载,红帽不推荐使用 KSM 和过量使用。请参阅配置高性能虚拟机、模板和池。
- 红帽建议在增加虚拟机密度(经济)比性能更重要时,红帽建议 KSM。
要启用 KSM,请单击 New Cluster 或 Edit Cluster 窗口中的 Optimization 选项卡。然后选择" 启用 KSM "复选框。此设置可让 MoM 在需要时运行 KSM,并在生成内存时可以降低其 CPU 的成本。请参阅 第 8.2.3 节 “优化设置说明”。