这两个操作系统如何针对不同的硬件架构进行性能优化?

在支持ARM和x86架构方面的具体优化措施。特别是在arm架构上有哪些具体优化措施显示全部

在支持ARM和x86架构方面的具体优化措施。特别是在arm架构上有哪些具体优化措施

收起
参与11

查看其它 3 个回答三虎的回答

三虎三虎联盟成员系统运维工程师中国邮政储蓄银行

我理解这里的硬件架构,是指CPU架构,那就包括了x86、arm、c86、MIPS等区别。
不同芯片厂家会根据自身产品特性,不定期发布补丁,各操作系统厂商应及时将补丁融合到内核版本中,以修复产品缺陷。
另外各芯片推荐的操作系统配置,可根据实际在生产中应用。

具体来说,针对飞腾芯片,可以进行如下优化:
一、关闭SMMU
如果使用SMMU的地址转换功能,在硬盘达到一定峰值时,可能会出现掉盘问题,需在操作系统层面关闭SMMU。
对于个别品牌服务器,开启SMMU可能会导致RAID卡故障,建议在BIOS中关闭SMMU。
关闭SMMU具体操作方法如下:
操作系统层面关闭SMMU:
在 /etc/default/grub里配置iommu.passthrough=1
cat /etc/default/grub | grep iommu
GRUB_CMDLINE_LINUX="crashkernel=512M rd.lvm.lv=vg00/lv_root rd.lvm.lv=vg00/lv_swap iommu.passthrough=1 transparent_hugepage=never console=ttyS0,115200n8 console=tty0"

二、升级内核
1) SMMU内核补丁:解决设备分组问题,在操作系统下看PCIE设备默认在一个分组,虚拟化设备透传无法实现,打补丁解决PCIE设备在操作系统内分组问题,以支持虚拟化设备透传功能;
2) 增加飞腾芯片支持:在飞腾S2500服务器上主要解决了对双路的支持问题;
3) 飞腾中断堆积补丁:解决在中断数量很多的场景下中断堆积在一个CPU核心的问题,均分中断到其他CPU核心;
4) 飞腾kdump功能开启:解决kdump功能在S2500服务器无法正常使用的问题;
5) 飞腾kdump功能补丁:解决在一定场景下vmcore无法存储的问题,作用为保证kdump的内核在每个socket上都有核心启动;
6) 飞腾S系列服务器中断控制器驱动更新:S系列服务器中断控制器逻辑优化。

三、网卡中断绑核优化
默认情况下,Linux中断响应会被平均分配到所有CPU核心上,势必会发生写新的数据和指令缓存,并与CPU核心上原有进程产生冲突,造成中断响应延迟,影响进程处理时间。为了解决问题,可以将中断(或进程)绑定到指定CPU核心上,从而提高中断响应(或进程)的处理速度。
相比使用内核的irqbalance(中断均衡)使网卡中断在所有核上进行调度,使用手动绑核将网卡中断绑定在固定的核,能有效改善网络情况。

四、JDK优化
在ARM架构下,推荐使用华为毕昇JDK来代替OpenJDK。毕昇JDK在ARM架构上进行了性能优化和稳定性增强,在ARM架构上更稳定,在大数据等场景下可以获得更好的性能。2023版开源软件目录清单推荐使用BishengJDK8u292和BishengJDK11.0.11版本,具体使用版本参考最新开源软件目录清单。

银行 · 2024-04-05
浏览200

回答者

三虎
系统运维工程师中国邮政储蓄银行
擅长领域: 服务器信创Linux

三虎 最近回答过的问题

回答状态

  • 发布时间:2024-04-05
  • 关注会员:5 人
  • 回答浏览:200
  • X社区推广