端口改进介绍(二)
由于这样的设计,使得vector单元的峰值运算性能相比之前提升了2倍。总之在CPU核心数量相同的情况下,使用FMA命令时,Haswell相对于Sandy Bridge其CPU核心浮点运算和SIMD运算性能将可获得2倍提升。相对于AMD的Bulldozer架构同样也达到了2倍。另外还加入了AVX 2指令以及256-bit位宽整数指令。
新的指令
指令集的比较
峰值性能
有意思的是,AMD准备在着重浮点运算的处理载荷中充分发挥GPU Core的作用,不过Intel的CPU Core在浮点SIMD方面的性能也在急剧提升。因此在CPU和GPU的平衡方面,Intel主要发挥CPU的作用,而AMD则侧重于GPU。另外就是在内置了2个256-bit SIMD单元之后,Haswell之后的架构对Larrabee/Knights系列512-bit位宽SIMD指令的物理支持就很容易实现。对此Ronak Singhal先生将其称为「长期的的理想」。
Intel自Merom以后,前端解码最多可执行4条指令,但是整数执行单元最多只能支持3条。而Haswell在指令解码和整数运行执行管线数量的峰值带宽则保持了一致。这个整数运算单位在通过端口0和端口1向vector单元发送指令时就可以执行整数运算。端口7为存储地址生成专用端口,然后通过端口2和端口3来执行。
Haswell中各种缓存和入口容量也获得了提升。比如out-of order window数量从Sandy Bridge的168个增加至192个。同时载入/存储控制单元数量也获得了提升,scheduler Entries数量也同样得到了提升。AVX的SIMD物理寄存器由144个提升至168个,整数寄存器从160个增加至168个。而Allocation Queue也提升至56线程。