产品评测:Sun SPARC Enterprise M9000解析

Sun公司的高端服务器Sun SPARC Enterprise M9000和在全球用户中有着广泛的使用率, 我们对该款产品的细节做了一些测试,为了便于理解,我们用Sun Fire E25000与其对比。

芯片:

让我们首先进行芯片对比:

需要仔细推敲的是内存结构的区别将如何影响服务器的性能水平。SPARC64 VI的芯片的L2高速缓存数量是UltraSPARC-IV+的三倍,但是UltraSPARC-IV+总的芯片高速缓存数目却是UltraSPARC-IV+的5.6倍。众所周知,诸如在线事务处理或者联机事务处理这样的工作负载很大程度上受UltraSPARC-IV+的附加L3高速缓冲存储器影响。

对多线程的关注:SPARC VI 64处理器的双线程不是将单核的吞吐量翻倍。其目的是将CPU核的等待时间最小化,并提高CPU核心的效率。一个关键信息是双线程分享了两个Translation Lookaside磁盘缓存。下面的数据就是在一个核心出现故障的情况下获得的,以下是一些更为详尽的数据。

当然这仅仅是芯片的对比,以下信息可以让我们了解更多M9000和E25000服务器的情况:

在这个表格中,我们对两款服务器的大容量有了更清晰的认识,但是并不能帮助我们评估性能。当前,我没有能力对这两款满负荷的服务器进行测试,因此我只能进行如下测试。关键是在每个系统上采用相同数量的CPU。

以下是被测试的硬件

M值

从性能方面来说,我们能看到的第一个度量被称作M值。我们的推测可以以这些值为基点。注意:下面的值是针对如上表所描述的四个主板的系统。

有意思的是CPU频率因数很接近这一值:2280/1800 = 1.26

我们得出结论:如果让现在的E25k升级为4-CMUs M9000, 速度就能加快1.33倍。

Java工作量

我们通过使用不同的100%Java(1.6)工作量来说明问题,这样可以更精确。

1. iGenCPU v3

2. iGenRAM v3 – Lotto simulation (Memory allocation and search) (记忆分配及搜索)

3. iGenBATCH v2 – (Oracle 10g batch using partionning, triggers, stored procedures and sequences)

4. iGenOLTP v4 – (Heavy-weight OLTP) 在线处理程序

下表中这些数值都是峰值,是通过建立完全稳定特性曲线得到的。提到的响应时间是平均值、峰值和毫秒值。

为试图比较因数M值1.33,如果E25k是1的话,看看能得出什么结果。

首先是吞吐量:

如下图:

吞吐量性能方面的注意

1. 可以看到,就纯CPU计算而言,M9000比 E25000强大2.4倍。

2. M9000的记忆分配和获取时间使得吞吐量增大了1.7倍。

3.只有一个值低于M值:在线处理程序(OLTP)。似乎总的核缓存减少对这一工作负荷产生了很大影响。

下表是最高吞吐时的平均反应时。(仍然以E25k为基数1)。

下面是图表:

反应时间:

1. CPU & RAM的微软标准显示出反应时间方面获得的巨大进步。M9000的E25k在最大输贯量时能够接收400ms。
2,凭借大量基准和CPU集中数据库管理系统存储程序,我们得到0.69这一因数。

令人失望的是当吞吐量达到峰值时,M9000数据库管理系统的在线处理程序会增加反应时间。希望新版Solaris 和数据库管理系统Oracle 10g能够对此有所改进。