Intel用了整整两个小时的时间介绍了其下一代处理器架构Sandy Bridge以及Sandy Bridge上的新指令集:AVX(Advanced Vector Extensions,高级矢量扩展)。
什么是Sandy Bridge架构?
Sandy Bridge是继45nm Nehalem、32nm Westmere之后的又一个新时代,仍然采用32nm工艺制造,主打四核心,但微架构上将进行革新,比如直接集成图形核心,还有北桥模块、8MB三级缓存和双通道DDR3-1600内存控制器等等,并且会在保持适当功耗的基础上大幅提升主频。
【编辑推荐】
#p#
微架构解析
所谓的矢量,就是带有方向的标量……在数学上的表现就是多个参数的代数式,也就是多个标量的集合。为了更好地表示多个标量,AVX高级适量扩展将原有的128位浮点指令扩展到了256位,可以同时处理8个32位(4字节)的浮点数或者一个256位的数:
AVX指令集是和Sandy Bridge微架构紧密结合的,因此,微架构的浮点寄存器也要从128位扩展到256位,此外,Load单元也要适应一次载入256位的能力,Sandy Bridge没有直接扩展原有Load单元的位宽,而是通过增加了一个Load单元来达到256bit Load的能力,如下图所示:
可以看到,在0、1、5端口都增加了256位宽度AVX指令执行单元。
新的3、4操作数指令格式是非常重要的革新,希望笔者还有机会对它进行进一步的解释。
【编辑推荐】
#p#
AVX指令集:相关软件工具预介绍
最后,Intel提到了,由于128位SSE指令与256位AVX指令位宽不同,在混合编码的时候,指令切换需要进行额外的寄存器高位保留操作,因此混用SSE/AVX将会导致性能损失。应尽量向新指令集进行迁移。
【编辑推荐】
#p#
调优与性能提升
最后,Intel给出了在如前所述的4种常见运算下的AVX指令集加速比(AVX vs SSE over Sandy Bridge)。
最后的最后:下一代增强指令集FMA介绍,FMA是同时进行一个乘法和一个加法的运算,在图形操作上很是常见。
【编辑推荐】