Linux CPUInfo 优化技巧
导读:Linux CPUInfo 优化技巧 一 从 CPUInfo 获取的关键信息 使用以下命令快速梳理硬件与特性: 基础信息:cat /proc/cpuinfo;结构化摘要:lscpu 物理/逻辑核心与超线程:grep ‘physical...
Linux CPUInfo 优化技巧
一 从 CPUInfo 获取的关键信息
- 使用以下命令快速梳理硬件与特性:
- 基础信息:cat /proc/cpuinfo;结构化摘要:lscpu
- 物理/逻辑核心与超线程:grep ‘physical id’ /proc/cpuinfo | sort | uniq | wc -l;grep ‘cpu cores’ /proc/cpuinfo | uniq;逻辑处理器数通常等于 grep ‘processor’ /proc/cpuinfo | wc -l
- 型号与频率:grep ‘model name’ /proc/cpuinfo;grep ‘cpu MHz’ /proc/cpuinfo
- 缓存层级:grep ‘cache size’ /proc/cpuinfo
- 指令集特性:grep ‘flags’ /proc/cpuinfo(关注 SSE、AVX、AVX2、AVX-512 等)
- 64 位支持:grep ‘lm’ /proc/cpuinfo(出现 lm 表示支持 x86_64)
- 解读要点:物理核心数决定并行度上限;逻辑处理器数反映超线程/SMT;更大的缓存有助于提升命中率;指令集决定可启用的编译器优化与向量化路径。
二 电源与频率策略优化
- 查看与切换频率策略:
- 查看:cpupower frequency-info;或查看 /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
- 切换为性能模式:sudo cpupower frequency-set -g performance
- 持久化设置(Debian 示例):
- 安装工具:sudo apt install cpufrequtils
- 写入配置:echo “GOVERNOR=performance” | sudo tee /etc/default/cpufrequtils
- 生效:sudo systemctl restart cpufrequtils
- 适用场景:低时延/批处理/高并发服务建议性能模式;笔记本或混合负载可保留 powersave/ondemand 以兼顾续航与噪声。
三 进程绑定与 NUMA 亲和
- 将关键负载绑定到指定核心,减少迁移与缓存失效:
- 按 CPU 列表绑定:taskset -c 0,2,4-7 your_app
- 按 CPU 掩码绑定:taskset 0xFF your_app
- NUMA 架构下优化内存局部性:
- 查看拓扑:numactl -H
- 绑定到节点并本地分配内存:numactl -N 0 -m 0 your_app
- 适用场景:数据库、消息队列、低延迟网络服务、HPC 计算任务。
四 调度优先级与实时性配置
- 提升关键进程的调度优先级(需谨慎):
- 提高 nice 值(降低优先级):renice -10 -p
- 提升实时优先级(需 root 且谨慎):chrt -r 99
- 适用场景:实时音视频、交易撮合、工业控制等对延迟敏感的工作负载。
五 监控与瓶颈定位
- 快速观测:
- 全局与进程:top / htop;按 CPU 排序(top 中按 Shift+P)
- 系统维度:vmstat 1(关注 %us、%sy、%wa、%st)
- 内核与硬件事件:perf record -g & & perf report
- 内核与电源参数微调(示例):
- 降低换页倾向:sudo sysctl -w vm.swappiness=10
- 调整文件描述符上限:sudo sysctl -w fs.file-max=100000
- 验证与回滚:
- 每次变更前记录基线(吞吐、P95/P99 延迟、抖动),变更后在同等负载下复测;性能与稳定性优先,生产环境建议灰度与回滚预案。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Linux CPUInfo 优化技巧
本文地址: https://pptw.com/jishu/759921.html
