openSUSE的Spectre缓解方法导致性能下降

openSUSE默认使用IBRS作为其Spectre Variant 2缓解方法而不是Retpolines,这是该发行版与其他 Linux 发行版相比开箱即用性能较慢的原因之一。

这个opensuse-factory邮件列表 引用了联想笔记本电脑在使用openSUSE时“巨大的单核性能损失”。围绕Spectre Variant 2 缓解措施的单线程性能损失约21%,这本身并不令人惊讶,因为我们已经多次说明了Spectre/Meltdown缓解的性能成本。

创新互联-专业网站定制、快速模板网站建设、高性价比隆林网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式隆林网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖隆林地区。费用合理售后完善,十余年实体公司更值得信赖。

openSUSE的Spectre缓解方法导致性能下降

openSUSE的内核正在使用IBRS(间接分支限制投机)和最新的英特尔CPU微代码映像,而大多数Linux发行版依赖于Retpolines作为返回trampolines。与Retpolines相比,IBRS缓解技术可能会导致更多的性能损失,据报道,与更新的Intel CPU微代码相匹配时,由于更严格的推测行为,会产生更大的性能损失。

根据邮件列表讨论,切换到Retpolines以查找有问题的工作负载 可以恢复性能 。

希望使用非默认方法的openSUSE用户可以使用 spectre_v2=retpoline 来选择它,这是一个通用内核 命令 行参数,与大多数其他Linux发行版内核的行为相匹配。

至于openSUSE更改他们的默认值,至少从之前的邮件列表讨论来看,他们的内核工程师似乎没有兴趣更改Spectre的缓解默认值,但只是将英特尔的糟糕表现归咎于他们的问题。

有些人还建议openSUSE安装程序在其安装程序中选择一个切换,以便通知用户安全性与性能偏好,从而更好地提供合理/明智的默认设置,但到目前为止,我们还没有看到采取任何措施来实现这一点。虽然考虑到一些openSUSE的保守默认值与大多数其他Linux发行版相比确实存在性能影响。

以前Retpolines使用的障碍需要Retpolines编译器支持,但这种支持现在已经有一段时间了。据报道,Skylake过去曾报道过Retpolines问题,但这些问题似乎也得到了解决。


本文标题:openSUSE的Spectre缓解方法导致性能下降
标题网址:http://azwzsj.com/article/iesshg.html