ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

niri 低功耗配置实战:5 处改动让笔记本续航明显更久

niri 低功耗配置实战:5 处改动让笔记本续航明显更久 niri 低功耗配置实战5 处改动让笔记本续航明显更久【免费下载链接】niriA scrollable-tiling Wayland compositor.项目地址: https://gitcode.com/GitHub_Trending/ni/niri高铁上写了 40 分钟代码电池从 80% 直接掉到 35%而当时我跑的是一套滚动平铺式 Wayland 合成器 niri内屏还是高刷新率的。后来我把 niri 的 kdl 配置过了一遍只改了 5 处同样的场景续航就明显撑得更久了下面是完整的实操过程。用 powertop 先找出 Linux 笔记本功耗花在哪它省在哪笔记本耗电大户通常是屏幕和 GPU而合成器决定了屏幕多久重画一次、每次重画多重。原理一句话niri 只在画面有变化damage时才重绘所以每一次动画、每次光标移动、每一路模糊都是一次重绘省电本质就是减少重绘次数。先别急着改配置先确认电花在哪powertop --time60 watch -n2 cat /sys/class/power_supply/BAT0/power_now第一条跑 60 秒采样看是谁在频繁唤醒 CPU第二条实时读电池放电功率单位微瓦。如果 idle 时合成器稳定占几个百分点、GPU 降不下去就是下面几处要改的目标。把 niri 动画全部关掉每次开窗口不再拖满整屏它省在哪动画的每一帧都是一次重绘开关窗口、滑动工作区都在持续触发绘制。niri 动画调校是成本最低的一档一行配置的事。animations { off }预期变化开窗口频繁的用法下多数用户反馈合成器 CPU 占用能从百分之几降到接近 0idle 重绘间隔拉长到秒级因硬件而异。用 slowdown 2.0 拖慢时长手感基本不丢全关觉得太生硬的话也可以保留动画但拉长时长翻倍单位时间的重绘次数就减半。animations { slowdown 2.0 window-open { duration-ms 300; } }window-open默认 150ms拉到 300ms 后肉眼很难察觉但这一次动作的重绘帧数直接砍半。workspace-switch 弹簧参数这些细节可以参考 Configuration:-Animations.md。niri 滚动平铺工作区布局workspace-switch 是最高频的动画场景刷新率降到 60Hz屏幕重绘次数直接减半它省在哪120Hz 的屏每秒被刷新 120 次是 60Hz 的两倍面板功耗大致随帧率走。这是 Wayland 电池优化里最显性的一档。先用niri msg outputs查可用模式刷新率要和输出精确匹配到小数点后三位再写进配置output eDP-1 { mode 1920x108060.000 }预期变化社区实测从 90Hz/120Hz 降到 60Hz屏幕相关功耗大约低 10%~20%因面板而异。想保留高刷的手感也可以只在接桌面显示器时拉满用电池时就降到 60Hz。给视频开 VRR 按需模式代码时不开面板支持 VRR 的话只给视频窗口开别全局常开output eDP-1 { variable-refresh-rate on-demandtrue }这样平时写代码时 VRR 关闭只有视频窗口请求时才启用。完整说明见 Configuration:-Outputs.md。关掉模糊和窗口阴影各省掉一层全屏绘制它省在哪模糊默认要跑 3 遍双降采样dual-kawase管线窗口面积越大 GPU 算得越多阴影和边框则是在窗口四周多画一层过度绘制像素。blur { off; } layout { shadow { off; } border { off; } }注意 shadow 和 border 默认本来就是关的如果你照着别人的好看配置开了现在关掉就是净赚softness越大多画的像素越多。预期变化模糊在大面积窗口、overview 里开着时 GPU 负载最明显纯编辑器场景收益较小因内容而异。让光标自动隐藏闲置时屏幕停止白刷它省在哪光标可见期间它所在的区域每帧都要重绘鼠标停着不动但光标还在这部分重绘全是白刷。cursor { hide-when-typing hide-after-inactive-ms 1000 }预期变化看文档、看视频时鼠标一停一两秒后光标消失idle 重绘区域直接缩小到零。两行配置零代价。绑上亮度键和节能模式让整机一起进低功耗它省在哪屏幕面板经常是单机最大的耗电项合成器管不了亮度但它可以把这件事顺手交给系统工具。binds { XF86MonBrightnessUp { spawn brightnessctl set 10%; } XF86MonBrightnessDown { spawn brightnessctl set 10%-; } }系统侧配合 power-profiles-daemon一键把 CPU 频率策略降到保守powerprofilesctl set power-saver预期变化切到 power-saver 后多数用户反馈整机功耗在 niri 自己的改动之上还能再低 5%~10%因 CPU 而异多撑两小时基本就是两者叠出来的结果。用 3 条命令量化 niri 省电配置省了多少别靠体感前后用同一套方法测watch -n2 cat /sys/class/power_supply/BAT0/power_now powertop --time60 niri msg outputs方法打开同一批窗口、亮度调到一致各采样 5 分钟取微瓦读数平均。社区实测整体 idle 功耗多数能降 15%~30%因核显型号而异如果你的降幅偏小先用 powertop 查一下是不是有后台进程在持续唤醒 CPU而不是 niri 的问题。今天就能改的 3 条配置animations { off; } output eDP-1 { mode 1920x108060.000; } cursor { hide-when-typing; }这三条改完把电脑合盖放半天再打开掉电速度的差别一眼就能看出来。如果你测出了具体数字欢迎去项目 GitHub Discussions 分享你的机型和数据方便其他人直接抄作业。【免费下载链接】niriA scrollable-tiling Wayland compositor.项目地址: https://gitcode.com/GitHub_Trending/ni/niri创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进