使用SVE的程序可以自动适应更广泛的SVE寄存器集吗?

问题描述 投票:0回答:1

如果我编写一个使用SVE指令的程序,并在支持256位宽度SVE寄存器集的ARM平台上编译它,然后将可执行文件复制到支持512位宽度SVE寄存器集的ARM平台,程序会自动适应使用512位运算而不是256位运算?

如果可以的话,它是如何工作的。

arm simd sve
1个回答
0
投票

SVE 提供的工具允许开发人员编写与向量长度无关的代码。例如,您可以在运行时查询向量长度,并使用它来按 SIMD 宽度(而不是例如)增加循环计数器。假设增加 4。

这不是一个神奇的解决方案,开发人员需要编写与向量长度不可知风格兼容的代码,否则它将无法工作。绝对可以编写仅适用于单个向量长度的 SVE 代码(如果您知道向量长度,这样做可能会更有效)。

© www.soinside.com 2019 - 2024. All rights reserved.