无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 703|回复: 21
打印 上一主题 下一主题

[分享] 加大可用的工作线程,并优化CPU能力

[复制链接]
跳转到指定楼层
1#
发表于 3 天前 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 fulibo 于 2024-11-19 12:01 编辑

网上查了一下,一个线程大概占用1M左右的内存!
似乎,linux中虚拟内存确实是按照一个线程默认8M来分配的。
但,windows中不是这样的,开启线程后,内存增加很小。
默认情况下,一个线程的栈要预留1M的内存空间,而一个进程中可用的内存空间只有2G,
所以理论上一个进程中最多可以开2048个线程,但是内存当然不可能完全拿来作线程的栈,   
所以实际数目要比这个值要小,你也可以通过构造线程时修改默认堆栈大小,将其改的比较小,   
这样就可以多开一些线程,如将默认栈的大小改成512K,这样理论上最多就可以开4096个线程,
而一个线程的默认线程栈1024K

AdditionalCriticalWorkerThreads:用于设置额外的关键工作线程。
AdditionalDelayedWorkerThreads:用于设置延迟工作线程。
这两个参数的设置应该尽量避免超过系统的实际线程数,以保持系统稳定性。在这种情况下,Intel Core i5-10400 有 12 个线程(6 核心,支持超线程)。通常来说,可以设置的最大值不会超过实际线程数的 2 到 3 倍,但要避免过多线程导致性能瓶颈或资源耗尽。
物理核心 × 2 =

Windows Registry Editor Version 5.00

;可用的工作线程,并优化CPU能力
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Executive]
"AdditionalCriticalWorkerThreads"=dword:00000018  ;额外分配给处理关键任务的线程数量,关键任务通常指的是那些需要尽快完成,以保证系统稳定性和响应性的任务
"AdditionalDelayedWorkerThreads"=dword:00000018 ;额外分配给处理延迟任务(即那些可以稍后处理的任务)的线程数量



2#
发表于 3 天前 | 只看该作者
大佬很能钻研啊
回复

使用道具 举报

3#
发表于 3 天前 | 只看该作者
觉得没有必要优化,硬件才是硬道理
回复

使用道具 举报

4#
发表于 3 天前 | 只看该作者
谢谢分享
回复

使用道具 举报

5#
发表于 3 天前 | 只看该作者
感谢分享
回复

使用道具 举报

6#
发表于 3 天前 | 只看该作者
太牛了,感谢分享
回复

使用道具 举报

7#
发表于 3 天前 | 只看该作者
謝謝大大用心分享,感恩喔~~! ^^ 辛苦了!
回复

使用道具 举报

8#
发表于 3 天前 | 只看该作者
666
回复

使用道具 举报

9#
发表于 3 天前 | 只看该作者
在古董cpu试试咯有没有用
回复

使用道具 举报

10#
发表于 3 天前 | 只看该作者
学习了
回复

使用道具 举报

11#
发表于 3 天前 | 只看该作者
感谢分享
回复

使用道具 举报

12#
发表于 3 天前 | 只看该作者
感谢论坛,感谢LZ热心分享!感谢分享!论坛因你更精彩!
回复

使用道具 举报

13#
发表于 3 天前 | 只看该作者
12线程的CPU怎么优化?参数应该设置为多少?
回复

使用道具 举报

14#
发表于 3 天前 | 只看该作者
谢谢分享
回复

使用道具 举报

15#
发表于 3 天前 | 只看该作者
相当于超线程吗,如果已经有超线程,开这个是一个核模拟成4个吗
回复

使用道具 举报

16#
发表于 3 天前 | 只看该作者
好好学习了!!
回复

使用道具 举报

17#
发表于 3 天前 | 只看该作者
加大可用的工作线程,并优化CPU能力。感谢分享!
回复

使用道具 举报

18#
发表于 3 天前 | 只看该作者
谢谢楼主分享
回复

使用道具 举报

19#
发表于 3 天前 | 只看该作者
这个修改真有效果吗?
回复

使用道具 举报

20#
发表于 3 天前 | 只看该作者
本帖最后由 wu733 于 2024-11-19 20:48 编辑

这里有个帖子:https://zhuanlan.zhihu.com/p/166385743
里面有个类似的优化:

;增加可用的工作线程,并优化CPU能力
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Executive]
"AdditionalDelayedWorkerThreads"=dword:0000000a
"AdditionalCriticalWorkerThreads"=dword:0000000a

他这里设置了dword:0000000a,能不能说说对不对?
回复

使用道具 举报

21#
发表于 前天 14:51 来自手机 | 只看该作者
谢谢分享
回复

使用道具 举报

22#
发表于 昨天 16:45 | 只看该作者
学习
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-11-22 00:25

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表