一、本章要点
1)性能计算(响应时间、吞吐量、TAT)
2)性能设计(系统调整、Amdahl解决方案、响应特性、负载均衡)。
3)性能指标(SPEC-Int、SPEC-Fp、TPC、Gibsonmix、响应时间)。
4)性能评估。
二、系统性能计算
1)计算机系统性能指标以系统响应时间、作业吞吐量为代表。
2)故障响应时间是指从出现故障到该故障得到确认修复前的这段时间。
3)性能指标计算的主要方法有定义法、公式法、程序检测法和仪器检测法。
1、响应时间
1)系统响应时间是指用户发出完整请求道系统完成任务给出响应的时间间隔。
2)系统的响应时间对每个用户来说都是不一样的,以下因素会影响系统的平均响应时间:
(1)和业务相关,处理不同的业务会有不同的响应时间。
(2)和业务组合有关,业务之间可能存在依赖关系或其他,也会互相影响。
(3)和用户数量有关,大并发量会严重影响响应时间。
3)有多种方法来测试响应时间,常用的有两种,首字节响应时间和末字节响应时间。
4)米勒给出的三个经典的有关响应时间的建议:
(1)0.1s:用户感觉不到任何延迟。
(2)1s:用户愿意接受的系统立即响应的时间极限。
(3)10s:用户保持注意力执行本次任务的极限。
2、吞吐量
1)吞吐量就是在给定的时间内,系统的吞入能力与吐出能力是多少。
2)计算机的吞吐量主要取决于内存的存储周期。
3)从系统的角度来看,吞吐量是指单位时间内系统所能完成的任务数量。
4)现实的请求与服务,一般都服从M/M/1排队模型。
5)性能计算中的两个公式:
平均利用率p=平均到达事务数/平均处理事务数,平均响应时间=平均处理时间/(1-p)
三、系统性能设计
1、系统调整
1)为了优化系统的性能,有时需要对系统进行调整,这种调整也称为性能调整。
2)性能调整由查找和消除瓶颈组成。
3)开始性能调整之前,必须做一些准备工作,为正在进行的性能调整活动建立框架:
(1)识别约束。约束(如可维护性)在寻求更高的性能方面是不可改变的因素,因此,在寻求提高性能的方法时, 必须集中在不受约束的因素上。
(2)指定负载。确定系统的客户端需要哪些服务,以及对这些服务的需求程度。最常用的度量标准是客户端数目、客户端思考时间以及负载分布状况。
(3)设置性能目标。性能目标必须明确,包括识别用于调整的度量标准及其对应的基准值。总的系统吞吐量和响应时间是用于测量性能的两个常用度量标准。
4)建立了性能调整的边界、约束和目标后,就可以开始进入调整循环了。
(1)收集。使用为系统特定部分选择的性能计数器集合来收集数据。建立系统行为的基准集。
(2)分析。对数据进行分析以确定瓶颈。
(3)配置。确定系统那部分最适合进行配置更改,然后实现此更改。最重要规则:一次仅实现一个配置更改。
(4)测试。确定更改对调整的系统所产生的影响。达到预期则退出,否则调整循环。
2、阿姆达尔解决方案
1)阿姆达尔(Amdahl)定律:系统中对某部件采用某种更快的执行方式,所获得的系统性能改变程度,取决于这种
方式被使用的频率,或所占总执行时间的比例。
2)加速比=不使用增强部件时完成整个任务的时间/使用增强部件时完成整个任务的时间
3)加速比取决于两个因素:
(1)在原有的计算机上,能被改进并增强的部分在总执行时间中所占的比例。
(2)通过增强的执行方式所取得的改进,这个值是在原来条件下程序的执行时间与使用增强功能后程序的执行时间之比。
4)新的执行时间=原来的执行时间*((1-增强比例)+增强比例/增强加速比)
5)总加速比=原来的执行时间/新的执行时间=1/((1-增强比例)+增强比例/增强加速比)
3、负载均衡
1)负载均衡是由多台服务器以对称的方式组成一个服务器集合,每台服务器都具有等价的地位,都可以单独对外提供服务而无需其他服务器的辅助。
2)比较常见的负载均衡技术如下:
(1)基于DNS的负载均衡。简单有效,但不能区分服务器差异,也不能反映服务器的当前运行状态。
(2)代理服务器负载均衡。
(3)地址转换网关负载均衡。
(4)协议内部支持负载均衡。如HTTP协议中的重定向能力。
(5)NAT负载均衡。
(6)反向代理负载均衡。
(7)混合型负载均衡。
四、系统性能评估
1)常用方法有:时钟频率法、指令执行速度法、等效指令速度法、数据处理速率法、综合理论性能法和基准程序法。
2)时钟周期时钟频率的倒数,一个时钟周期内,CPU仅完成一个最基本的动作。
3)完成一个基本操作所需要的时间称为机器周期,一般由若干时钟周期组成。
4)指令周期是执行一条指令所需要的时间,一般由若干个机器周期组成。
5)MIPS(每秒百万指令数)、MFLOPS(每秒百万浮点操作次数)
6)等效指令速度法也称为吉普森混合法(Gibsonmix)或混合比例计算法,通过各类指令在程序中所占比例进行计算得到的。
7)数据处理速率(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
8)PDR主要对CPU和内存储器的速度进行度量,不适合衡量机器整体速度。
9)综合理论性能CTP
10)基准程序法:
(1)Khrystone基准程序。
(2)Linpack基准程序。
(3)Whetstone基准程序。
(4)SPEC基准程序。两种测试方法:一种是测试计算机完成单个任务的速度测试;一种是测试计算机在一定时间内能完成多少任务的吞吐率测试。
(5)TPC基准程序。
原文 http://blog.csdn.net/play_fun_tech/article/details/9373003