看到了这个项目: 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 2
上周刚看了极客湾的视频 深度分析 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 2
看了下微软的文档,原来是给旧设置提供新功能。
无论是 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 3
@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
没成功发图
![photo_2022-08-12_09-49-30]( https://tvax2.sinaimg.cn/large/008uzYeMgy1h53qu639tgj30m20wkq49.jpg) |
54
mx831027mx 2022-12-27 15:58:57 +08:00
Windows 11 22H2 、AMD Ryzen 5 5625U , 感觉有些效果,体现在后台程序导致睿频的概率变小了,但是这个玩意儿貌似不是很智能,没办法判断哪些程序在前台运行,一股脑地将用户进程全部设置成效能模式了。
|