看到了这个项目: https://github.com/imbushuo/EnergyStar
这个项目利用 Windows 11 新引入的 EcoQoS 调度机制将后台的用户应用设置效率模式,然后监听事件在应用切入前台时退出效率模式,成功把笔记本的续航几乎翻了个倍。
微软自己的文档里说最高可以节省 90% 的电量: https://devblogs.microsoft.com/performance-diagnostics/introducing-ecoqos/。
试着用 .NET 7 的 nativeaot 编译了一份,各位可以试试(运行之后只有一个内存占用 1~2mb 的后台进程): https://1drv.ms/u/s!ApWNk8G_rszRgolmQGgPyexi5jgELg?e=Bbo3fi
1 kanepan19 2022-08-09 21:43:40 +08:00 看样子, 微软也开始注重续航了. |
2 cnbatch 2022-08-09 23:59:09 +08:00 今年 5 月份,有人就分享了类似的代码: https://www.cnblogs.com/mooooonlight/p/16281629.html ( [windows + 大小核调度] ADL 平台大小核调度尝试) 看起来,这个功能似乎是让 Windows 11 把绝大多数进程扔给 CPU 的小核,从而达到省电的效果。 EnergyStar 的作者(imbushuo)虽然贴出了续航时间图,但却没说硬件具体型号,连 CPU 型号都不提。 我个人猜测,imbushuo 的电脑用的是 Intel 12 代 CPU ,于是才能达到这么明显的效果 |
![]() | 4 DTCPSS 2022-08-10 08:50:25 +08:00 via iPhone 不知道什么时候能内置在 Windows 里,既然已经有 API 了 |
6 zed1018 2022-08-10 09:41:02 +08:00 让我测一下,现在开始用这个软件并且不接 ac 试试,看能不能干一天 |
![]() | 7 ScaredHeart 2022-08-10 09:57:04 +08:00 ![]() 上周刚看了极客湾的视频 深度分析 win 本子与 mac 本续航差异大的原因,之前都是简单归咎为 Arm 和 x86 架构的区别,。就是 cpu 瞬时 boost 功耗高 & 最低功耗不够低。比如开个网页单核就 boost 上去了,mac 则没有。 希望这个项目能为 win 解决这个问题 |
8 INCerry 2022-08-10 10:27:42 +08:00 之前看了华为的笔记本电脑有一个模式,应用切换到后台就会把 GPU 和 CPU 占用给压低?是相同的原理吗? |
9 INCerry 2022-08-10 10:42:39 +08:00 |
10 thinkershare 2022-08-10 11:03:13 +08:00 @hez2010 无法下载, 检测到病毒?? |
11 zed1018 2022-08-10 11:49:34 +08:00 试了一下,两个小时 100 -> 63 ,开了 vscode (node+edge) 和 idea 。 |
12 cnbatch 2022-08-10 12:05:13 +08:00 |
13 cnbatch 2022-08-10 12:41:57 +08:00 ![]() 看了下微软的文档,原来是给旧设置提供新功能。 无论是 EnergyStar 项目,还是 cnblogs 的那篇文章,都使用了 SetProcessInformation 把各个应用程序设置成 PROCESS_POWER_THROTTLING_EXECUTION_SPEED 这个 PROCESS_POWER_THROTTLING_EXECUTION_SPEED 自 Win8 以来就一直存在,但微软没说它有什么作用,当时似乎只是个占位符,用来预留给“未来”(也就是现在)使用 https://web.archive.org/web/20200407200010/https://docs.microsoft.com/en-us/windows/win32/api/processthreadsapi/nf-processthreadsapi-setprocessinformation 现在,Windows 11 提供的新功能是,设置成 PROCESS_POWER_THROTTLING_EXECUTION_SPEED 之后就会被标记为 LowQoS 模式,节能的手段包括有:降频、使用小核 |
15 cnbatch 2022-08-10 12:44:41 +08:00 啊……还没写完就发出去了 更新后的 SetProcessInformation https://docs.microsoft.com/en-us/windows/win32/api/processthreadsapi/nf-processthreadsapi-setprocessinformation Remarks 部分提到了 Win11 的对该设置的省电方式 |
![]() | 16 DTCPSS 2022-08-10 12:45:37 +08:00 via iPhone @zed1018 要发挥完整效果需要 Windows 11 Build 22621 和英特尔十代或者 AMD 5000 移动处理器以上 |
17 stefwoo 2022-08-10 12:45:52 +08:00 via iPhone 看起来很棒,回家试试看。 |
![]() | 20 Moha 2022-08-10 13:49:47 +08:00 这个接上电源有啥帮助嘛? 如果确实可以,赶紧内置到 windows 里面把 |
21 INCerry 2022-08-10 14:01:59 +08:00 |
22 zed1018 2022-08-10 14:35:12 +08:00 |
![]() | 24 yangxin0 2022-08-10 15:01:44 +08:00 台式机还是 Ubuntu or Window 比较舒服,笔记本还是 Mx 系列的 Mac 比较舒服 |
25 hez2010 OP ![]() @ScaredHeart 这个评测完全本末倒置,Intel CPU 的核外待机功耗带来的影响远比 Windows 自己多次 turbo 大得多。 另外 macOS 也有这种瞬间飙到 3GHz+的现象,只不过 Windows 那边监控的刷新速度快记录到了,而 macOS 那边监控的刷新速度慢没记录到。。 |
26 lalalaqwer 2022-08-10 15:04:19 +08:00 用了牙膏厂 12 代 u 的不要想着续航了 |
27 lookStupiToForce 2022-08-10 15:41:13 +08:00 只要 A 家 I 家不给整真正低功耗高能效比版本的 CPU ,这些上层的降功耗的玩意儿全是在破房子上裱糊窗花,搭了白搭 因为你不可能开着机就是啥都不干让它空待机着看能坚持多久,而现在就算是 AI 两家的低压移动 U 在能效比上都被果 M 吊着打,想达到 macbook 的续航那是不可能的 就看 A 家 I 家有没有动力做这个事了 |
![]() | 28 Chingim 2022-08-10 16:06:53 +08:00 所以有测评吗? 使用前使用后到底增加了多少续航? |
29 zed1018 2022-08-10 16:22:36 +08:00 |
![]() | 30 ysc3839 2022-08-10 16:37:08 +08:00 @cnbatch 随手搜索一下就能知道 Win8 是不支持 ProcessPowerThrottling 的,不能只看 API 最低支持的系统,很多时候微软文档没有提到某个参数、功能支持的系统的。 https://github.com/LuoZijun/WindowsSDK/blob/67c639d592ac3a47529c870b6bb9968f4c68a31f/8.100.26936.0/um/WinBase.h#L1596-L1627 具体是哪个版本加入的,你可以找找不同版本的 Windows SDK 。 |
![]() | 31 qq78660651 2022-08-10 17:57:40 +08:00 @zed1018 还有电么 |
32 zed1018 2022-08-10 18:12:35 +08:00 @qq78660651 20%以后我就没测了,进入节电模式的话基本就没法用了。 |
34 zxCoder 2022-08-10 19:31:06 +08:00 下载的这个东西电脑说有病毒给删了。。。 |
35 hez2010 OP @zxCoder 可能因为这个程序没签名,但又是新出来的于是杀毒软件为了保险起见给报了,提交到杀毒软件厂商解除误报吧。 |
39 cnbatch 2022-08-10 21:12:58 +08:00 ![]() @ysc3839 这“顺手”顺了我 5 个小时,在虚拟机内专门安装旧版 VIsual Studio 然后把能搜到的 SDK 全都装上,真是好家伙。 经过搜索,出现于 10.0.16299.15 ,是 2017 年 10 月发布的。虽然是 Win8 之后推出,并且还是在 Win10 较早期,然而尽管如此,它看起来确实还只是个占位符,对于 Win11 之前的 Windows 版本而言并没什么实际作用 |
![]() | 40 402124773 2022-08-10 22:47:07 +08:00 其实他这个程序,使用的是 windows 10 21359 版本以后引入的 ecoqos mode 。这个 api 针对进程和线程都有对应的 api 。这个东西是需要和硬件结合的。 Initial rollout of tuning for EcoQoS includes most of the latest Intel’s 10th and 11th Generation Mobile Processors, AMD Ryzen 5000 Series Mobile Processors, and Qualcomm’s series of processors. 效果如何,我个人并不是太看好,这个 api 出来的时间其实已经有一年多了,并没有任何这方面的测试。 |
41 hez2010 OP @402124773 目前 edge 浏览器就是 ecoqos-awareness 的,你可以看到即使不需要这个程序,edge 也能自动进入效率模式。这也是 edge 比 chrome 更省电的原因之一。 |
![]() | 42 402124773 2022-08-10 23:28:30 +08:00 @hez2010 这也是 edge 比 chrome 更省电的原因之一。 这个有具体的测试对比数据吗?之前倒是并没有太关注这个。 另外我看过这个软件,除了一个特定白名单,其他所有的进程 /线程都设置为 ecoqos ,恐怕会有性能上的问题。 |
43 hez2010 OP @402124773 > 另外我看过这个软件,除了一个特定白名单,其他所有的进程 /线程都设置为 ecoqos ,恐怕会有性能上的问题。 这个软件只会把后台进程设置成 ecoqos ,如果一个应用被切换到了前台,会自动给它退出 ecoqos 。 |
44 stefwoo 2022-08-11 08:37:26 +08:00 via iPhone 我试了,它就是将非前台的全部设置为 eco ,切到前台后恢复,这个操作可以手动,这个软件相当于是个自动脚本,我觉得应该有效,看着管理器密密麻麻的树叶也不错。至少不会有什么反作用。考虑到笔记本的使用场景,切入后台本来也不太需要大量计算吧。 |
![]() | 45 cexll 2022-08-11 09:05:08 +08:00 感觉没啥用 掉电还是很快 AMD Ryzen 7 5800H with Radeon Graphics 3.20 GHz Windows 11 专业版 21H2 22000.856 |
![]() | 46 DTCPSS 2022-08-11 10:08:26 +08:00 借楼问下大大,WinUI 3 AOT 现在有什么进展吗 |
47 zed1018 2022-08-11 13:12:18 +08:00 |
48 kenvix 2022-08-11 13:13:18 +08:00 我觉得真正的续航杀手是那个 sb 现代待机 |
49 hez2010 OP ![]() @DTCPSS CsWinRT 前一阵子支持了 trimming ,估计明年差不多能支持 AOT 。 |
![]() | 51 xukongyang 2022-08-11 17:21:41 +08:00 我觉得还是有点效果的。 笔记本 lg gram 2022 16 寸 1260p 32g 1t 硬盘 windows 11 家庭版 21H2 22000.832 。 个人也是有一丢丢的续航焦虑症患者,虽然我 99%时间都在办公室或家里。 今天只测试了 windows11 的均衡模式,lg 的设备管理软件 smart assistant 中设置冷却模式为默认的正常。 EnergyStar.exe 运行后可以从任务管理器中看到 cpu 大多数时候都是使用上面 8 个方框,应该是小核了,下面的 8 个方框基本没曲线,运行大程序 idea ,ws 才会有曲线。 早上 8 点到公司就给机子充电,到 9 点时正好电池到 99%,拔电,9 到 10 点轻度使用,11 点到 14 点闲置,14 点到 17 点正常使用,轻度开发+浏览编辑,17 点时电量 53%。 这个续航我觉得还是可以的,在外面轻中度使用应该可以使用一天。 明天准备测试充满后,从 9 点开 windows11 的最佳性能模式,lg 的设备管理软件 smart assistant 中设置冷却模式为高,看下这种性能模式续航如何。 |
![]() | 52 bsns 2022-08-12 09:52:21 +08:00 |
![]() | 53 bsns 2022-08-12 09:53:41 +08:00 没成功发图  |
54 mx831027mx 2022-12-27 15:58:57 +08:00 Windows 11 22H2 、AMD Ryzen 5 5625U , 感觉有些效果,体现在后台程序导致睿频的概率变小了,但是这个玩意儿貌似不是很智能,没办法判断哪些程序在前台运行,一股脑地将用户进程全部设置成效能模式了。 |