最近研究了一下服务器的BIOS调优,看了@大官人学流体力学和CFD 的视频AMD EPYC用于CFD计算尤其是针对OpenFOAM性能调优初步推荐设置方案!,查了一些资料,对课题组的一台EPYC 7T83*2(7763的马甲U)进行了BIOS调优设置,在这里做一些简单的分享
首先是系统配置,这台服务器主要配置是
CPU: AMD EPYC 7T83 64cores*2
内存:16GB 三星RECC服务器内存条*16
系统:Windows 10 专业工作站版(22H2)
下面具体说一下调优相关的内容:
资料主要参考了AMD官方的报告、@大官人学流体力学和CFD 的视频及评论区内容以及主板的bios手册,主板的bios需要根据具体的主板型号自己去查一下,不过副武器的bios大多数都是大同小异
和视频里一样,主要是参考官方手册里的这张图

但是这张图的描述有点太精炼了- -,所以我把具体的设置在这里展开说一下,具体的设置在主板手册里面直接搜就可以搜到在哪里调。着重说明一下,不同的主板具体设置会有差异,需要根据主板官网的手册去查询。
SMT=off,这个选项主要是关闭超线程,因为对于CFD这种应用场景,超线程没有性能提升,所以首先要关闭SMT。
X2APIC=on,这个貌似是跟底层机器码具体执行的有关,不管,开了。
IOMMU=off,亲测windows下把这个关了会导致系统无法启动,就是开机以后显示完主板品牌就直接黑屏,鼠标键盘都没反应。因此windows下这个还是要保持打开。搜了一下这个的主要功能是避免内存特征被黑客分析的,而且对性能影响微乎其微,因此也没必要关
APBDIS=1,没查是干嘛的,直接改了。
Fixed SOC p-state=0,Determinism=power,我的BIOS里面没有这两个设置选项,但是查了一下是CPU电源配置相关的,在CPU Common Options-Performance下,有一个Custom Core Pstates,手册描述是“Allows you to accept or decline enabling Custom Core Pstates. When accepted, you can disable or customize core pstates.”但是没有0选项。找到一个Determinism Control,但是没有power选项,我记得也是按照高性能相关的设置的。但是我估计也是电源设置相关的,因此直接设置Power Policy Quick Setting = Best Performance,其他都不管。
NPS=4,在BIOS里面是全程NUMA nodes per socket,设置即可。
DF C-state=off,在bios里面是DF Cstates,还有一个Global C-State Control,同样设置成disable。
PIO,EPIO,这个是最坑的,查评论区才知道PIO和EPIO指的是preferred IO和Enhanced preferred IO。preferred IO设置不是off,设置成Manual,然后会默认一个Bus Number 0,不用改(查了一下意思应该是双CPU默认选择CPU0)。EPIO具体位置我也没查到,就没有修改了。
TSME=off,貌似是内存安全相关的选项,关掉就好。
PCIE 10 bit tag,在bios里面是PCIe Ten Bit Tag Support,打开就好。
简单的测试了一个1200万网格的非定常算例,调优前的内循环每一步计算时长大约是45.68s,调优后内循环每一步计算时长大约是30.03s,我在网上查最多的能有10倍提升(我感觉不太可能),Linux比Windows还会再快大约5%,但是重装系统太麻烦懒得折腾了。
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删