附加指令集
前面提到,为了提升处理器的性能,芯片制造商开始增加一些复杂指令,这些指令可以做向量计算或者执行一些以前通常在应用层代码中实现的算法。
SIMD和向量指令可以通过并行计算多个标量值的方式对标量运算实现并行处理。因此,我们必须可以一次加载多个浮点数到两组SIMD寄存器,之后一次性地对所有加载的数据进行操作。Intel处理器在一系列的扩展指令集中引入了SIMD指令,即以下几种:
1. Streaming SIME Extension (SSE): 采用128位寄存器,版本从SSE, SSE2到SSE4
2. Advanced Vector Extension (AVX): 采用256位寄存器,有AVX2和AVX-512(使用512位寄存器)等版本
还有一些更专门化的Intel扩展指令集,比如:
3. 高级加密标准新指令(AES-NI):这个指令集实现了AES加密的编码标准。
4. 32位冗余校验(CRC): 该指令集实现了CRC32校验码的计算。
5. SSE 4.2: 这个SSE扩展指令集用SIMD寄存器实现了基本的字符串操作。
网友评论