新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 服务器的基准测试技术研究应用

服务器的基准测试技术研究应用

作者:郭 盈 周润松 中国软件评测中心时间:2012-06-06来源:电子产品世界收藏

  1. 的区别

本文引用地址:http://www.eepw.com.cn/article/133233.htm

  IA(Intel Architecture)都是基于Intel CPU的计算机,有相同的外部接口如IDE、I等。不同之处在于,IA可以支持多个CPU、一般使用SCSI硬盘、可靠性高、运行服务器专用的网络操作系统;而PC一般使用单CPU、IDE或SATA硬盘和个人操作系统软件。PC与IA服务器最大的差异就在于多用户多任务环境下的可靠性上。下面我们从 CPU性能、I/O性能、监控性能、可靠性能、扩展性能5个方面进行比较。

  1) CPU性能

  IA架构的服务器虽然是基于PC机x86的体系结构基础,使用Intel或与其兼容的处理器芯片,但是由于服务器要将其数据、硬件提供给网络共享,在运行某些应用程序时要处理大量的数据。因此要求 CPU处理能力及可靠性更高,使用服务器专用处理器,并且采用SMP(对称多处理器结构)技术,在同一主板上利用多CPU处理数据,极大地提高了IA服务 器的计算能力。

  2) I/O性能

  网络上经常有大量的用户同时访问服务器要求服务器的I/O性能强。IA架构服务器的I/O带宽要强于

  PC。SCSI技术、RAID技术、高速智能I2O技术、较大的内存扩展能力等是提高服务器I/O能力的有效途径。

  3) 系统检控和管理能力

  无论从软件还是从硬件设计上,IA服务器具备较完善的系统监控与管理能力。服务器采用了I2C(Inter-Integrated Circuit Bus)管理总线技术,它是两条串行总线,用于连接微控制器及其外围设备。服务器有专用的服务器管理软件,用于部门局域网环境中的文件、打印和应用服务器 管理工具,提供了对软件和对硬件传感器的实时监控和报警。

  4) 可靠性及安全性

  服务器是网络中的核心设备,因此相对于一般PC而言,它应该具备高可靠性及安全性。IA服务器可采用ECC内存、RAID技术、热插拔技术、冗余电源、冗余风扇、机箱锁等方法使服务器具备高容错能力和高安全保护能力。

  上述硬件技术与安装于服务器之上的网络操作系统的系统备份等功能结合起来,可是达到更高的可靠性。一般而言,服务器主要部件及整机性能按照7×24 小时连续可靠工作设计,这正是IA服务器相对于PC的最大含金量所在。而PC机的设计制造从来没有保证过多用户多任务环境下的可靠性,一般情况下,PC是按照每天连续可靠工作8小时设计的。

  在调查中超过70%的用户认为选择服务器产品最重要的因素就是运行稳定。这也是为什么我们在信息系统的核心设备一般都不会采用PC的原因。

  5) 可扩展能力

  服务器具有良好的扩展能力。具备较多的PCI、PCI-E插槽,较多的磁盘驱动器支架和较大的内存扩展能力。多网卡设计使得用户网络扩充时,服务器也能满足 新的需求。高端的服务器支持PCI和PCI-E插槽的在线热插拔,提供了在线更换功能,可以有效地支持用户不间断的工作,保护用户的投资。

  2. 服务器对比测试要点

  本节内容主要是为了让用户快速了解服务器测试策略与方法,能够用于选型测试中。在此仅仅以最重要的性能、内存缓存性能、数据库网络应用辅以基本对比测试来考察不同服务器间的性能。具体测试技术策略如下:

  1) SPECCPU2000 v1.2

  SPEC是标准性能评估公司(Standard Performance Evaluation Corporation)的简称。SPEC是由计算机厂商、系统集成商、大学、研究机构、咨询等多家公司组成的非营利性组织,这个组织的目标是建立、维护一套用于评估计算机系统的标准。

  SPEC CPU2000是SPEC组织推出的一套CPU子系统评估软件,它包括CINT2000和CFP2000两个子项目,前者用于测量和对比整数性能,而后者 则用于测量和对比浮点性能。计算系统中的处理器、内存和编译器都会影响最终的测试性能,而I/O(磁盘)、网络、操作系统和图形子系统对于SPEC CPU2000的影响非常的小。

  SPECfp测试过程中同时执行多个实例(instance),测量系统执行计算密集型浮点操作的能力,比如CAD/CAM、DCC以及科学计算等方面应用可以参考这个结果。SPECint测试过程中同时执行多个实例(instances),然后测试系统同时执行多个计算密集型整数操作的能力, 可以很好的反映诸如数据库服务器、电子邮件服务器和Web服务器等基于整数应用的多处理器系统的性能。

  在实际测试中,被测试服务器应安装Intel C++ 8.1 Compiler、Intel Fortran 8.1 Compiler这两款SPEC CPU2000必需的编译器,另外安装了Microsoft Visual Studio 2003.net提供必要的库文件。按照SPEC的要求我们根据自己的情况编辑了新的Config文件,可以满足Base测试。然后我们根据被测系统实际 可同时处理的线程数量,设定用户数量,分别运行SPEC base和SPEC rate base测试的结果(其中SPEC base代表系统执行某个任务的速度,而SPEC base rate测试代表系统可以同时处理任务的能力)。

  2) ScienceMark v2.0 Membench

  ScienceMark v2.0是一款用于测试系统特别是处理器在科学计算应用中的性能的软件,MemBenchmark是其中针对处理器缓存、系统内存而设计的功能模块,它可以测试系统内存带宽、L1 Cache延迟、L2 Cache延迟和系统内存延迟,另外还可以测试不同指令集的性能差异。

  3) SiSoftware.Sandra.SP1 v2007

  SiSoftware Sandra是一款可运行在32bit和64bit Windows操作系统上的分析软件,这款软件可以对于系统进行方便、快捷的基准测试,还可以用于查看系统的软件、硬件等信息。目前新版本新增了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路平台。

  4) IOMeter 2004.7.30

  IOMeter是一款功能非常强大的IO测试软件,它除了可以在本机运行测试本机的IO(磁盘)性能之外,还提供了模拟网络应用的能力。在这次的测试中,我们仅仅让它在本机运行测试服务器的磁盘性能。为了全面测试被测服务器的IO性能,分别选择了不同的测试脚本。

  Ø Max_throughput(read):文件尺寸为64KB,100%读取操作,随机率为0%,用于检测磁盘系统的最大读取吞吐量

  Ø Max_IO(read):文件尺寸为512B,100%读取操作,随机率为0%,用于检测磁盘系统的最大读取操作IO处理能力

  Ø Max_throughput(write):文件尺寸为64KB,0%读取操作,随机率为0%,用于检测磁盘系统的最大写入吞吐量

  Ø Max_IO(write):文件尺寸为512B,0%读取操作,随机率为0%,用于检测磁盘系统的最大写入操作IO处理能力

  5) WebBench v5.0

  WebBench是针对服务器作为Web Server时的性能进行测试,在被测服务器上安装IIS6.0组件,以提供测试所需的Web服务。在测试中开启N台客户端(受测试环境约束而定),分别使用了WebBench 5.0内置的动态CGI以及静态页面脚本对服务器进行了测试。

  静态测试是由客户端读取预先放置在服务器Web Server下的Web页面(wbtree),这项测试主要考察的是服务器磁盘系统以及网络连接性能。使用了N台客户端,配合Static_mt.tst多线程静态脚本测试向被测服务器发送请求。

  动态测试偏重于对服务器CPU子系统的性能测试,它对于Web服务器提供了足够的负载。使用C语言编写的 CGI源文件Simcigi.c编译为Simcgi.exe,并将其作为动态测试中的CGI脚本。在测试过程中,每台安装了WebBench客户端软件的 PC,会在300秒的时间内持续向服务器发送CGI请求,而控制台会纪录并汇总服务器所响应CGI请求的数据。CGI测试的成绩高低,主要取决于服务器处理器子系统性能的优劣。处理器子系统包括CPU、内存以及内存控制器,CPU频率、缓存以及内存容量大小和内存带宽,都会影响该项成绩。

  6) NetBench v7.03

  NetBench是针对文件服务器的性能测试软件,影响NetBench 性能的主要是服务器的磁盘子系统,服务器磁盘控制器、条带大小、读写缓存、硬盘类型、组建磁盘阵列模式、内存容量、网络拓朴结构等都会对测试结果有明显的影响。我们在被测服务器上设立了文件服务器时,NetBench可配置N个客户端来模拟网络中的PC向文件服务器所发出的文件传输请求,文件服务器则将存储在磁盘上的文件数据发送给相应的客户端。在测试过程中,客户端会以每四台一组的步进依次增加并且向服务器发送文件传输请求,测试结束后控制台收集数据并绘制出服务器的数据传输变化曲线。

  7) TPC benchmark

  TPC现有的测试标准为:TPC-E、TPC-C、TPC-H、TPC-App。根据这4个测试基准,目前TPC主要包括的4个技术小组委员 会:TPC-E 技术小组委员会、TPC-C 技术小组委员会、TPC-H技术小组委员会、TPC-App技术小组委员会。前期TPC使用过但目前已经停止使用的测试标准有:TPC-A、TPC- B(数据库处理能力测试标准)、TPC-D、TPC-R(决策支持系统测试标准,类TPC-H)、TPC-W(Web处理能力测试标准)。

c++相关文章:c++教程




关键词: 服务器 PC

评论


相关推荐

技术专区

关闭