AMD四核9月10日发布 K10新品全面解析
● Barcelona新特性解析:堆栈操作与乱序执行
Intel最早的Pentium M处理器引入了一项名为“dedicated stack manager”(专注堆栈管理器)的新特性,正如其名字所暗示的一样,专注堆栈管理器专门处理所有的X86堆栈操作(例如push, pop, call, return等)。它将这些伐数据集中处理而无需其他执行单元参与,这尤其简化了CPU整数执行单元的工作,加快了整数执行单元的处理速度。
AMD在Barcelona中也引入了类似的技术,AMD称之为Sideband Stack Optimizer(边带堆栈优化器)。有了边带堆栈优化器,处理器中的伐指令不再需要经过3路编码,也不再由整数执行单元处理,这加快了堆栈的处理速度,也同时加快了整数执行单元的处理速度。
在Intel Core微构架中一个重要改进是OOOE乱序执行:当装载指令队列发生等待时,处理器可以将队列后方处于等待的指令优先装载并执行,而不是一直等待到堵塞结束。平均而言,约30%的指令会发生一定时间的堵塞,这一乱序执行模式的引入,使新构架CPU性能有了明显的提高。AMD的K8构架并不支持OOOE乱序执行指令,所以即使K8构架有优秀的内置内存控制器,也依然被对手的Core构架击败。正视这一技术上的落后,AMD在K8L构架的首款芯片Barcelona上及时改进为OOOE技术,这一改进必将为K8L构架的性能带来极大的提高。
Barcelona将可以乱序执行指令,同样也可以在前一指令尚未处理完成时,装载并用空载单元处理下一指令,即使这两条指令需要读取不同的内存地址。Barcelona拥有3个地址生成单元,可以完成3个寄存指令每周期,而Core构架每周期只能执行1次-K8L构架的寄存速度要比Core构架强大3倍。
K8L构架中加入了新的SSE4指令扩展:SSEEXTRQ/INSERTQ指令和MOVNTSD/MOVNTSS指令。前者可以将多条指令合并为一条指令执行,后者用来计算流量寄存指令。Intel也会将在稍候发布的Penryn处理器中加入。