前言:Opteron242和Xeon面对面
在我们前一次的测试里,大家已经领略了K8核心的桌面型处理器Athlon64(FX)的风采,它们的表现,给我们留下了深刻的印象。不过,对于一个处理器厂家来说,在中高端服务器、工作站市场站稳脚跟,显然是获取更多利润,打造品牌形象的上佳途径。AMD当然也清楚这一点,他们所推出的X86-64指令集及其执行者??Opteron就是为此而来。
近日,我们收到了双Opteron242平台和双Xeon平台整机各一套,在本文中,我们将和大家一起领略双处理器在专业图形工作站领域的双雄争霸战。
Opteron平台兵力配置分析
观看战局之前,还是让我们先来看看双方的兵力布置状况。
首先是AMD一方的处理器兵力状况:
处理器方面,AMD推出Opteron系列处理器,分为100、200和800三个系列,100系列只能在单处理器条件下运行,200系列则可支持双处理器,800系列可支持8处理器。
本次我们收到的样机则配备了两块1.6GHz的Opteron242处理器。在后面的硬件展示环节中将有详细的图片资料奉上。
芯片组方面,Opteron除了AMD自己的8000系列芯片组外,还获得了许多芯片组厂商的支援。
带宽的优势
除此之外,有关Opteron处理器,最引人注目的大概就是它区别于Intel Xeon的,异常灵活的内存接口形式了。
在Opteron系统中,与Xeon系统共享式内存结构所不同的一个特点是,各块Opteron处理器可以拥有自己的本地内存,他们共同组成一个节点(node)。各个节点内的处理器通过内置的内存控制器与节点内的内存交换数据。这样,在多处理器的情况下,系统的内存峰值带宽=节点数目×节点内部内存峰值带宽。如下图:
Opteron系统与Xeon系统共享式总线的对比
这样,对于一个2节点的Opteron242系统,假设每个节点内均使用DDR333内存组成双通道,那么整个系统的内存峰值带宽将为:2×(333×128/8)=2×5.3GB/s=10.6GB/s,随着节点数目的增多,带宽还将进一步增长。比起Xeon系统共享式内存结构内存带宽固定不变的情况,在多处理器的情况下存在较大的带宽优势。
以下,就是AMD自己使用SISoftsadra2003所测试的一组单Opteron、2×以及4×Opteron的内存带宽对比数据:
请注意上图中4Xeon系统测试得分与4Opteron846得分的悬殊对比,以及随处理器数目增多,Opteron系统分值的攀升状况。当然,由于该软件测试的是持续带宽,因此分值并不成2倍的比例增长。
两种不同的设计
不过,需要我们注意的是,虽然Opteron系统中各节点里的内存从物理上是从属于节点内部的。但与Xeon系统相同的是,系统中所有的Opteron处理器都可以通过连接各节点的Hypertransport总线访问到其它节点的内存。通过这种途径,可以做到所有的处理器共享系统全部的内存资源。既然如此,那么我们很自然地可以想到:每一个节点内部也不必都设置内存。
这样,就造成了Opteron体系中各个处理器访问本节点内存与访问其它内存时所需时间的不一致性;同时由于所有的内存为处理器所共享,就必须保证各个处理器中相关缓存的一致性。故此,人们把具备这种特性的多处理器系统形象地称为ccNUMA(Cache Coherence Non Uniform Memory Access)。
正是因为这种ccNUMA特性,就出现了两种不同的双Opteron主板设计。
第一种设计,是在每个节点内部都设置内存,这样的设计能够很好地发挥Opteron系统固有的带宽优势,充分利用了每一个处理器内部的内存控制器。上文中我们给出的结构图,以及AMD自己使用SISoftsadra2003所测试的内存带宽成绩,也是在这种设计的情况下得出的。
这种设计的代表有Tyan刚刚推出的Thunder K8W主板,如下图:
图为:完全发挥平台带宽威力的Thunder K8W主板
图中可见,4个内存插槽被分开布置到了两个CPU的附近,同时由处理器插槽引向内存插槽的数据线也清晰可见。
而另一种设计,则在某些节点内部不设置内存。这些节点内的处理器通过Hypertransport总线访问其它节点中的内存。如下图:
这种设计的代表有MSI微星科技的K8T Master?2 FAR(本次测试中,我们收到的样机就是使用这块主板):
图为:灵活设计的MSI K8T Master?2 FAR主板
图中可见,4个内存插槽是传统的排列形式,同时各个处理器到内存插槽的距离也差别较大,板上完全看不到2号处理器到内存插槽的数据连线。
这样做在内存存取延迟和内存带宽上会造成较大的性能损失,同时也使其中一个处理器的内存控制器不能发挥其应有的作用,从某种程度上说是一种不得已的设计。
但是纵观目前的主板市场,使用前一种方案设计的板子却是凤毛麟角,反而是后一种方案暂时大行其道。出现这种状况的原因是多方面的,一方面使用这种设计可以降低成本,并且,使用这种方案可以在单处理器版本主板的基础上稍作改进就可以推出双处理器版本,缩短了开发进度;另一方面更重要的因素是由于目前的Windows操作系统对于前一种设计的支持还不是很好,只有Windows2003 Server企业版以及仅发行了beta1版的WindowsXP64bit for AMD64才能对AMD64处理器提供ccNUMA特性的完美支持(当然在64位Linux平台上,这方面的支持是完备的)。在这种情况下,主板厂商们不得不退而求其次。
不过,瘦死的骆驼比马大,即便是使用第二种方案,K8大胆创新的内存体系仍然相比对手XEON具备一定的优势,这一点,在我们后面的测试中,将得到更好的体现。