|
本帖最后由 IntelProcessor 于 2010-8-6 20:06 编辑
与SSE指令集不同,AVX指令集可以直接作256bit向量寄存器,进行256bit位宽矢量处理,Intel这次加入AVX指令集的主要目的是增强处理器的计科学算能力,直接对抗日益猖獗的GPGPU,并暴露GPGPU先天的局限和不足。
AVX 全称 Advanced Vector Extensions,高级失量扩展指令集
1、AVX 指令集的扩充和加强:
(1)将原来的 128 位 XMM 寄存器扩充为 256 位的 YMM 寄存器,从而支持 256 位的 vector 计算。
(2)改进和加强原有的在 3 个 operands 指令的编码和语法,使之更灵活。
(3)增加一个全新的 VEX prefix,实现对原有的 prefix (escape / SIMD prefix)集成,从而消除了 escape / SIMD prefix。
(4)FMA 功能支持 IEEE-754 2008。
2、 实现 4 个 operands 通过 VEX prefix 可实现 4 个 operands,表示为 dest、src1、src2 以及 src3
dest、src1 以及 src2 可由 VEX.vvvv、ModRM.reg 以及 ModRM.r/m 来提供,src3 由 1 个字节的 immediate 来提供。
3、 实现不改变 desttination(目标)操作数
即结果不改写 dest 操作数。
4、多功能的 VEX prefix
(1)VEX 定义 128 和 256 版本
(2)VEX 集成 escape prefix(即 0F、0F38 以及 0F3A)
(3)VEX 集成 SIMD prefix(即 66、F3 以及 F2)
(4)VEX 集成 REX prefix |
评分
-
查看全部评分
|