翻阅特征文档,不清楚它是否在A76核心发布后进行了更新,以利用它包含的更宽的SIMD (2x128b与之前的128b)。我希望开发团队的某人(或专家用户)能帮助澄清这一点。
发布于 2020-12-07 22:10:17
我并不特别熟悉Eigen,但一般来说,人们不需要对SIMD代码做太多工作就可以利用不同数量的硬件执行单元-特别是当CPU支持乱序执行时,当有更多的执行单元时,它们将获得更多可以并行执行的指令。
如果使用编译器编译例如SIMD内部函数,如果被告知专门针对该核心进行优化(并且如果编译器知道该核心的调度特征),则编译器可能能够调整代码的精确调度。手写汇编代码也是如此-它可以针对不同内核的特征进行一些调整和调整,但在大多数情况下,它不会有太大的变化;更有能力的内核会更快地执行它。
(主要影响代码编写的总体情况的因素通常是指令集中可用寄存器的数量,但这不会随着具有更多执行单元的硬件实现而改变。)
https://stackoverflow.com/questions/63707944
复制相似问题