目的
对于不同的硬件设备,通过在BIOS中设置一些高级选项,可以有效提升服务器性能。
- 服务器上的SMMU一般用来完成设备的地址转换,并且可以实现设备隔离,在虚拟化中很实用,但是在物理机测试场景下,SMMU可能会导致性能下降,尤其对于小包网络场景,因此建议关闭该功能提升服务器性能。在虚拟机场景需要打开此配置来使用PCI直通功能。
- 在本测试场景中,预取会导致cache污染,cache miss增加,因此建议关闭预取功能。
方法
- SMMU调优。
关闭SMMU请按方法一操作,开启SMMU请按方法二操作,对于不同的场景,请选择合适的方法。
方法一:
说明:方法一只适用于物理机、负载均衡场景,不适用于Nginx虚拟机场景。
- 重启服务器,按Esc键进入BIOS设置界面。
- 依次进入“Advanced > MICC Config > Support Smmu” 。
- 将“Support Smmu”设置为“Disabled”。按“F10”保存退出(永久有效)。
方法二:
说明:方法二适用于物理机、负载均衡、虚拟机场景的调优,建议使用方法二。
该方法以CentOS7.6-kernel4.14为例,其他操作系统仅做参考。
- 按照方法一的步骤,将“Support Smmu”设置为“Enabled”,如图 然后重新启动系统。
- 执行vim /etc/grub2-efi.cfg命令。
- 搜索字段"4.14",在内核代码中加入"iommu.passthrough=1"。
- 保存退出后,重启服务器。
- 重启服务器,按Esc键进入BIOS设置界面。
- 关闭预取。
- 进入BIOS设置界面。
- 依次进入“Advanced > MISC Config > CPU Prefetching Configuration”。
- 将“CPU Prefetching Configuration”设置为“Disabled”,按“F10”保存退出(永久有效)。
- 进入BIOS设置界面。