如果你的内存比较大,对于windows11可以做出如下优化

您所在的位置:网站首页 写代码电脑内存多大比较好一点 如果你的内存比较大,对于windows11可以做出如下优化

如果你的内存比较大,对于windows11可以做出如下优化

2024-07-09 17:49| 来源: 网络整理| 查看: 265

在程序界,常有这种思想:用空间换时间,用时间换空间。都是相对而言,在内存足够大的情况下,下面说几点优化其中有一些是利用空间换时间的思想,适用范围:建议内存最小16G,最好是32G及以上,CPU是Intel酷睿系列。

1、关闭超线程(HT技术:全名为Hyper-Threading),优点:大大降低功耗大大降低发热,在同等功率和电压下可以得到更高的频率,单核能力加强,玩游戏帧率上升,在当前物理核心越来越多的情况下,一般性任务核心数量是够用了,超线程技术是早期为了解决线程过多时核心不够用的情况下把一个大的物理核分为两个逻辑线程核,然而在物理核心够用的情况下开启超线程会消耗调度资源,如果并没有那么多线程任务反而会增加负担,增加cpu和内存资源的消耗,缺点:如果你要多开很多游戏以至于cpu接近满载就不要关闭它;如果是win10则可以关闭小核,开启大核超线程会更好,如果是win11的话,因为win11对12代酷睿及以后的大小核设计的酷睿系列做了优化,对P核和E核的调度优化比win10改善不少,所以可以选择关闭超线程提高能耗比,同电压下获得更高频率,更容易超频。

2、关闭虚拟内存,优点:可以节省硬盘空间并且延长硬盘寿命,缺点:PS和3dsmax这类软件要求必须开启虚拟内存,那么要使用它们就不能关闭,如果你要多开很多游戏以至于内存会爆那么也不要关闭它;

3、关闭系统还原点,优点:节省硬盘空间,缺点:不太明显;

4、禁用前台程序的页面交换,优点:把应用程序在硬盘级的数据交换强行按排到内存里去操作,响应数量级从ms级上升到ns级,缺点:如果你要多开很多游戏以至于内存会爆那么就不要禁用它或者有非常吃内存的应用程序也不要禁用它,如果要开很多虚拟机也不要禁用它,然后就是禁用之后会占用更多内存(虽然我也用虚拟机,但是我并没有多开虚拟机,所以我还是禁用了,因为32G内存用一个虚拟机也够用);

方法:修改注册表的DisablePagingExecutive的键值,把值从0改为1,位置:

\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\Memory Management

5、 修改为大容量系统缓存,优点:提高最大程序预加载进内存的文件数,提高程序响应速度,缺点:要占用更多一点内存;

方法:修改注册表的LargeSystemCache的键值,把值从0改为1,位置:

\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\Memory Management

第4和第5点里面如果没有对应键值就自行建一个,结果如下图(做完第4和第5点大概要牺牲3-5G左右内存去提高响应速度,使程序更丝滑,也就是利用空间换时间):

第5点已经开启了大容量缓存接下就是设置具体的数据,打开终端管理员,对MaxOperationAPIFiles进行设置,默认是512,如果你是16G内存就设为4096,如果是32G及以上就看情况设为8192,如果是64G及以上想都不用想直接设成8192,具体方法如下:

在终端管理员PowerShell里里输入:set-mmagent,这里因为我是32G内存所以输入数值8192(因为我有时需要开hyper-v虚拟机,所以后来我还是调成一个比较适中的情况,数值4096,因为我把虚拟内存关了,也就是关了交换分区,所以本来就吃内存一些,加上我虚拟机和一堆开发环境很吃内存,所以虽然我是32G内存但是这里我调成一个适中的值4096,也算是对内存的一点补偿,如果你是64G及以上内存想都不用想直接8192),最后用get-mmagent去查看结果,如下图:

上图上其它的参数,想设置也可以设置一下,具体大体意思如下(我个人是全用的False):

ApplicationLaunchPrefetching程序预加载进内存(内存大就开)

ApplicationPreLaunch程序预运行(CPU速度快就开)

MaxOperationAPIFiles最大程序预加载进内存的文件数(内存越大可以去开得越多)

MemoryCompression内存压缩(CPU速度快就开)

OperationAPI(内存大就开,可以让内存预读取非系统的任何程序)

PageCombining(让系统合并具有相同内容的内存,可以节省内存,CPU速度快就开)

开启方法:

enable-mmagent -需要开启的名字

关闭方法:

disable-mmagent -需要关闭的名字

备注:以上五点我都进行了如上优化,然后实测如下:虽然多耗3-5G左右内存,并且没有虚拟内存,数据全在内存进行交换,但是一般性的游戏多开和多软件运行都没有使内存爆掉,并且响应速度提升,做了以上优化之后,游戏多开不要使内存爆就还是可以的,如果你经常性爆内存那么以上优化中的一些是不能去这样优化的,我作为后端开发人员,做了如上优化之后,觉得系统很好用,日常内存同时运行软件:idea+vscode+Hyper-v+mysql+Navicat+SQLyog+putty+百度网盘+一堆页面+华硕笔记本自带的一堆软件+QQ+微信+网易云音乐+360安全卫士+360杀毒+优化之后牺牲的3G内存,内存没爆,完全够用,所以很适合做以上优化,不过就是因为没开虚拟内存,所以偶尔内存还是会接近阈值,所以在第5点里面我把数值从8192改成4096,算是对内存的一点补偿,调成4096后感觉32G的内存不会轻意逼近阈值。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3