GCC 9编译器将在未来几周内发布,在众多新的和改进的特性中,有一个选项被设计用来帮助生成二进制文件,这些二进制文件对于实时补丁来说是友好的。在 Linux 5.2内核中,在构建支持实时补丁的内核时,默认情况下将使用这个选项,这可能会导致性能有一些轻微的速度下降。
GCC 9引入了-flive-patching选项,该选项控制使用哪些优化来确保二进制文件不会出现错误(或产生不安全的行为),如果二进制文件可能会看到针对正在运行的内核应用安全更新的实时补丁,而不需要重新引导。这对于kGraft、Ksplice和Kpatch等帮助确保GCC编译器不会捏造它们的实时补丁工作是相关的。
GCC 9.1.0将在4月底或5月初发布,Linux 5.2内核将在默认情况下启用-flive-patch,当它由受支持的编译器构建时,当启用CONFIG_LIVEPATCH时,大多数Linux发行版内核都默认启用-flive-patch。
SUSE的Miroslav Benes在Linux 5.2合并窗口之前 添加 了当前位于livepatching-next树中的更改,确实注意到在特定情况下,由于此实时修补选项控制编译器的优化,可能会出现性能命中启发式。
Miroslav指出:“该选项对三种不同的英特尔机器的性能影响进行了测量——两个更大的NUMA盒子和一个更小的UMA盒子。选择内核密集型(IO、调度、网络)基准测试,并从NAS并行基准测试中选择一组HPC工作负载。测试在使用openSUSE Leap 15.0用户空间的上游内核5.0-rc8上进行。大多数测试不受影响。唯一重要的例外是调度器部分,它的性能下降了1-3%。”
Linux公社的RSS地址 : https://www.linuxidc.com/rssFeed.aspx
本文永久更新链接地址: https://www.linuxidc.com/Linux/2019-04/158026.htm
以上所述就是小编给大家介绍的《Linux 5.2启用GCC 9的实时补丁选项,在某些情况下影响性能》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
数据结构(C语言版)
严蔚敏、吴伟民 / 清华大学出版社 / 2012-5 / 29.00元
《数据结构》(C语言版)是为“数据结构”课程编写的教材,也可作为学习数据结构及其算法的C程序设计的参数教材。 本书的前半部分从抽象数据类型的角度讨论各种基本类型的数据结构及其应用;后半部分主要讨论查找和排序的各种实现方法及其综合分析比较。其内容和章节编排1992年4月出版的《数据结构》(第二版)基本一致,但在本书中更突出了抽象数据类型的概念。全书采用类C语言作为数据结构和算法的描述语言。 ......一起来看看 《数据结构(C语言版)》 这本书的介绍吧!