CPU亲和
群里看到大佬们手把手解决问题:核心数64个但是实际可用只有一个
# 1.查看核心数
# 系统centos7.9
[root@localhost ~]# taskset -cp $$
pid 132596's current affinity list: 0-63
或
cat /sys/devices/system/cpu/online
或
grep -i Ghz /proc/cpuinfo |wc -l
1
2
3
4
5
6
7
2
3
4
5
6
7
# 2.查看cpu亲和性
taskset -cp $$
或者
[root@master02 ~]# cat /proc/cmdline
BOOT_IMAGE=/vmlinuz-3.10.0-693.2.2.rt56.623.el7.x86_64 root=/dev/mapper/centos-root ro crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet LANG=en_US.UTF-8 iommu=pt intel_iommu=on isolcpus=1-63 irqaffinity=0
# 这个执行完可以看到限制了,绑定到 CPU 核心 0,确保相关的中断处理在指定的 CPU 核心上进行
1
2
3
4
5
2
3
4
5
# 3.查看系统启动方式
最简单的方法是查看是否存在/sys/firmware/efi文件夹。如果存在该文件夹,表示系统使用 UEFI;如果该文件夹不存在,表示系统使用 BIOS。
在 UEFI 启动的 CentOS 系统中,GRUB 的有效配置文件通常位于 “/boot/efi/EFI/centos/grub.cfg”;而如果是 BIOS 启动,GRUB 配置文件一般位于 “/boot/grub2/grub.cfg”,且通常不会在 “/boot/efi” 目录下存在相应的配置文件
1
2
2
# 5.解绑
编辑 /boot/efi/EFI/centos/grub.cfg 去除 irqaffinity=0
执行 grub2-mkconfig -o /boot/efi/EFI/centos/grub.cfg
taskset -cp 0-63 $$
taskset -p <pid>
1
2
3
4
2
3
4
上次更新: 2025/04/25, 03:40:17