AVX和浮点之间有什么关系,为什么AVX用于FP计算?

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

我最近正在研究FP和AVX以及维基百科(https://en.wikipedia.org/wiki/Advanced_Vector_Extensions#Applications)我读到AVX用于FP计算。我无法弄清楚为什么并行环境FP是进程。此形式的https://forums.aida64.com/topic/1629-real-world-benefit-of-fpu-test/ AIDA管理员告诉FPU使用AVX等。

x86 avx avx2 fpu
2个回答
4
投票

我只是想知道天气AVX有助于单个FP操作,如添加简单的3.5到1.5。

是的,AVX对标量数学也很有用,因为它为您提供了3操作数和非破坏性操作。例如

vaddsd xmm1, xmm0, [b]

3.5 + 1.5结果放入xmm1而不破坏xmm0中的值,不像

addsd xmm0, [b]

如果您告诉他们允许他们这样做,编译器会使用AVX而不是SSE。 (gcc -march=haswellgcc -march=znver1,或其他什么。)


1
投票

AVX是CPU的SIMD扩展,它提供了在一条指令中处理8 x单精度或4 x双精度运算的功能。对于您正在均匀处理数据阵列的应用程序,因此使用AVX编译使用单个(标量)FPU可以提高4倍或8倍的吞吐量。

另见:FMA

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.