更新时间:2025-07-21 GMT+08:00
常见场景与调优建议
推荐配置:通用业务场景
开启madvise模式,仅在需要时才使用大页:
echo madvise > /sys/kernel/mm/transparent_hugepage/enabled
内存整理使用defer+madvise,后台合并且仅针对显式请求:
echo defer+madvise > /sys/kernel/mm/transparent_hugepage/defrag
数据库或延迟敏感服务
数据库如MySQL、PostgreSQL、Redis对性能抖动敏感,建议关闭THP:
echo never > /sys/kernel/mm/transparent_hugepage/enabled
如需永久关闭,可在启动参数中加入:
sudo grubby --args="transparent_hugepage=never" --update-kernel="/boot/vmlinuz-$(uname -r)" sudo reboot
控制khugepaged活跃度
如果系统中khugepaged守护进程的CPU使用率较高时,可以考虑以下配置降低khugepaged守护进程活跃度。
降低khugepaged扫描频率:
echo 30000 > /sys/kernel/mm/transparent_hugepage/khugepaged/scan_sleep_millisecs
增加分配失败后的重试间隔:
echo 120000 > /sys/kernel/mm/transparent_hugepage/khugepaged/alloc_sleep_millisecs
减少每次扫描页数:
echo 2048 > /sys/kernel/mm/transparent_hugepage/khugepaged/pages_to_scan
禁用khugepaged自动整理功能(如确实需要):
echo 0 > /sys/kernel/mm/transparent_hugepage/khugepaged/defrag
父主题: 透明大页相关调优方法