网站首页

人工智能P2P分享搜索全网发布信息网站地图标签大全

当前位置:诺佳网 > 电子/半导体 > 嵌入式技术 >

Linux 处理CPU和内存参数的方式分享

时间:2023-05-12 11:22

人气:

作者:admin

标签: CPU  Linux  内存 

导读:关闭NUMA,关闭透明大页...

关闭NUMA,关闭透明大页

比较简单的方法: 
vim /etc/default/grub
在 GRUB_CMDLINE_LINUX 里面添加配置: 
transparent_hugepage=never numa=off
修改后的配置为:
GRUB_CMDLINE_LINUX="resume=/dev/mapper/uos-swap rd.lvm.lv=uos/root rd.lvm.lv=uos/swap \\
video=efifb:off rhgb console=tty0 crashkernel=512M transparent_hugepage=never numa=off"
生成新的的启动脚本: 
grub2-mkconfig -o /boot/grub2/grub.cfg

效果查看

lscpu
numa没有节点信息
numastat
看不到任何numa节点的内容

grep Huge /proc/meminfo
看到 AnonHugePages: 非0值 说明是启用状态.

关闭超线程

sudo sh -c 'echo off > /sys/devices/system/cpu/smt/control'
这个命令可以关闭超线程
sudo sh -c 'echo on > /sys/devices/system/cpu/smt/control'
这个命令可以打开超线程

效果查看

htop
查看CPU的总数.
lscpu
查看在线和offline的CPU个数信息.

开启关闭部分核心

echo 0 > /sys/devices/system/cpu/cpu31/online
echo 0 > /sys/devices/system/cpu/cpu63/online
echo 0 > /sys/devices/system/cpu/cpu95/online
echo 0 > /sys/devices/system/cpu/cpu127/online

开启很简单:
echo 1 > /sys/devices/system/cpu/cpu31/online
echo 1 > /sys/devices/system/cpu/cpu63/online
echo 1 > /sys/devices/system/cpu/cpu95/online
echo 1 > /sys/devices/system/cpu/cpu127/online

查看CPU的启停状态

lscpu 一般结果为:
在线 CPU 列表:0-30,32-62
离线 CPU 列表:31,63-127

如果没有执行 smt 的设置为:
在线 CPU 列表:0-30,32-62,64-94,96-126
离线 CPU 列表:31,63,95,127

禁止CPU被自动调度的方式

禁止被调度的CPU可以通过 taskset的方式绑定过去
这种方式的绑核性能更加好一些.
基本上不会有上下文切换, 性能是最好的. 

vim /boot/grub2/grub.cfg

同样在 GRUB_CMDLINE_LINUX 处增加设置为:
isolcpus=31,63,95,127
注意只能用逗号分隔,不能使用空间方式

然后执行 grub2-mkconfig -o /boot/grub2/grub.cfg 
重启服务器就可以了

手工调度

taskset -c 31,63,95,127 do-something-command

注意 taskset 的命令可以使用 区间 "-" 也可以使用 枚举"," 方式进行绑定

offline和isolcpus的区别

offline 直接无法使用了.
isolcpus 仅是系统的进程调度不会自己调度到这个内核上面运行.

offline 之后无法进行绑定
isolcpus 之后可以进行绑定 性能最优.
温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信