优点
文件服务器性能获得三倍提升
数据库性能提升约20%
缺点
无
【IT168评测中心】大概在两个月前,我们发布了一篇题为《延续经典之作 惠普DL385 G5服务器测试》的文章。在这篇测试中,我们对于惠普ProLiant DL385 G5服务器的性能进行了较为全面的测试。不过被测服务器并没有提供阵列卡的专用电池,所以在多项测试中它的成绩均不甚理想。这成为了当时我们测试所留下的一大遗憾。随后,经过我们与惠普方面的继续沟通,惠普已经补送来了HP Smart Arroy P400阵列卡专用电池。如此一来,我们可以更为全面的了解到这款服务器的实际性能。
装备电池之后的阵列卡
在之前的测试中,由于送测服务器所配备的阵列卡并没有提供电池,多项测试成绩偏低,不能够反映惠普ProLiant DL385 G5服务器的实际水平。因此我们又尝试联系惠普方面提供电池以便进一步的测试。经过数日的等待,阵列卡标配的电池终于到达IT168评测中心。
在增加了电池之后,我们可以明显的发现HP Smart Arroy P400阵列卡专用的Array Configuration Utility软件(版本号为8.0.14.0)增加了一些新的选项。
首先,我们在Smart Array P400 in Slot 1的选项下可以调整的内容更多了。除了原有的Expand Priority与Rebuild Priority两个优先选项之外,增加了对于读写方式的设置。这里,提供给用户5种选择模式(而在无电池的情况下,默认只能使用最后的100% read,0% write模式)。在这些选项中,为了保持读写性能的平衡性,我们在测试中选择了第三项——50% read,50% write模式。
除了上面的读写比例设置之外,软件还提供了用户对于RAID模式与条带大小的选择。RAID模式中,只有RAID 0和RAID 5两种模式,条带设置则提供了从8KB到256KB各种模式的选择。由于被测服务器使用了3块万转72GB SAS硬盘,我们这里选择了RAID 5模式获得非常好的的磁盘性能和稳定性。在条带的选择上,使用了默认的64KB,没有进行过多的设置。
最终我们来看看经过设置之后的磁盘阵列模式。其中,三块万转72GB SAS硬盘组成了RAID 5阵列,磁盘自动缓存写入设置为开启,读写比例各设置为50%,条带大小设置为64KB。接下来,我们将使用这种设置重新对惠普ProLiant DL385 G5服务器的性能进行测试,对于之前无阵列卡电池的情况,看看两者在性能方面究竟会有多大的提升。
ScienceMark v2.0 Membench
ScienceMark v2.0是一款用于测试系统特别是处理器在科学计算应用中的性能的软件,MemBenchmark是其中针对处理器缓存、系统内存而设计的功能模块,它可以测试系统内存带宽、L1 Cache延迟、L2 Cache延迟和系统内存延迟,另外还可以测试不同指令集的性能差异。
SiSoftware Sandra Pro Home 2008
SiSoftware Sandra是一款可运行在32bit和64bit Windows操作系统上的分析软件,这款软件可以对于系统进行方便、快捷的基准测试,还可以用于查看系统的软件、硬件等信息。今年该软件推出了2007版,该版本新增了4项基准测试,包括Power Management Efficiency、Memory Latency、Physical Disks和CD-ROM and DVD这四个项目。另外,它还对于原有的几个基准测试模块进行升级,比如在Arithmetic benchmarks中增加了对SSE3 & SSE4 SSE4的支持,在Multi-Media benchmark中增加了对于SSE4的支持,另外还升级了File System benchmark和Removable Storage benchmark两个子项目。对于新的硬件的支持当然也是该软件每次升级的重要内容之一。SiSoftware Sandra所有的基准测试都针对SMP和SMT进行了优化,最高可支持32/64路平台,这也是我们选择这款软件的原因之一。
IOMeter 2006.07.27
IOMeter是一款功能非常强大的IO测试软件,它除了可以在本机运行测试本机的IO(磁盘)性能之外,还提供了模拟网络应用的能力。在这次的测试中,我们仅仅让它在本机运行测试服务器的磁盘性能。为了全面测试被测服务器的IO性能,我们分别选择了不同的测试脚本。
Max_IO(read):文件尺寸为512B,100%读取操作,随机率为0%,用于检测磁盘系统的最大读取操作IO处理能力
Max_IO(write):文件尺寸为512B,0%读取操作,随机率为0%,用于检测磁盘系统的最大写入操作IO处理能力
Max_throughput(read):文件尺寸为64KB,100%读取操作,随机率为0%,用于检测磁盘系统的最大读取吞吐量
Max_throughput(write):文件尺寸为64KB,0%读取操作,随机率为0%,用于检测磁盘系统的最大写入吞吐量
NetBench v7.03
NetBench是针对文件服务器的性能测试软件,影响NetBench性能的主要是服务器的磁盘子系统,服务器磁盘控制器、条带大小、读写缓存、硬盘类型、组建磁盘阵列模式、内存容量、网络拓朴结构等都会对测试结果有明显的影响。我们在被测服务器上设立了文件服务器,NetBench通过网络实验室中60个客户端来模拟网络中的PC向文件服务器所发出的文件传输请求,文件服务器则将存储在磁盘上的文件数据发送给相应的客户端。在测试过程中,客户端会以每四台一组的步进依次增加并且向服务器发送文件传输请求,测试结束后控制台收集数据并绘制出服务器的数据传输变化曲线。
WebBench v5.0
WebBench是针对服务器作为Web Server时的性能进行测试,我们在被测服务器上安装了IIS6.0组件,以提供测试所需的Web服务。在测试中我们开启了网络实验室中的56台客户端,分别使用了WebBench 5.0内置的动态CGI以及静态页面脚本对服务器进行了测试。
静态测试是由客户端读取预先放置在服务器Web Server下的Web页面(wbtree),这项测试主要考察的是服务器磁盘系统以及网络连接性能。我们使用了实验室中的56台客户端,配合Static_mt.tst多线程静态脚本测试向被测服务器发送请求。
动态测试偏重于对服务器CPU子系统的性能测试,它对于Web服务器提供了足够的负载。我们将一个C语言编写的CGI源文件Simcigi.c编译为Simcgi.exe,并将其作为动态测试中的CGI脚本。在测试过程中,每台安装了WebBench客户端软件的PC,会在300秒的时间内持续向服务器发送CGI请求,而控制台会纪录并汇总服务器所响应CGI请求的数据。CGI测试的成绩高低,主要取决于服务器处理器子系统性能的优劣。处理器子系统包括CPU、内存以及内存控制器,CPU频率、缓存以及内存容量大小和内存带宽,都会影响该项成绩。
Benchmarkfactory 4.6
大部分的服务器应用都同数据库有着密切的联系,因此我们今年开始着手在在服务器测试中加入对于数据库性能的测试。我们选择了Benchmark Factory 4.6软件和Microsoft SQL2005来测试不同的硬件平台在数据库应用中的表现。
我们选择了BF内置的标准测试脚本AS3AP,这项测试可用于对于ANSI结构化查询语言(SQL)关系型数据库进行测试,它可用于测试DBMS(单用户微机数据库管理系统),也可用于测试高性能并行或者分布式数据库。
在下面的图表中,“无电池”情况意味着使用的是100% read,0% write的读写方式,而“有电池”情况则意味着使用的是50% read,50% write的读写方式。
ScienceMark Membench | ||
厂商 | 惠普 | 惠普 |
产品型号 | ProLiant DL385 G5 (无电池) | ProLiant DL385 G5 (有电池) |
内存技术参数 | 1GB ECC DDR2 667 SDRAM *4 | 1GB ECC DDR2 667 SDRAM *4 |
L1带宽 | 19441.24 | 38915.88 |
L2带宽 | 6098.47 | 12145.17 |
内存带宽(MB/s) | 5965.63 | 5938.11 |
L1 Cache Latency(ns) | ||
32 Bytes Stride | 1.43 | 1.43 |
L2 Cache Latency(ns) | ||
4 Bytes Stride | 1.43 | 1.43 |
16 Bytes Stride | 1.43 | 1.43 |
64 Bytes Stride | 4.29 | 4.29 |
256 Bytes Stride | 7.14 | 7.14 |
512 Bytes Stride | 7.14 | 7.14 |
Memory Latency(ns) | ||
4 Bytes Stride | 1.43 | 1.43 |
16 Bytes Stride | 5.71 | 5.71 |
64 Bytes Stride | 20.95 | 20.00 |
256 Bytes Stride | 63.33 | 58.09 |
512 Bytes Stride | 70.95 | 71.90 |
Algorithm Bandwidth(MB/s) | ||
Compiler | 2301.68 | 2317.12 |
REP MOVSD | 2334.31 | 2331.59 |
ALU Reg Copy | 2032.40 | 2052.14 |
MMX Reg Copy | 2348.83 | 2374.14 |
MMX Reg 3dNow | 5802.03 | 5657.54 |
MMX Reg SSE | 5795.90 | 5752.54 |
SSE PAlign | 4974.71 | 4891.67 |
SSE PAlign SSE | 5965.63 | 5934.55 |
SSE2 PAlign | 4971.28 | 4885.88 |
SSE2 PAlign SSE | 5963.81 | 5938.11 |
MMX Block 4kb | 4286.75 | 4194.68 |
MMX Block 16kb | 4637.53 | 4507.10 |
SSE Block 4kb | 4189.41 | 4098.79 |
SSE Block 16kb | 3612.11 | 3456.26 |
ScienceMark是一款用于测试系统特别是处理器在科学计算应用中的性能的软件,可以体现处理器整数运算和浮点处理能力。但是在服务器测试中,我们更针对的是它在32位系统下服务器环境中的读写延时和对内存的带宽及CPU与内存控制器之间的速度等等进行测试。
从对比的测试结果来看,在增加了阵列卡的电池之后,由于磁盘的读写比例可以自动调整,在L1和L2的带宽测试方面性能得到了大幅度提升,测试结果比之前高出了一倍。而在针对内存的测试选项中,两者的结果差异不大,互有胜负,成绩基本一致,微小的差异可以用测试误差来解释。
SiSoftware Sandra Pro Home 2008 | ||
Processor Arithmetic Benchmark | ||
Dhrystone ALU | 31247 MIPS | 31769 MIPS |
Whetstone iSSE3 | 26650 MFLOPS | 27130 MFLOPS |
Processor Multi-Media Benchmark | ||
Multi-Media Int x4 aEMMX/aSSE | 77889 iit/s | 79795 iit/s |
Multi-Media Float x4 iSSE2 | 103237 fit/s | 104978 fit/s |
Memory Bandwidth Benchmark | ||
Int Buff'd iSSE2 Memory Bandwidth | 5067 MB/s | 5014 MB/s |
Float Buff'd iSSE2 Memory Bandwidth | 5073 MB/s | 5018 MB/s |
Cache and Memory Benchmark | ||
Cache/Memory Bandwidth | 32542 MB/s | 32109 MB/s |
.NET Arithmetic | ||
Dhrystone .NET | 5881 .netMIPS | 6547 .netMIPS |
Whetstone .NET | 16901 .netMFLOPS | 17211 .netMFLOPS |
.NET Multi-Media | ||
Multi-Media Int x1 .NET | 35687 .netiit/s | 36120 .netiit/s |
Multi-Media Float x1 .NET | 7372 .netfit/s | 7703 .netfit/s |
接下来使用的测试软件为Sisoftware。从测试结果来看,两者在Sisoftware软件下的测试结果也比较接近,并没有明显的差别。除Dhrystone .NET测试体现出稍大的差异之外,其他项目的差别都在5%以下,没有给我们提供更多的对比信息。
我们测试的样机——惠普ProLiant DL385 G5服务器采用了三块万转72G SAS硬盘,所以我们在这里将其组建成了RAID 5模式,通过安装惠普服务器专用的Array Configuration Utility软件(版本号为8.0.14.0)实现对磁盘阵列的细节优化,其他相关的设置在前面已经提到了。
在下面的图表中,“无电池”情况意味着使用的是100% read,0% write的读写方式,而“有电池”情况则意味着使用的是50% read,50% write的读写方式。
我们首先进行了IOps速度的测试。在之前的无电池测试中,惠普ProLiant DL385 G5服务器最高的读取成绩可以达到110221 IOps,可是最高的写入速度只能达到3136.19 IOps,数据差距非常大。对此我们解释说这是因为在阵列卡无电池情况下,只能进行100% read,0% write。而在配备电池之后,大家看到阵列卡的测试成绩则比较正常了,最高的读取成绩为30082.9 IOps,最高的写入速度为33914.1 IOps。为了使读写数据保持对等,我们只能选择50% read,50% write的模式,因此测试成绩要比同配置的产品稍微低一些。
在吞吐量的测试中,阵列卡有电池的情况下其读写成绩分别可以达到在216 MBps和153 MBps。反观无阵列卡的情况,虽然读取速度可以达到220 MBps,但是写入性能始终只有26 MBps左右,成绩很不正常。相比之下,在增加阵列卡电池并调整设置之后,惠普ProLiant DL385 G5服务器才真正达到了它应有的水平。
Ent_dm.tst测试脚本模拟的是企业级文件服务器应用,它不但要求被测服务器的磁盘子系统可以提供足够的吞吐量,还需要其具有较高的IO处理能力,并且需要较为平衡的读取能力和写入能力。这项测试对于磁盘性能有比较大的依赖,看过前面的硬盘成绩,我们在测试之前就已经对两者性能的差别有了清楚的认识。
在下面的图表中,“无电池”情况意味着使用的是100% read,0% write的读写方式,而“有电池”情况则意味着使用的是50% read,50% write的读写方式。
果然,在增加电池之后,我们可以清楚的看到两条曲线的巨大差异。在没有安装电池之前,惠普ProLiant DL385 G5服务器在本项测试中只能稳定在300 Mbps左右;而增加了电池,调整了阵列卡的读写设置,其成绩则提升到了900 Mbps左右,性能达到了原来的三倍。
在下面的图表中,“无电池”情况意味着使用的是100% read,0% write的读写方式,而“有电池”情况则意味着使用的是50% read,50% write的读写方式。
Web处理能力是考察一款服务器性能的重要指标之一,相比上面的NetBench测试来说,它对于磁盘性能的依赖要小得多。从测试结果的曲线来看,无论是动态还是静态测试,当客户端的数量在34台以下的时候,具备阵列卡电池的惠普ProLiant DL385 G5服务器性能要好一些;当客户端达到34个以上,无电池的惠普ProLiant DL385 G5服务器性能反而会领先一些。不过总体来看,WebBench并不需要多么强大的磁盘性能,双方的测试结果互有胜负。
我们在被测的服务器上安装了Microsoft SQL 2005,按照测试要求建立了数据库。BF在测试之前会在数据库中生成9个表,其中包括4个500万行的表格,每行包括100字节的数据,因此每个表格容量大约是476MB,整个数据库容量为1.86GB。我们用60个客户端模拟1600个用户,并且以20个一组依次增加,在这个数据库中进行查询、添加、删除、修改等操作。
在下面的图表中,“无电池”情况意味着使用的是100% read,0% write的读写方式,而“有电池”情况则意味着使用的是50% read,50% write的读写方式。
无阵列卡电池测试曲线
有阵列卡电池测试曲线
这是有无阵列卡电池情况下的对比。从对比测试中,我们可以明显的看到,在无阵列卡电池的情况下,被测服务器的成绩大概保持在25000-30000 Tps之间,更多时候测试曲线靠近25000 Tps;而在安装了阵列卡电池之后,其平均成绩可以达到30000-35000 Tps之间,测试曲线靠近30000 Tps。由此看来,在安装电池之后,服务器的数据库性能较之前提升了20%左右,提升幅度很大,测试成绩有着明显的优势。
在经历了许多天的等待之后,阵列卡电池的到达的确使我们对于惠普ProLiant DL385 G5服务器有了全新的认识。在装配电池之后,由于可以使用更多的读写策略、进行更多的读写方式配置,所以使得服务器的性能提升较为明显。在我们进行的测试项目中,单机测试由于考察服务器内部各部件之间的协调性与兼容性,因此惠普ProLiant DL385 G5服务器的性能还没有完全发挥,与装备电池之前的成绩相差不大。而在磁盘性能测试中,惠普ProLiant DL385 G5服务器则表现出了正常的成绩,不再像之前那样读、写不平衡。平均30000 IOps以上的读写速度216 MBps的读取吞吐量、153 MBps的写入吞吐量较为正常。
在与网络相关的测试中,惠普ProLiant DL385 G5服务器的文件服务器性能也产生了巨大的变化:从之前的300 Mbps左右提升到了900 Mbps左右,实现了三倍的跨越。在Web服务器的测试中,配置电池与否(既读写方式的配置更改)对于最终结果的影响并不大,与之间的测试结果互有优劣。在最终的数据库性能测试中,配备电池之后的惠普ProLiant DL385 G5服务器性能也提升了20%左右,从之前的平均25000 Tps提升到了30000 Tps。
总体看来,在增加了阵列卡电池之后,阵列卡可以支持更多的读写策略。在无电池的情况下,惠普ProLiant DL385 G5服务器只能支持100% read,0% write;在有电池的情况下,我们应用了50% read,50% write。由此,由阵列卡电池的配置带给了用户更多的选择,也使得惠普ProLiant DL385 G5服务器较之前有了大幅度的性能提升,特别是在文件服务器和数据库服务器的测试中成绩较好,可以被中小型企业采用。如果用户希望获得更好的性能,建议配置阵列卡电池使用。