和风网标志

什么是 X86-64-v3?

日期:

您可能听过 Linux 专家讨论 x86-64-v3。重新编译 Linux 代码来使用它可以带来好处吗?要回答这个问题,您可能需要知道 x86-64-v3 是什么,并且 [Gary 解释]……好吧…… 解释它 在最近的一段视频中。

如果您想消化文本,RedHat 最近有一篇关于他们的实验的文章 使用 RHEL10 中的指令集。从该文章中,您可以看到大多数新指令都支持向量和位操作的一些增强功能。它还允许更灵活的指令,将其结果保留在显式目标寄存器中,而不是操作数寄存器之一。

当然,除非编译器支持,否则这些对于高级代码来说都不重要。但是,gcc 版本 12 在使用 -O2 优化标志时将自动矢量化代码。

当然有一个障碍,那就是代码与旧版 CPU 不兼容。几岁?自 2013 年起,Intel 就在 Haswell CPU 中支持这些指令。尽管一些 Atom CPU 自 3 年以来已经有了 v2021,但后来的一些 Intel Atom 并不完全支持它。 AMD 在 2015 年加入了这个聚会。有一套更新的指令,x86-64-v4。然而,这仍然太新,因此包括 RedHat 在内的大多数人都计划暂时支持 v3。你可以找到 简洁的汇总表 在维基百科上。

因此,除了 Atom 处理器之外,您必须拥有一些旧硬件才能没有 v3 指令。其中一些指令非常普遍,因此在运行时切换似乎不太可行。

我们想知道较旧的处理器是否会触发这些指令的非法指令中断。如果是这样,您可以添加模拟版本,就像旧 CPU 用来模拟数学协处理器(如果没有)一样。

请记住,有关放弃 x86-64-v3 之前版本的争论并不意味着 Linux 本身会关心。这就是发行版的编译方式。虽然自己编译所有内容是可能的,但令人畏惧,但毫无疑问,只要 Linux 内核允许,就会有发行版选择维持对旧 CPU 的支持。

英特尔希望放弃 较旧的非 64 位硬件 来自CPU。如果您想提高 64 位汇编语言技能,请尝试 图形用户界面.

[嵌入的内容]

(标题图片来自维基百科)

现货图片

最新情报

现货图片