软件架构之系统性能评价

第 5 章 系统性能评价

系统性能是一个系统提供给用户的众多性能指标的混合体。它既包括硬件性能,也包括软件性能。随着计算机技术的不断发展,有关性 能的描述也越来越细化,根据不同的应用需要产生了各种各样的性能指标,如整数运算性能、浮点运算性能、响应时间、网络带宽、稳定性、I/O 吞吐量、SPEC-Int、SPEC-Fp、TPC、Gibson mix 等。有了这些性能指标之后,如何来衡量这些性能指标呢?这就涉及了性能计算。同时用户对性能需求的多样性和广泛性也更进一步加快了计算机技术的发展,并由此出现了一个新的分支:性能设计。性能设计主要包含两方面的内容:一是作为未来计算机技术发展的参考和规划;另一个则是对现有系统进行性能上的调整以达到最优化。在系统性能指标的不断增多和完善过程中,许多公司和个人投身于系统性能的挖掘和实践中,并由此产生了一系列有效的系统性能评价体系。如前面提到 SPEC,已经成为测试 CPU 的最权威的性能测试标准。

(1)性能指标:描述当前流行系统主要涉及的性能指标;

(2)性能计算:描述当前使用到的主要性能指标的计算方法;

(3)性能设计:描述如何对现有系统进行性能上的调整优化,并介绍几个已经成熟的设计规则和解决方案;

(4)性能评估:描述如何对当前取得的性能指标进行评价和改进。

5.1 性能指标

在计算机刚刚诞生时,所谓的系统仅仅指的是计算机本身,随着网络的出现和发展,诸如路由器、交换机设备,TCP/IP、SPX/IPX、以太网、光纤网络等网络技术如雨后春笋般涌现。系统的概念也不再局限于单台计算机,而是成为一个集各种通信设备于一体的集成装置。因此,这里所提到的性能指标,既包括软件,也包括硬件。在硬件中,既包括计算机,也包括各种通信交换设备,以及其他网络硬件;在软件中,既包括操作系统和各种通信协议,也包括各种参与到通信中的应用程序,如数据库系统、Web 服务器等。因此,本节要提到的系统性能指标实际上就是这些软硬件的性能指标的集成。

5.1.1 计算机

对计算机评价的主要性能指标如下:
1.时钟频率(主频)
主频是计算机的主要性能指标之一,在很大程度上决定了计算机的运算速度。CPU 的工作节拍是由主时钟来控制的,主时钟不断产生固定频率的时钟脉冲,这个主时钟的频率即是 CPU 的主频。主频越高,意味着 CPU 的工作节拍就越快,运算速度也就越快。但从 2000 年 IBM 发布第一款双核处理器开始,多核心已经成为 CPU 发展的一个重要方向。原来单以时钟频率来计算性能指标的方式已经不合适了,还得看单个 CPU 中的内核数。现在主流的服务器 CPU 大都为八核或十二核,未来更可能发展到 32 核,96 核甚至更多。

2.高速缓存
高速缓存可以提高 CPU 的运行效率。目前一般采用两级高速缓存技术,有些使用三层。高速缓冲存储器均由静态 RAM(Random Access Memory,随机存取存储器)组成,结构较复杂,在 CPU 管芯面积不能太大的情况下,L1 级高速缓存的容量不可能做得太大。采用回写(WriteBack)结构的高速缓存。它对读和写操作均有可提供缓存。而采用写通(Write-through)结构的高速缓存,仅对读操作有效。L2 及 L3 高速缓存容量也会影响 CPU 的性能,原则是越大越好。

3.运算速度
运算速度是计算机工作能力和生产效率的主要表征,它取决于给定时间内 CPU 所能处理的数据量和 CPU 的主频。其单位一般用 MIPS(百万条指令/秒)和 MFLOPS(百万次浮点运算/秒)。MIPS 用于描述计算机的定点运算能力;MFLOPS 则用来表示计算机的浮点运算能力。

4.运算精度
即计算机处理信息时能直接处理的二进制数据的位数,位数越多,精度就越高。参与运算的数据的基本位数通常用基本字长来表示。PC(Personal Computer,个人计算机)机的字长,已由 8088 的准 16 位(运算用 16 位,I/O 用 8 位)发展到现在的 32 位、64 位。大中型计算机一般为 32 位和 64 位。巨型机一般为 64 位。在单片机中,目前主要使用的是 8 位和 16 位字长。

5.内存的存储容量
内存用来存储数据和程序,直接与 CPU 进行信息交换。内存的容量越大,可存储的数据和程序就越多,从而减少与磁盘信息交换的次数,使运行效率得到提高。存储容量一般用字节(Byte)数来度量。PC 的内存已由 286 机配置的 1MB,发展到现在主流的 1G以上。而在服务器领域中,一般的都在 2~8G,多的如银行系统中省级结算中心使用的大型机,内存高达上百 GB。内存容量的加大,对于运行大型软件十分必要,尤其是对于大型数据库应用。内存数据库的出现更是将内存的使用发挥到了极致。

6.存储器的存取周期
内存完成一次读(取)或写(存)操作所需的时间称为存储器的存取时间或者访问时间。而连续两次读(或写)所需的最短时间称为存储周期。存储周期越短,表示从内存存取信息的时间越短,系统的性能也就越好。目前内存的存取周期约为几到几十 ns(10-9 秒)。 存储器的 I/O 的速度、主机 I/O 的速度,取决于 I/O 总线的设计。这对于慢速设备(例如键盘、打印机)关系不大,但对于高速设备则效果十分明显。例如对于当前的硬盘,它的外部传输率已可达 100MBps、133MBps 以上。

7.数据处理速率
数据处理速率(Processing Data Rate,PDR)的计算公式是:PDR=L/R。其中: L=0.85G+0.15H+0.4J+0.15K;R=0.85M+0.09N+0.06P
其中:
G 是每条定点指令的位数;
M 是平均定点加法时间;
H 是每条浮点指令的位数;
N 是平均浮点加法时间;
J 是定点操作数的位数;
P 是平均浮点乘法时间;
K 是浮点操作数的位数;

另外还规定:G>20 位,H>30 位;从主存取一条指令的时间等于取一个字的时间;指令和操作数都存放在同一个主存,无变址或间址操作;允许有先行或并行取指令功能,此时选用平均取指令时间。 PDR 主要用来度量 CPU 和主存储器的速度,它没有涉及高速缓存和多功能等。因此,PDR 不能度量机器的整体速度。

8.响应时间
某一事件从发生到结束的这段时间。其含义将根据应用的不同而变化。响应时间既可以是原子的,也可以是由几个响应时间复合而成的。在计算机技术的发展中,早在 1968 年,米勒先生就已给出 3 个经典的有关响应时间的建议。

0.1 秒:用户感觉不到任何延迟。

1.0 秒:用户愿意接受的系统立即响应的时间极限。即当执行一项任务的有效反馈时间在0.1~1 秒之内时,用户是愿意接受的。超过此数据值,则意味着用户会感觉到有延迟,但只要不超过 10 秒,用户还是可以接受的。

10 秒:用户保持注意力执行本次任务的极限,如果超过此数值时仍然得不到有效的反馈,客户会在等待

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

恒二哥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值