12.6. 管理透明巨页
在 Red Hat Enterprise Linux 10 中默认启用透明巨页(THP)。但是,您可以启用、禁用透明巨页,或使用运行时配置、TuneD 配置文件、内核命令行参数或 systemd 单元文件将透明巨页设置为 madvise。
12.6.1. 使用运行时配置管理透明巨页 复制链接链接已复制到粘贴板!
要优化内存用量,请在运行时管理透明大内存页(THP)。请注意,运行时配置在重启后不会保留。
流程
检查 THP 的状态:
$ cat /sys/kernel/mm/transparent_hugepage/enabled配置 THP.
启用 THP:
$ echo always > /sys/kernel/mm/transparent_hugepage/enabled禁用 THP:
$ echo never > /sys/kernel/mm/transparent_hugepage/enabled将 THP 设置为
madvise:$ echo madvise > /sys/kernel/mm/transparent_hugepage/enabled要防止应用程序分配过多的内存资源,请禁用系统范围的透明巨页,并只为通过
madvise系统调用明确请求它的应用程序启用它们。注意有时,为短期分配提供低延迟的优先级比立即实现长时间分配的性能要高。在这种情况下,您可以在启用 THP 时禁用直接压缩。
直接压缩是在巨页分配过程中同步的内存压缩。禁用直接压缩功能无法保证保存内存,但可能会降低频繁页面错误期间延迟更高的风险。另外,禁用直接压缩只允许
madvise中突出显示的虚拟内存区域(VMAs)的异步压缩。请注意,如果工作负载从 THP 有很大的好处,则性能会降低。禁用直接压缩:$ echo never > /sys/kernel/mm/transparent_hugepage/defrag
如需更多信息,请参阅系统中的
madvise (2)手册页。