麒麟系统高负载卡顿需设cpu为performance策略、绑定核心、提权进程并禁用ukui节流:执行循环echo performance命令,用taskset绑定核心,renice或chrt提升优先级,gsettings关闭电源管理,systemctl mask ukui-power-manager,并为服务配置cpuaffinity等参数。

您在麒麟系统中运行编译、虚拟机或视频转码等高负载任务时,进程频繁被调度延迟、响应卡顿、多线程效率低下,很可能是默认的CPU频率调节策略与进程管理机制仍处于节能优先状态,未对关键进程实施性能锁定和优先级保障。以下是开启高性能模式并针对性管理进程的具体操作方法:
强制CPU使用performance调频策略并绑定核心
这一步是高性能进程管理的前提——若CPU本身被ondemand策略反复降频,再高的nice值也无济于事。
打开终端,执行命令确认当前策略:cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
若返回不是performance,立即统一设置全部逻辑CPU:for i in /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor; do echo performance > $i; done
执行taskset -c 0-3 your_command可将指定进程绑定到前4个物理核心(如需独占资源避免干扰),【不绑定时,内核可能将高负载进程反复迁移至刚被节能策略降频的核心上】
提升关键进程实时优先级与CPU亲和性
适用于WPS编译、ffmpeg转码、Java服务等已启动但响应迟缓的进程。
方法一:用renice临时提权
先查PID:pidof ffmpeg 或 ps aux | grep wps
再执行:sudo renice -20 -p PID号(-20为最高用户态优先级)
方法二:用chrt设置实时调度策略
对新启动进程直接赋予SCHED_FIFO实时调度:sudo chrt -f 90 ffmpeg -i input.mp4 -c:v libx264 output.mp4
【注意:SCHED_FIFO进程若失控会完全霸占CPU,务必确保命令逻辑可控】
禁用UKUI桌面环境对进程的自动节流干预
UKUI的电源管理服务(ukui-power-manager)在检测到“空闲”时,会主动向后台进程发送SIGSTOP信号或降低其调度权重,导致远程构建中断、下载暂停、数据库同步卡住。
第一步:关闭图形界面层的进程节流开关gsettings set org.ukui.power-manager sleep-computer-ac 0gsettings set org.ukui.power-manager sleep-computer-battery 0
第二步:停用可能干扰的后台节电服务sudo systemctl stop ukui-power-managersudo systemctl mask ukui-power-manager(彻底禁止其自动拉起)
第三步:验证是否生效
运行systemctl status ukui-power-manager,输出应显示masked且inactive (dead)
配置systemd服务为高性能进程提供持久化保障
适用于需长期运行的守护进程,如Nginx、PostgreSQL、自研服务等。
第一步:编辑对应服务单元文件sudo systemctl edit nginx.service
第二步:写入以下覆盖配置:
[Service]
CPUSchedulingPolicy=other
CPUSchedulingPriority=0
CPUAffinity=0-3
MemoryLimit=8G
TasksMax=1000
第三步:重载并重启服务sudo systemctl daemon-reload → sudo systemctl restart nginx
第四步:确认生效systemctl show nginx.service | grep -E "(CPU|Memory|Tasks)",输出应包含您设定的值











