在单指令多路复用和并行化方面,AVX2和AVX512有什么不同?它们是相同的还是不同的?我刚刚看到AVX512中使用了double8,而AVX2使用了double4?
我使用PyOpenCL用C语言编写内核代码,不确定会有什么不同。
发布于 2019-12-03 05:08:13
AVX2是一个256位的向量指令集。你有256位寄存器,可以用几种方式解释(8个浮点数,4个双精度数,32个字节等)。AVX1只支持浮点运算,AVX2增加了256位整数运算。AVX-512是一组512位矢量指令。AVX只有2种口味,普通老式AVX和AVX2。AVX-512有many different flavors版本。您可能会发现Intel's Intrinsics Guide很有趣。
最大的区别是每条指令处理的操作数是原来的两倍。尽管如此,AVX-512中的某些指令可能会使某些特定的事情变得更优化(例如,指数近似)。
https://stackoverflow.com/questions/59146296
复制相似问题