我很困惑,SIMD和SSE,SSE2,SSE3,AVX有什么区别?
根据我的知识和研究,SIMD是允许一条指令在多个数据上运行的体系结构,SSE、AVX是实现SIMD体系结构的指令集。
每种架构的矢量大小是否也有差异,比如SSE有128位,AVX有256位?如果基本的SIMD架构是相同的(我认为),那么不同的ISAs如何有不同的向量大小?
我不知道这是不是真的,有人能给我详细解释一下到底发生了什么吗?
发布于 2015-05-17 01:28:32
维基百科页面(http://en.m.wikipedia.org/wiki/SIMD)很好地解释了SIMD,以及实现它的指令集。
单指令多数据(SIMD)是弗林分类法中的一类并行计算机。它描述具有多个处理元素的计算机,这些处理元素同时对多个数据点执行相同的操作。
SIMD是概念,SSE/AVX是概念的实现。所有SIMD指令集只是CPU可以在多个数据点上执行的一组指令。只要CPU支持执行指令,那么无论数据大小如何,多个SIMD指令集共存是可行的。
https://stackoverflow.com/questions/30282271
复制相似问题