谈IBM UNIX服务器的技术优势(2) Sun和Compaq公司的具有MBB结构的服务器里都有类似的crossbar switch结构,当然都存在相同的数据访问延迟的缺陷:点对点的连接必须建立,同时这种连接的建立是竞争的。 Sun公司宣称其服务器的扩展性是线性的,即服务器的性能随着CPU个数的增加呈线性增长。它是用SPECintRate和SPECjbb2000这两个基准测试值来证明的。我们需要指出的是:这两种测试方法只是基于CPU本身,并没有共享数据的访问和网络及硬盘I/O的发生。很显然,这与实际情况是不相符的。 我们谈服务器的性能是整体的去看。有很多可以整体评价服务器性能的基准测试,例如:TPC/C、Oracle ASB11i、Peoplesoft、SAP、Baan、JDEdwards等。这些测试方法都具有数据库访问、模拟客户的实际应用和很大的I/O访问量等特点。 4. 以POWER4为芯片的IBM UNIX服务器的设计 IBM UNIX(p系列)服务器的设计思想是共享式的,即所有CPU可以同等的看到所有的内存和I/O的连接方式:一种全新的为数据/指令流提供足够的高速通路的体系结构。 p系列服务器CPU数量的增加是一个成比例渐进的过程。目前p690上的最大CPU个数是32路。从p690"以少胜多"的实例来看,服务器CPU数量的多少并不真正代表其处理能力的高低。P690(32路CPU)胜过Superdome(64路CPU)就是一个有力的证明。 POWER4和以POWER4为芯片的服务器在设计上有两个重要点: · 消除对数据传送的约束 · 数据传送能力是随着CPU性能的增长而增长 下面将比较详细的做一介绍: (1) 在POWER4芯片上设计了较大的缓冲区。一个POWER4芯片(chip)上有两个核心处理器,每个核心处理器有一个L1缓冲器(32KB数据和64KB指令),并且每个芯片上有一个共享的L2缓冲器(1.5MB)。这个L2缓冲器的时钟频率是核心处理器的一半。每个 L2缓冲器有三个32字节宽的总线与两个核心处理器相连,用于向两个核心处理器传送指令和数据。另外还有三条8字节宽的总线用于从两个核心处理器回传数据给L2缓冲器。POWER4创造了第一个消除了控制信号和数据传送冲突的CPU结构。 POWER4处理器有一个L3缓冲器控制器,它是与32MB大小的L3缓冲器的接口。在业界有一种说法:任何I/O都是不好的,即CPU运行时所需的数据不在内存里,需要从外设中读入。最理想的状态是处理器运行时所需要的指令/数据全都满足,其次是指令/数据在L1缓冲器中,再其次是在L2缓冲器中,再其次是在L3缓冲器中,最差的情况是在内存里。p系列服务器上的缓冲区总数量是Sun服务器的四倍,是HP服务器的十五倍。 (2) 在POWER4的设计中存在一个称作分布式交换器(distributed switch)的连接机制。它提供在一个MCM(Multi-Chip Module)上的处理器之间的点对点的连接,也用于在不同的MCM上的处理器之间的点对点的连接。这个分布式交换器的时钟频率是CPU的时钟频率的一半。例如,如果是1.3GHz POWER4的处理器,则分布式交换器提供16字节宽、时钟是650MHz的点对点总线连接。 IBM目前提供给UNIX市场的服务器,真正实现了CPU处理能力和服务器处理能力的线性增长。 5. 关于IBM UNIX服务器上的一些"限制" IBM在其UNIX服务器(p系列)的设计上没有采用MBB的设计结构,所以在p系列机器上不支持物理分区。IBM沿用了大主机S390上的逻辑分区(LPAR)设计思想,即设计一个hypervisor(系统管理程序),它能看到所有的真实资源(CPU、内存和I/O卡),并且通过一个控制台(HMC)来管理逻辑分区。通过HMC将上述提到的资源定义到不同的逻辑分区中去,每个逻辑分区所需的最小资源是一个CPU、1GB内存和一个PCI插槽。 IBM没用象其它厂商那样采用crossbar switch技术做CPU之间的连接。在p系列服务器上所有的CPU能够看到所有的内存和I/O资源,它不允许不同主频的CPU共存在同一台机器内。而MBB结构的服务器则允许这样做,其代价就是crossbar switch工作在相同的带宽上(MBB之间的连接带宽恒定),所以高主频CPU带来的服务器整体性能提升是有限的。