◇ 指令集提升 更新多媒体指令集加入
在Sandy Bridge处理器发布之初,我们就已经介绍过AVX指令集的加入,AVX是在之前的128bit扩展到和256bit的SIMD(Single Instruction, Multiple Data)。而Sandy Bridge的SIMD演算单元扩展到256bits的同时数据传输也获得了提升,所以从理论上看CPU内核浮点运算性能提升到了2倍。
AVX指令集的特点:
>>从128bit扩展到256bit的SIMD运算单元;
>>增强的数据重排,单个操作可同时处理8个32-bit共256bit数据
>>单条指令支持3操作数和4操作数
>>支持弹性的访存地址不对齐
>>AVX指令支持VEX前缀
AVX指令集
这些运算逻辑上的技术细节让人头大,落实到应用上,AVX主要针对密集型浮点运算,3D游戏、CAD/CAM、数字内容创建等应用是这类计算的代表。Intel宣称,Sandy Bridge的AVX进行矩阵计算的时候将比SSE技术快90%!
核心面积的精简正是AVX指令(SNB最主要革新之一)集得以实现并保证良好性能的关键所在。以最小的核心面积代价,Intel将所有SIMD单元都转向了256-bit。
AVX支持256-bit操作数,相当消耗晶体管与核心面积,而RPF的使用加大了乱序执行缓冲,能够很好地满足更高吞吐量的浮点引擎。
SNB允许256-bit AVX指令借用128-bit的整数SIMD数据路径,这就使用最小的核心面积实现了双倍的浮点吞吐量,每个时钟可以进行两个256-bit AVX操作。另外执行硬件和路径的上位128-bit是受电源栅极(Power Gate)控制的,标准128-bit SSE操作不因为256-bit扩展增加功耗。