Power7的一个重点是多路处理器,Power7实现了SMP的硬件一致性处理。一般而言,随着处理器数量的增多,处理器互联总线的带宽需求呈非线性的增长,受限于总线技术,一般的SMP系统在4路到8路左右就已经达到了饱和(x86的SMP机器都在这个范围左右),更大的系统就必须采用其它的拓扑结构了。
IBM Power 7 CPU:本地SMP连接(中上)和远程SMP连接(中下)
Power7通过三个方面的设计来达到32路SMP能力:巨大的带宽、特别的拓扑结构和特别的一致性协议。Power7的处理器间总线可以提供360GB/s的带宽。
Power7使用了一个两层的拓扑模型:4个处理器组成一个本地SMP组(需要7个本地I/O总线),然后8个SMP组之间两两直接互联(每个SMP组需要7个外部I/O总线),为了实现这个目标,Power7提供了两个总线:一个用于本地SMP,一个用于远程SMP。总线的位宽是120Byte。
此外为了支持这个拓扑结构,Power7的一致性协议混合了两种一致性消息的广播方法:一种是全局广播,一种是本地SMP组的猜测性广播。这个一致性协议定义了13种状态(Nehalem使用的MOESI是5种),并通过缓存线上额外的设置位,Power7最终实现了复杂的结构,在32路处理器、8核心、总共256个处理内核的SMP系统里,可以同时维持20000个缓存一致性操作。
本地组与远程组——Power7拓扑结构:32路SMP系统
显然,Power7打造了新的一代的优异处理器平台:8核、4线程、32MB缓存,以及32路256核1024线程的大型SMP机器,Power7是目前处理器设计的巅峰之作。
(完)