本帖最后由 v4400e 于 2023-12-29 11:02 编辑
通过这篇帖子,能够让你的X570变得和B550、B450一样凉快哦,让我们不再担心X570风扇的寿命问题 从AGESA version ComboV2PI 1.2.0.A开始,部分主板厂商在部分产品的BIOS中开放了与ASPM相关的选项,大家可以根据实际情况到BIOS中打开相关的选项即可。如果仍然找不到这些选项,那么下面这篇文章有可能帮助到你。 文后更新Intel独立显卡相关内容
在我之前关于AMD系统节能玩法的帖子(AMD平台节能另类玩法基本篇,适用于主板厂家开放了相关节能设置选项的主板,目前已知的仅有**全系列(初版BIOS就已经提供了相关选项)、ASUS(Agesa 1.2.0.A BIOS开始提供ASPM选项,目前知道的是C8H这类最高端的板子可能BIOS放出较早还没看见相关选项,但是23年7月份放出来的其他X570系列、400系列基本都开放了这个功能包括最低端的Prime也有了)、ASUS TUF系列(2020年中的BIOS开始提供能源之星和CEC Ready选项)、微星的X570全系列(2023年7月份最新BIOS提供ASPM选项)开放了相关选项可供调节。另外还有一个X570节能番外篇)中提过:事实上所有的主板BIOS中都有很多隐藏的设置选项,厂商出于安全、兼容性的考虑,只开放了其中很少的一部分调节功能,并且将开放调节功能选项的多少也作为划分主板档次的一个标准。
要控制这些BIOS隐藏选项的设置值,目前主要有两个方式: 一个就是利用AMIBCP这个软件(5.02.0031、5.02.0034版本,适用于目前主流的32MB的BIOS),非常直观的调整BIOS各项的隐藏选项设置,保存后然后再刷入主板中。这个对于刷新BIOS校验机制不是很严格的主板都适用。 另外一个就是利用上面提到的setup_var命令来调整隐藏的BIOS设置值,不用刷新BIOS,其本质就是通过命令行的方式来调整BIOS设置。BIOS校验机制非常严格的主板可以参考这个方式。后文说的也主要是这个方式的流程。
在贴吧的那篇帖子中,给出了这样一个思路与教程:采用命令行操作的方式代替主板BIOS的图形界面,从而对那些并未开放的选项进行相关的设置,避开了刷新BIOS、修改BIOS带来的不可预见的风险,并且对于ASUS这类需要进行BIOS校验的品牌也同样适用。 所以从理论上来说,只要主板厂家没有关闭Setup_var这个命令(据了解目前只有部分AMI V的BIOS和联想的insyde无法修改,华硕AM5全系列目前也没办法调整,其他绝大部分主板都没有锁这个命令),就能够通过这个方式能够控制采用UEFI图形界面的基于AMI BIOS的主板,无论你是什么品牌哪怕是品牌机、笔记本什么的,只要没锁命令的,都可以用这个方式来控制那些隐藏选项。
下面就是操作流程,一步一步来肯定能行,我已经在自己的X570-P主板中开启了ASPM功能,只要细心操作就多半能成功。 首先需要准备的软件与硬件: 1、主板当前所使用BIOS版本的BIOS文件,一定是你当前使用的BIOS版本,不能不一致,因为BIOS版本不一样的话,设置选项的位置可能会发生变化,一定要当前使用的BIOS版本文件。 2、AMIBCP 5.02.0031版或者5.02.0034版 用于查看BIOS的目录结构,了解清楚自己想改哪些选项(这个软件已经无法正确打开华硕AMD主板2022年以后的BIOS了,所以只能找早期版本的BIOS大概了解一下目录结构) 3、UEFI Tool 任何版本都行 4、Universal_IFR_Extractor或者IRFExtractor 5、用于制作启动盘的bootx64.efi文件,要用贴吧那个启动文件才行,不要用微软的,进不了文字界面。 6、U盘一个,要求该盘没有制作过UEFI启动,制作过的话估计要全盘删除,要求Fat32分区格式
以上文件在本贴文末提供了下载
第一步,先用AMIBCP打开主板当前采用的BIOS文件,了解其目录结构,明确自己想要修改的隐藏的BIOS设置,比如我想改PCIE ASPM的设置,那么就找相关选项,看看有没有,以X570-P为例,可见这个主板自带了ASPM Support功能但是默认关闭。
第二步,用UEFI Tool打开BIOS文件,打开后,通过File-Search,在Text一栏下面输入ASPM Support,看下面的message一栏 右键单击这个PE32 image section,选择extract as,释放到一个你熟悉的目录,会有一个文件(文件名随意)
第三步:用Universal_IFR_Extractor打开你刚才释放出来的文件,如果正确的话,其下面Protocol后面会显示绿色的UEFI字样:再次点击右下角的Extract释放该文件,文件名与目录随意,这样就得到一个txt文档。
第四步:在释放出来的文档中找到我们想修改的选项位置,比如在X570-P 2606版BIOS中最后释放出来的文档,ASPM设置在这里:
Intel A系列独立显卡用户注意,还需要调整这里的设置(设置为L1 Entry或者L0s And L1 Entry都可以,默认是0xFF Auto),这样才有可能开启显卡的节能功能:
如果你的BIOS没有CPU PCIE ASPM设置,但是有这样的设置 那么逐一调整每根插槽的ASPM模式就行了
第五步:记下设置项的位置与我们需要修改的值,比如上面的图,ASPM选项的位置是16E,默认是Disable其值为0,需要改成Auto其值为37
其实前五部都是为了找到并确认我们需要修改的项目的位置与设置值,后面的就非常简单了
第六步:制作UEFI启动U盘,把下载的bootx64.efi文件拷贝到U盘EFI\BOOT文件夹下,其中EFI文件夹必须在U盘根目录
第七步:U盘插到主板上,重启系统,选择进入U盘的UEFI界面,在文字界面下输入setup_var(这里有一个空格)16E(这里有一个空格)37(完整的命令行就是:setup_var 16E 37)并回车,可能会有一些说找不到路径的提示,但是最后只要没有错误提示就表示成功。命令用法很简单:setup_var 选项位置(就是找到的这个选项所在的位置) 要修改的数值(也就是设置值,启用、禁用、Auto等等什么的) 注意三个命令之间有个空格
第八步:系统中要将高级电源管理中的PCI Express电源管理设置为:最大电源节省量
重启系统,用HWiNFO64 查看,可见PCIE ASPM功能已经打开。
附注:ASUS全系列X570主板的PCIE ASPM位置与部分BIOS版本(红色版本的beta bios已经被官网撤下)的对照表,操作之前请大家一定要核对BIOS版本 厂商 | 主板型号 | BIOS版本 | PCIE ASPM 位置值 | Auto值 | Force L0s值 | ASUS | X570-P | 2606 | 16E | 37 | 1 | 2802~4403 | 16F | X 570-Pro | 2606 | 170 | 2802~4021 | 171 | X 570 ACE | 2311、3101 | 169 | C8DH | 2601~3801 | 241 | C8F | 3101 | 241 | C8H | 2502~3801 | 241 | C8I | 2206//2311、2502//3003、3101、3202 | 238//239//23A | X570E | 4021 | 176 | X570F | 2608//2802、3603 | 16F//170 | X570I | 2407、2606//2802、3001//3406~4021 | 16D//16E//16F | TUF X570 Plus | 2607 | 16D | 2802~4403 | 16E | TUF X570 wifi | 3201 | 16E | TUF X570 Pro | 3201 | 16E |
最后附上本文中的相关软件 提取码:chip
附表:CPU PCIE ASPM、ASPM Support不同组合下,X570各端口的ASPM状态表(注:部分主板某些版本的BIOS,通过以上方式命令行调节CPU PCIE ASPM不一定会生效) CPU PCIE ASPM Control | ASPM Support | CPU PCIE端口ASPM状态 | X570 PCIE端口ASPM状态 | NVMe端口 | 显卡端口 | AMD Family 17h/19h - PCIe Dummy Function | AMD Family 17h/19h - SSP | AMD Family 17h/19h - Crypto-graphic Co-processor PSPCPP | AMD Matisse /Vermeer - USB3 XHCI Controller | AMD Family 17h/19h - HD Audio Controller | AMD 500-Series Chipset - Switch Upstream in PCIe | AMD Family 17h/19h - SSP | AMD Matisse /Vermeer - USB3 XHCI Controller | AMD FCH - SATA AHCI Controller (MS) | PCIE端口直连网卡 | Auto 默认 | Auto | L1 Entry | L1 Entry | L0s and L1 Entry | L0s and L1 Entry | L0s and L1 Entry | L0s and L1 Entry | L0s and L1 Entry | L0s and L1 Entry | L0s and L1 Entry | L0s and L1 Entry | L0s and L1 Entry | Disable | L1 | Auto | L1 Entry | L1 Entry | L0s and L1 Entry | L0s and L1 Entry | L0s and L1 Entry | L0s and L1 Entry | L0s and L1 Entry | L1 Entry | L1 Entry | L1 Entry | L1 Entry | L1 Entry | Auto 默认 | Disable 默认 | Disable | Disable | Disable | Disable | Disable | Disable | Disable | Disable | Disable | Disable | Disable | Disable | L1 | Disable | L1 Entry | L1 Entry | Disable | Disable | Disable | Disable | Disable | L1 Entry | L1 Entry | L1 Entry | L1 Entry | L1 Entry |
伸手党可以留下自己主板当前BIOS版本的链接,我有空的话会回复的。
仍有问题的朋友可以详细描述之前已经做的工作,这样才好沟通排查问题
需要补充的内容: 1、我查看了一下主流厂家的主板BIOS目录结构情况,御三家、一些基于公版BIOS(就是基本拿公版来用没怎么改的)的主板厂家比如七彩虹、影驰、铭瑄、昂达这类主板BIOS的隐藏目录中有ASPM相关选项;有些二线品牌的板子(包括拥有量较大也比较知名的华擎、映泰等)暂时找不到,但是这类主板很可能已经默认开启了ASPM功能。例如铭瑄的B550终结者这块主板,尽管查看其BIOS目录结构显示BIOS默认均关闭了ASPM,BIOS中也没有什么调节选项(但说老实话一般人用也够了),不过实际使用中该功能默认开启了。不知道是不是AMD公版的BIOS都是默认启用了这个功能(BIOS内部调节选项显示关闭,真实情况确实启用了),但是某些主板厂家刻意通过某些方式关闭了。
2、采用这个方式,基本可以修改BIOS中绝大部分隐藏选项,但是对于有些隐藏选项,事实上在转译出来的TXT文档中搜索不到名称,比如ASUS主板中的CEC Ready、Energy Star Ready等选项,BIOS中明明被隐藏了,但是TXT文件中搜索不到该项目(目前基本可以确定,自从3405版本BIOS后,可以通过上述方式搜索到CEC Ready、Energy Star Ready等选项定位,也就说明了这个方式可以更改自3405及之后的BIOS中任何选项!3405之前的BIOS以上选项的位置名称是空值但是有设定值,比如CEC Ready位置仍旧为114但是名称是空值,所以搜索不到),我分析是某些隐藏选项不能以这样的形式被定位,但是从文件分析中可以看出来这个位置是留有的:Setting后面并没有赋予相应的名称,但是很明显看得出这里有个设置项。我分析这个方式可能对于AMD公版BIOS的公共部分,如果厂家没有自行定义,那就可以搜索出来;如果后面自己加了东西并且选项有关联其他选项设置的话,这个选项就没有赋予名称了。不过即便是这样,也足够我们调整了。
后记更新: 2023.12.28: Intel A系列显卡在历经多次更新显卡BIOS与驱动后,目前的驱动已经可以在ASPM设置为自动的情况下进入节能状态,不用单独把ASPM设置为L1了,也算是一个进步吧。不过用软件查看,此时其根端口下的A770核心的ASPM仍旧禁用,但是整体的功耗已经和ASPM L1状态下一样了
2023.7.6: 1)AM4平台采用Intel独立显卡的用户,除了要通过以上方式开启ASPM功能外,还要将CPU PCIE ASPM Mode Control设置为L1 Entry或者L0s And L1 Entry,才有可能将显卡的ASPM功能打开,使之工作在节能模式,降低空闲能耗(不这样设置的话,显卡空闲功耗显示在40w左右,开启该功能后,桌面空闲状态下能低至10w左右)。该选项默认为Auto自动模式,A、N卡保持默认的Auto设置即可工作在ASPM模式。 2)目前发现,CPU PCIE ASPM Mode Control与某些主板的CEC Ready、Energy Star Ready似乎有关联,将CPU PCIE ASPM Mode Control设置为L1 Entry或者L0s And L1 Entry时,可以起到CEC Ready、Energy Star Ready类似的效果。经验证,在X570 TUF主板上开启Energy Star Ready后,CPU PCIE ASPM Mode Control的值自动变为L1 Entry,我估计CEC Ready、Energy Star Ready可能联动了CPU PCIE ASPM Mode Control的设置。 3)该方式目前在X570 TUF上测试成功,可以使Intel A770工作在节能状态;但在X570-P上开始没有成功,后来更新最新1.2.0.A BIOS后不经意间成功了,后来才得知,是该版本的BIOS开放了ASPM调节功能才会成功的。返回到以前的BIOS,通过Setup_var去设置CPU PCIE端口的ASPM模式仍然是无效的 4)通过这些设置,如果起作用的话,能够让X570所有的PCIE接口强制工作在L1状态下,并且强制启用X570所有端口的ASPM功能,最典型的就是直连南桥的网卡启用了ASPM模式
更进一步的,甚至独立声卡也可以工作在ASPM模式下
其他更新:
1、经过一些测试,某些早期的主板开启ASPM后会出现一点兼容性问题。我在微星的Z87-GD65上开启这个功能后,仅仅开启显卡插槽(也就是从CPU引出来的PCIE接口)的ASPM没有问题,但是一旦开启南桥PCIE插槽的ASPM后,当南桥插槽ASPM设置为Auto档的时候会出现鼠标卡顿的情况,当设置为L0sL1的时候会出现开机卡死的情况(还好这个主板背面有清除BIOS设置的小开关,要不然就有点麻烦了),所以之前林大说不开放这个功能的话也是有道理的。估计后期的主板设计成熟了才逐步开放这个选项,现在的主板基本都具备了。
2、经过我一段时间的试验,采用这个方式更改BIOS隐藏选项的设置,无法更改那些具有复合功能的选项,这是什么意思呢?仍然以ASUS主板的Energy Star Ready这个功能为例。经过在TUF X570主板下的试验,正常情况下,这个功能开关只是一个集合的表象,事实上他联系着好几个功能的开关:比如主板LED、ERP Ready、还有一个我暂时称之为“高级PCIE ASPM”开关等功能,如果这个功能打开,那么以上相应的功能设置就会出现变化,比如主板LED设置会自动设置到隐蔽模式以节省电量,ERP Ready会自动设置为S4+S5,“高级ASPM”功能会打开等等,整体会更进一步的节能。但是若通过命令行模式打开Energy Star Ready,尽管进入BIOS后查看该选项确实开启了,但是其相应的功能并未联动开启,并没有真正意义的打开这个开关。 这个问题是怎么发现的呢,因为我注意到了这个主板的网卡PCIE ASPM的开关问题。单独手动开启ASPM,唯独板载网卡无法开启ASPM模式(楼下有朋友试过挂接在南桥上的M.2 SSD也打不开ASPM估计也是类似原因,不过后来我自己又添加了一块显卡插在PCIE 4X的插槽上,显示这块显卡的ASPM是打开的,所以单独开启ASPM的话,南桥引出的PCIE插槽的aspm应该是起作用的,但为何同样是直连南桥PCIE的网卡却不起作用就不知道了),但是单独打开Energy Star Ready却能够打开板载网卡的ASPM,并且此时即便你通过命令行模式关闭PCIE ASPM开关,仍然不影响系统设置,此时大部分ASPM功能依旧有效。所以事实上在图形化界面操作控制的优先级是高于命令行调用优先级的并且有时候相互不会造成影响。这个问题也让人十分困惑,因为通过查看BIOS结构,PCIE ASPM的控制选项就这么两个了并且不分控制主体,但是事实上南桥的部分接口的PCIE ASPM似乎仍旧受到某些因素的影响,尽管手动打开隐藏的ASPM已经能够开启绝大部分设备的ASPM功能了,但是仍旧有一小部分不受控制的。通过分析部分x570主板的bios结构(目前仅MSI、七彩虹的有这部分调节项),有这么一个PCIE设备的ASPM控制项
device aspm
这部分控制项是独立于ASPM调节的,估计是控制PCIE插槽设备的aspm,而之前的aspm控制项应该是除这些插槽外的所有内置设备(比如由pcie lane引出的USB3.0控制器等内置设备)的aspm控制,估计是这就是那些不受控制的PCIE设备的ASPM,要完全开启南桥的扩展pcie设备节能,估计也要在这里进行相应的设置。所以说手动单独开启某些复合功能的选项比如Energy Star Ready、CEC Ready等,事实上是无效的。2023.7.6日补充:后续发现,该类型选项,与CPU PCIE ASPM Mode Control的设置有关,当启用该选项时,CPU PCIE ASPM Mode Control的值会出现相应变化。
最后提醒一下:BIOS中那些隐藏选项有很多其实是主板厂家调试用的,对于个人用户来说,我们不理解的那些设置项目不要轻易调整,以免带来不必要的问题。
|