关闭NUMA、透明大页和swap

本文介绍了如何通过编辑GRUB配置和fstab来关闭服务器的NUMA功能,禁用透明大页,以及彻底关闭SWAP以提高系统性能。步骤包括修改grub配置文件,重生成页面,修改fstab并验证效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、关闭NUMA和透明大页

1.1、编辑/etc/default/grub,在GRUB CMDLINE LINUX 的最后添加: numa=off transparent_hugepage=never

[root@pv1fps2dd1 ~]# vi /etc/default/grub
GRUB TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed's,release .*$,g’ /etc/system-release)
GRUB DEFAULT=saved
GRUB DISABLE SUBMENU=true
GRUB TERMINAL OUTPUT="console"
GRUB CMDLINE LINUX="resume=/dev/mapper/rootvg-swap rd.lvm.lv=rootvg/root rd.lvm.lv=rootvg/swap rhgb quiet crashkernel=1024M,high numa=off transparent_hugepage=never"
GRUB DISABLE RECOVERY="true'

1.2、在/boot/efi/EFI/kylin/grub.cfg 中重新生成页面

1.2.1、查找页面位置

[root@pvlowdd1 ~]# find / -iname grub.cfg
/boot/efi/EFI/kylin/grub.cfg

1.2.2、生成新的grub配置文件合并修改

[root@pvlowdd1 ~]# grub2-mkconfig -o /boot/efi/EFI/kylin/grub.cfg

1.2.3、重启服务器

[root@pvlowdd1 ~]#reboot

1.2.4、查询是否生效

1.2.4.1、查询numa
#dmesg | grep -i numa
[    0.000000] NUMA: NUMA disabled
1.2.4.2、查询透明大页
cat /sys/kernel/mm/transparent_hugepage/enabled
#always madvise [never]

二、关闭SWAP

2.1、编辑/etc/fstab

# vi /etc/fstab
/dev/mapper/klas_host--10--1--1--183-root /                       xfs     defaults        0 0
/dev/mapper/klas_host--10--1--1--183-backup /backup                 xfs     noauto        0 0
UUID=4ce1a95e-15ad-489c-a9b6-93a584cbd717 /boot                   xfs     defaults        0 0
UUID=B6E6-248D          /boot/efi               vfat    umask=0077,shortname=winnt 0 2
/dev/mapper/klas_host--10--1--1--183-swap none                    swap    defaults        0 0
/dev/lvmdisk/pldy1 /data ext3 defaults 1 2

2.2、将swap挂载注释掉

#/dev/mapper/klas_host--10--1--1--183-swap none                    swap    defaults        0 0

2.3、验证SWAP是否关闭:swap已经为0,说明已经关闭成功

#free  -m
              total        used        free      shared  buff/cache   available
Mem:         129528       27766       36023          39       65738      100551
Swap:             0           0           0
<think>好的,用户的问题是关于如何在操作系统中开启关闭NUMA(非统一内存访问)配置。我需要先理解NUMA的基本概念,以及它在系统中的作用。NUMA主要用于多处理器系统中,优化内存访问速度,通过将内存分配到离处理器更近的节点上。 接下来,用户需要知道如何开启关闭NUMA的配置。根据之前的引用内容,特别是引用[3]提到在启用NUMA支持之前需要谨慎,并建议联系硬件供应商获取建议。这可能意味着不同系统操作系统的配置方法有所不同,需要具体分析。 首先,我需要确定不同环境下的配置方式。这可能包括BIOS/UEFI设置、Linux内核参数调整、使用numactl工具以及虚拟化环境中的配置。例如,在BIOS中启用或禁用NUMA,这需要用户进入系统固件设置界面查找相关选项。对于Linux系统,内核参数如numa=on或numa=off可能有效,但需要确认当前内核版本是否支持这些参数。 然后,使用numactl工具可以临时控制NUMA策略,比如--disable选项关闭NUMA,或者设置内存绑定策略。此外,虚拟化环境如KVM/QEMU可能需要不同的配置,比如引用[4]提到的UEFI支持OVMF固件,这可能涉及在虚拟机启动参数中添加numa节点配置。 还需要考虑系统服务的NUMA配置,比如通过systemd设置CPU内存绑定,如引用[1]提到的numastat统计信息的位置。这可能涉及到修改服务的unit文件,添加CPUAllocationNUMAPolicy等参数。 关闭NUMA的方法可能包括内核参数numa=off,或者在启动管理器如GRUB中配置。需要提醒用户,禁用NUMA可能影响性能,特别是在多处理器系统中,需谨慎操作。 最后,生成相关问题,帮助用户深入理解NUMA的优化、监控工具、虚拟化支持以及性能影响比较等内容。需要确保回答结构清晰,步骤明确,并引用相关参考资料,特别是用户提供的引用[1]、[3]、[4]中的建议配置方法。</think>### 如何在操作系统中开启关闭NUMA配置 #### **1. 理解NUMA的作用** NUMA(Non-Uniform Memory Access)是一种针对多处理器系统的内存设计架构,通过将内存划分为多个节点(每个节点关联一个CPU),减少跨节点内存访问的延迟。启用或禁用NUMA需根据硬件场景需求调整[^3]。 --- #### **2. 开启NUMA配置** ##### **方法1:通过BIOS/UEFI启用** - 进入系统BIOS/UEFI界面(开机时按`Del`/`F2`/`F10`等键)。 - 查找与NUMA相关的选项(如`NUMA Support`、`Memory Interleaving`)。 - 设置为`Enabled`,保存并重启。 ##### **方法2:Linux内核参数配置** - 编辑GRUB配置文件(如`/etc/default/grub`),在`GRUB_CMDLINE_LINUX`中添加`numa=on`: ```bash GRUB_CMDLINE_LINUX="... numa=on" ``` - 更新GRUB并重启: ```bash sudo update-grub && sudo reboot ``` ##### **方法3:虚拟化环境(如KVM/QEMU)** - 在虚拟机启动命令中指定NUMA节点拓扑: ```bash qemu-system-x86_64 -m 4G -smp 4,sockets=2,cores=2 \ -numa node,cpus=0-1,nodeid=0 -numa node,cpus=2-3,nodeid=1 ``` 或通过`virt-install`配置NUMA策略[^4]。 --- #### **3. 关闭NUMA配置** ##### **方法1:BIOS/UEFI禁用** - 在BIOS中找到NUMA选项,设置为`Disabled`。 ##### **方法2:Linux内核参数禁用** - 修改GRUB配置,添加`numa=off`: ```bash GRUB_CMDLINE_LINUX="... numa=off" ``` - 更新GRUB并重启。 ##### **方法3:使用`numactl`工具临时关闭** - 运行命令强制内存分配为“非NUMA”模式: ```bash numactl --interleave=all <your_command> ``` --- #### **4. 验证NUMA状态** - **查看NUMA节点信息**: ```bash numactl --hardware ``` - **检查内核启动参数**: ```bash cat /proc/cmdline | grep numa ``` --- #### **5. 系统服务NUMA配置(systemd)** - 对特定服务绑定CPU内存节点(需`systemd`版本≥245): ```ini [Service] CPUAffinity=0-3 NUMAPolicy=bind NUMAMask=0 ``` - 统计NUMA内存命中率: ```bash cat /sys/devices/system/node/node*/numastat # 引用[1] ``` --- ### 注意事项 - 启用NUMA可能提升多核性能,但配置不当会导致性能下降[^3]。 - 虚拟化环境中需确保固件支持(如OVMF用于UEFI)[^4]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值