泡泡网CPU频道 PCPOP首页      /      CPU     /      评测    /    正文

K8神威终于显露!纯64位应用全球首测

    我们都知道,X86指令集本身属于一种复杂指令集(CISC)。长期以来,使用X86指令集的处理器架构一直沿用寄存器结构。相比那些使用精简指令集(RISC)的处理器架构来说,由于程序可见的寄存器数量较少,因此造成传输延迟,性能以及流水线工作效率相对落后,从而给X86架构处理器的表现造成了影响。同时程序和编译器的优化难度也较大。

    虽然近代的X86处理器中都增加了许多程序不可见的内部寄存器,并通过寄存器换名(Register Rename)技术变相地增大通用寄存器的数量,来弥补这一不足。然而这种措施由于只能通过处理器的硬件控制来实施,程序员无法根据需要来,灵活控制实际的寄存器使用状况,显然不如直接增加可见的通用寄存器来的有效。

    而K8针对上述问题作出了改良。处理器在64位状态下工作时,增加了大量的程序员可见寄存器以供编程者使用,如下图:

  X86-64的寄存器扩展(点击察看大图)

    可以说,这些额外增加的寄存器(我们姑且称之为“寄存器扩展“吧),才是真正能为桌面用户带来的好处之所在!

    不过,尽管如此,我们也只能在K8的64位模式下,才能全部用到这些多出来的寄存器扩展资源(紫色部分的寄存器)。因为为了兼容以往的X86指令,K8所用的X86-64指令集将其所支持的指令分成了如下表所示的数个部分:

    如上表所见,前面我们所说到的令人激动的寄存器扩展功能,并不是“即插即用“的。它需要我们将操作系统向64位转换,同时重新按64位的编程规范编译应用程序。在其它模式下,我们根本无法享受到这些好处。

0人已赞

关注我们

泡泡网

手机扫码关注