[ Content contribution] 【知享计划】写了个CPU调动服务,增强稳定性
Tofloor
poster avatar
fslong
deepin
2025-09-01 14:05
Author

CPU 调度优化工具

简介

目前linux的调度相对激进,性能模式下稍微有点负载就睿频到最高频率,有时省电模式也是如此。

如果是正常的新笔记本,或者硬件比较优质的设备,问题不大。

但很多装了deepin的设备是老旧设备,使用工况也不太好,这种情况下就容易出现死机等意外。

故此,跟ai进行battle两小时,写了这个程序,基本上日常使用感受不到性能受到什么影响,显著降低了死机概率,分享出来供也遇到死机的小伙伴使用。

CPU调度优化工具是一套用于动态调整CPU频率的脚本和服务,旨在解决系统在高负载下长时间睿频导致的不稳定问题(如磁盘掉电等)。

该工具通过监控CPU,在持续高负载时自动降低CPU频率上限,以减少功耗和热量产生,提高系统稳定性。

工作原理

  1. 定期监控系统负载(默认每10秒检查一次)
  2. 当检测到持续高负载(默认80%以上持续1分钟)时,自动降低CPU频率上限(默认降低到75%)
  3. 当系统进入持续低负载状态(默认40%以下持续1分钟)时,自动恢复CPU频率上限

文件说明

  • cpu_scheduler.sh: 主要的CPU调度优化脚本
  • cpu-scheduler.service: systemd服务配置文件
  • install_service.sh: 安装服务的脚本
  • uninstall_service.sh: 卸载服务的脚本
  • README.md: 说明文档

使用方法

直接运行脚本

# 以默认参数运行(需要root权限)
sudo ./cpu_scheduler.sh

# 自定义参数运行
sudo ./cpu_scheduler.sh -i 60 -h 75 -s 120 -r 10

参数说明:

  • -i, --interval <秒>: 检查间隔,默认10秒
  • -h, --high-threshold <百分比>: 高负载阈值,默认80%
  • -l, --low-threshold <百分比>: 低负载阈值,默认40%
  • -s, --sustained <秒>: 持续时间阈值,默认60秒
  • -r, --reduction <百分比>: 频率降低幅度,默认25%
  • -n, --increase <百分比>: 频率增加幅度,默认25%
  • -f, --log-file <文件>: 日志文件路径,默认/var/log/cpu-scheduler.log

安装为系统服务

# 安装为系统服务(开机自启)
sudo ./install_service.sh

# 启动服务
sudo systemctl start cpu-scheduler.service

# 查看服务状态
sudo systemctl status cpu-scheduler.service

# 停止服务
sudo systemctl stop cpu-scheduler.service

# 禁用服务(取消开机自启)
sudo systemctl disable cpu-scheduler.service

卸载服务

# 卸载服务及相关文件
sudo ./uninstall_service.sh

日志查看

# 查看服务日志
sudo journalctl -u cpu-scheduler.service

# 查看日志文件(如果使用脚本直接运行)
cat /var/log/cpu-scheduler.log

注意事项

  1. 所有操作都需要root权限
  2. 该工具仅适用于支持CPU频率调节的系统
  3. 频率调整仅影响CPU的最大频率限制,不影响其他CPU调度策略
  4. 服务安装后会将脚本复制到系统目录 /opt/ohmylinux/cpu-scheduler/
  5. 如果更新了脚本,需要重新运行安装脚本以使更改生效

故障排除

服务无法启动

检查日志以获取详细信息:

sudo journalctl -u cpu-scheduler.service

CPU频率未按预期调整

  1. 确认系统支持CPU频率调节:

    ls /sys/devices/system/cpu/cpu0/cpufreq/
    
  2. 检查是否有其他程序正在控制CPU频率cpu-scheduler.zip

使用截图

image.png

image.png

image.png

附件

cpu-scheduler.zip

@小助手@deepin-流云

Reply Favorite View the author
All Replies
deepin-流云
Moderator
Community OP
2025-09-01 14:19
#1

感谢分享kissing_heart

Reply View the author
王文昊·(Wenhao Wang)
deepin
2025-09-01 14:21
#2

agree

Reply View the author
鲜衣怒马
deepin
2025-09-01 14:26
#3

agree

支持一下,感谢分享

Reply View the author
tacat
deepin
2025-09-01 15:08
#4

听我说,谢谢你~

Reply View the author
鲜衣怒马
deepin
2025-09-01 16:50
#5

建议打包成DEB包,方便我等小白~~

Reply View the author
‌量子巡游者
deepin
Q&A Team
2025-09-01 22:01
#6

感谢分享~

Reply View the author
兆兆嘟嘟嘟
deepin
Q&A Team
2025-09-01 22:11
#7

感谢分享。

Reply View the author
neko
deepin
Ecological co-builder
Q&A Team
2025-09-01 22:22
#8

好使!

Reply View the author
Amber
deepin
2025-09-02 17:55
#9

问题不大,我CPU一直锁最高频率的tail

Reply View the author
fslong
deepin
2025-09-03 13:23
#10
Amber

问题不大,我CPU一直锁最高频率的tail

这是给那种最高频率会炸的朋友用的

Reply View the author