500 likes | 635 Views
§4 评估和理解性能. §4 评估和理解性能. 4.1 概述 4.2 CPU 的性能和影响因素 4.3 性能评估 4.4 实例:两个 SPEC 基准测试以及 新型 Intel 处理器的性能评价 4.5 计算机系统的可靠性. §4 评估和理解性能. 4.1 概述. 4.1 概述. 主要讨论. 计算机设计目标: 高速 影响因素:硬件、指令系统、编译器、 软件 系统复杂 → 评价难度高 如何评价? 应用不同,立足点不同 台式机、服务器、嵌入式系统所采用的性能评价机制和基准测试程序各不相同.
E N D
§4 评估和理解性能 华东师范大学计算机科学技术系
§4 评估和理解性能 4.1 概述 4.2 CPU的性能和影响因素 4.3 性能评估 4.4 实例:两个SPEC基准测试以及 新型Intel处理器的性能评价 4.5 计算机系统的可靠性 华东师范大学计算机科学技术系
§4 评估和理解性能 4.1 概述 华东师范大学计算机科学技术系
4.1 概述 主要讨论 计算机设计目标: 高速 影响因素:硬件、指令系统、编译器、软件 系统复杂 → 评价难度高 如何评价? 应用不同,立足点不同 台式机、服务器、嵌入式系统所采用的性能评价机制和基准测试程序各不相同 华东师范大学计算机科学技术系
程序执行时间:计算机完成一个任务的总时间程序执行时间:计算机完成一个任务的总时间 (响应时间)t5—t0 CPU时间:计算机完成一个任务,CPU所耗用的时间 程序及OS程序的执行时间 用户程序和OS共享处理器
4.1 概述 一、性能定义 性能X= 1 / 执行时间X 性能越高越好 性能比: n=性能X/性能Y =执行时间Y/执行时间X 相对性能:评价一台计算机的性能通常参照 另一台计算机的性能,可用性能 比来表示 强实时系统和弱实时系统 华东师范大学计算机科学技术系
4.1 概述 二、性能测量 CPU时间:计算机完成一个任务,CPU所耗用的 时间 ·用户CPU时间:运行用户程序代码所花的时间 ·系统CPU时间:运行操作系统代码所花的时间 后者在多用户下很难区分 系统性能:系统在没有其他负载情况下的响应 时间 CPU性能:用户CPU时间 华东师范大学计算机科学技术系
§4 评估和理解性能 4.1 概述 4.2 CPU的性能和影响因素 华东师范大学计算机科学技术系
4.2 CPU的性能和影响因素 一、CPU时钟: 时钟定义了规则的时间间隔 CPU执行程序时将所做的工作分解为一系列基本 步骤,每个步骤均在一个时钟周期内完成。 CPU频率(R):衡量CPU性能的重要参数 例)500MHz 2.8GHz 3.0GHz 时钟周期的倒数 华东师范大学计算机科学技术系
4.2 CPU的性能和影响因素 执行一个程序所需的时钟周期数 二、提高性能: 衡量公式: Tcpu=(NCPI)/R Tcpu:CPU时间; N: 编译后目标程序的总指令数; CPI:执行每条指令所需的平均时钟周 期数; R: 时钟频率 高性能 减少T N、CPI、R 提高CPU时钟频率 计算机性能的三个要素密切相关 基本要素及其含义:P164 图4-2 编译优化,减少目标指令数 简化指令执行步骤、并行执行指令 华东师范大学计算机科学技术系
二、提高性能 减少CPI值 流水线操作: 增加部件,使连续指令叠加执行 超标量操作 两条以上的指令流水线,达到更高度的并发性 存储器结构:减少延迟等待时间 指令集: RISC: CPI ,但 N CISC: N,但 CPI 这点上两者无明显优越 但简单指令集更易实现高效流水线 华东师范大学计算机科学技术系
二、提高性能 • 提高R值 • 提高时钟频率 • 改进IC技术,提高逻辑电路速度; • 减少时钟周期内处理的工作量 t R , 但CPI可能增加 减少N值 编译器 优化编译,一个高质量的编译器一定与处理器体系结构紧密相关,通过设计的相互协调,达到最佳效果。 指令执行步骤的划分相当重要 华东师范大学计算机科学技术系
n i=1 二、提高性能 CPI与许多设计细节密切相关,测量比较困难 可采用以下方法得到: ·通过仿真实验测试 ·通过硬件计数器测定 ·通过公式估算 CPU时钟周期数 = ∑(CPIi×Ci) Ci: 程序执行中第i类指令的条数 CPIi: 该类指令执行时所需的平均时钟周期数 n: 指令类别的数目 华东师范大学计算机科学技术系
二、提高性能 解)①指令条数:1#序列 2+1+2=5 2#序列 4+1+1=6 指令条数少 例1)代码优化 两段代码执行参数: 比较两段代码 ②执行速度: 1#序列时钟周期数=(1×2)+(2×1)+(3×2)=10 2#序列时钟周期数=(1×4)+(2×1)+(3×1)=9 时钟数少 执行速度快 ③ 1#序列CPI=时钟周期数/指令条数 = 10/5 = 2 2#序列CPI = 9/6 = 1.5 华东师范大学计算机科学技术系
4.2 CPU的性能和影响因素 三、吞吐率 MIPS: 每秒百万条指令数 计算机每秒可执行的指令数 MIPS=执行的指令数 /(执行时间×106) MFLOPS:每秒百万次浮点运算数 计算机每秒可执行的浮点运算次数 注意: · MIPS仅反映了执行指令的速率,但未考虑指令功能 ·在同台机器上,不同程序的MIPS是不同的 · MIPS有可能和机器的性能成反比 华东师范大学计算机科学技术系
结论:MIPS未完整考虑N、CPI、R三个因素,有可能结论:MIPS未完整考虑N、CPI、R三个因素,有可能 产生错误的结论 n i=1 三、吞吐率 解)①CPU时间= ∑(CPIi×Ci)/R 1#CPU时间=(1×5)+(2×1)+(3×1) ×109/4G=2.5秒 2#CPU时间=(1×10)+(2×1)+(3×1) ×109/4G=3.75秒 例2)两个不同的编译器对同一段程序进行编译 参数: 程序经1#编译器编译后产生的代码执行时间比2#的快 ② MIPS1=指令数/(程序执行时间×106) =((5+1+1)×109) / 2.5×106 = 2800 MIPS2=((10+1+1)×109) / 2.5×106 = 3200 2#快 华东师范大学计算机科学技术系
4.2 CPU的性能和影响因素 四、性能平衡 当代处理器所采用的若干技术 转移预测(Branch Prediction) 可提前预测多条执行分支,使处理器能正确地预 取指令,以减少处理器的等待时间 数据流分析(Data Flow Analysis) 处理器分析指令所依赖的数据,数据准备好,可 不按原程序的顺序执行,优化指令调度 推测执行(Speculative Execution) 使用转移预测和数据流分析,使程序在实际执行 之前即已“推测执行”,并暂存结果,使处理器的 执行机制尽可能保持繁忙 华东师范大学计算机科学技术系
四、性能平衡 性能平衡 性能平衡 调整组织和结构,以补偿各部件之间的能 力不匹配 处理器性能发展迅速 其他部件性能发展跟不上需要 华东师范大学计算机科学技术系
四、性能平衡 CPU与存储器 ·增加总线的数据宽度,以增加每次访问的位数 ·在DRAM芯片中加入高速缓存,提高芯片性能 ·在CPU与主存间加入高速缓存,提高CPU访存速度 ·通过高速总线和分层总线来缓冲和结构化数据流 等等 经验定律 Amdahl/Case定律:要使计算机系统较为平衡,每MIPS的CPU性能需要对应1MB的主存容量和1Mb/s的I/O带宽 华东师范大学计算机科学技术系
CPU与I/O设备 ·新的I/O设备的不断推出,以适应系统性能的 要求 ·缓存和暂存机制,以及高速互连总线结构 ·接口技术 等等 四、性能平衡 性价比 ·高性能设计——超级计算机、高端服务器 ·高性价比设计——台式机、嵌入式系统 华东师范大学计算机科学技术系
§4 评估和理解性能 4.1 概述 4.2 CPU的性能和影响因素 4.3 性能评估 华东师范大学计算机科学技术系
4.3 性能评估 性能评价是计算机系统设计、选择和使用时考 虑的主要依据 评价手段:(1)分析 采用数学模型———精度低 (2)模拟 用软件建立系统模型进行研究 ———建模时间长 (3)测试 用测试程序(工作负载)实际 运行———制造完成后进行 一系列运行在计算机上的程序 华东师范大学计算机科学技术系
4.3 性能评估 标准化程序 一、性能测量: 通过执行基准程序来测量计算机的性能 选用负载: 假想程序———不能恰当地预测实际运行情况 实际应用程序———不同领域具有代表性的应用 程序 华东师范大学计算机科学技术系
= = = 9.1 4.3 性能评估 二、性能比较和综合评价 针对一组基准程序,在不同的机器上运行,各段程序将会产生不同的结果 例:P169 图4-4 ————如何综合评价是困难的 一种简单的综合评价指标:总执行时间 机器B的性能 总执行时间A 1001 机器A的性能 总执行时间B 110 华东师范大学计算机科学技术系
二、性能比较和综合评价 n i=1 上述方法中,程序的平均执行时间与总的执行时间 成正比 ————各程序执行的算术平均 AM = 1/n ∑ Timei Timei: n个程序组成的总任务中第i个 程序的执行时间 减小AM →缩短平均执行时间 → 提高了系统性能 如程序的执行频度不同,需加权————加权算术平均 方法:以某台计算机为基准,为各个基准程序选择 一个权重值,使得所有程序在该基准计算机 上的加权执行时间都相等 华东师范大学计算机科学技术系
§4 评估和理解性能 4.1 概述 4.2 CPU的性能和影响因素 4.3 性能评估 4.4 实例:两个SPEC基准测试以及 新型Intel处理器的性能评价 华东师范大学计算机科学技术系
4.4 实例:两个SPEC基准测试以及 新型Intel处理器的性能评价 计算机系统性能评价公司(SPEC) 89年成立 为现代计算机系统建立标准的基准程序集 SPEC基准程序集包括多种测试: CPU性能、图形图像、高性能计算、面向对象计 算、Java应用程序、客户-服务器模型、邮件系 统、文件系统、Web服务器等等 华东师范大学计算机科学技术系
4.4 实例:两个SPEC基准测试以及新型Intel处理器的性能评价 不测试I/O性能,运行在Unix下 89年提出一套通用机基准测试程序; 92年推出:SPEC92 由10个测试程序组成: 4个定点运算(SPECint92)+6个浮点运算(SPECfp92) 95年推出:SPEC95 两套:C语言———用于测试整数运算性能; FORTRAN———用于测试浮点运算性能。 2000年推出:SPEC2000 12个整数基准测试程序+14个浮点基准测试程序 CINT2000 + CFP2000 P171图4-5 2006年推出:SPEC2006 12个定点基准测试程序(CINT2000) 17个浮点基准测试程序(CFP2000) 华东师范大学计算机科学技术系 详细资料可查阅SPEC网站 www.spec.org
n 1/n i=1 4.4 实例:两个SPEC基准测试以及新型Intel处理器的性能评价 一、使用SPEC CPU基准程序测试的性能 SPEC CPU2000由整数与浮点基准程序集分别得到独立的性能评价 SPEC2000 参照机:300MHz Sun Ultra 5 _ 10 统计计算 SPEC比值 = SPEC值取几何平均: SPEC等级=( SPECi) 在参照计算机上的运行时间 在被测计算机上的运行时间 华东师范大学计算机科学技术系
一、使用SPEC CPU基准程序测试的性能 实例:测试机 Dell Precision台式机 Intel Pentium III处理器 Intel Pentium 4 处理器 不同时钟频率下的测试结果: P172图4-6 分析: ·时钟频率增长,处理器性能线性增长 但实际情况和许多因素有关,同时测试程 序对内存的压力并不太大 ·在浮点基准测试程序集中,Pentium 4 比 PentiumIII性能好——Pentium 4使用更新技术 华东师范大学计算机科学技术系 不能将时钟频率与其他方面的改进截然分开
4.4 实例:两个SPEC基准测试以及新型Intel处理器的性能评价 二、SPEC web99:web服务器吞吐量的基准程 序集 SPECweb96:1996年首次推出进行web服务器性 能测试的基准程序集 SPECweb99:1999年推出新版本 ·更关注吞吐量,主要测试最大连接数下的响 应时间 ·用于多处理器系统 ·包括服务器软件测试 ·性能依赖多方面,包括硬件系统及网络 华东师范大学计算机科学技术系
一、使用SPEC CPU基准程序测试的性能 Xeon版本支持多处理器 Exon MP还支持第三层的片外高速缓存 实例:测试机 Dell PowerEdge服务器 Xeon Intel Pentium III处理器 Xeon Intel Pentium 4 处理器 不同Dell系统的测试结果: P172图4-7 分析: ·处理器时钟频率不是决定Web服务器性能的 重要因素 比较6600、8450/700 ·通过配置,将使系统性能更好 华东师范大学计算机科学技术系
4.4 实例:两个SPEC基准测试以及新型Intel处理器的性能评价 三、性能、功耗及能量效率 在移动应用中,功耗成为处理器性能的主要限制 ◆节电的主要技术: ·休眠 ·减小时钟频率 ·降低电压 ◆Intel为移动应用设计的低功耗系列机 ————Pentium M ◆ 三款为移动应用设计的处理器基准测试 P174图4-8 华东师范大学计算机科学技术系
三、性能、功耗及能量效率 能量效率=性能/平均电能消耗 三款为移动应用设计的处理器能效测试 P175图4-9 分析: · Pentium M 能量效率显著,特别是在最小时 钟模式下 · Pentium M 是为考虑能量效率而设计的 Pentium III-M 及 Pentium 4-M只是改进型 华东师范大学计算机科学技术系
系统中某一部件由于采用某种更快的执行方式后整个系统性能的提高与这种执行方式的使用频率或占总执行时间的比例有关。系统中某一部件由于采用某种更快的执行方式后整个系统性能的提高与这种执行方式的使用频率或占总执行时间的比例有关。 Amdahl定律提供了一种判断增强措施可以提高多少性能的指标,以及如何分配资源才能够改进性价比的途径 使最常用的部分变得更快 4.4 实例:两个SPEC基准测试以及新型Intel处理器的性能评价 四、计算机设计的优化 Amdahl定律: T=T1/B+T2 T: 改进后程序的执行时间 T1:受改进影响的部分的执行时间 T2:未受改进影响的部分的执行时间 B: 改进部分性能提高的倍数 分析: 通过使用某种较快的执行方式所获得的性能提高,受限于可使用这种较快执行方式的时间所占的比例 华东师范大学计算机科学技术系
四、计算机设计的优化 例3)设某程序在某台计算机上运行所需的时间是100秒,其中80秒时间进行乘法操作,若要使程序执行的速度提高到原来的5倍,则乘法部件的执行速度应提高多少倍? 解)改进后的执行时间:100秒/5=20秒 20=80/n+20 0 =80/n 结论:若乘法只占总计算量的80%,那么无论 对乘法部件进行何种改进,都是徒劳。 某项改进使整体性能提高的幅度,是与改进部分在总任务中所占的比重有关。 华东师范大学计算机科学技术系
§4 评估和理解性能 4.1 概述 4.2 CPU的性能和影响因素 4.3 性能评估 4.4 实例:两个SPEC基准测试以及 新型Intel处理器的性能评价 4.5 计算机系统的可靠性 华东师范大学计算机科学技术系
4.5 计算机系统的可靠性 一、故障类型P375图8-5 物理故障 内部物理故障 外部物理故障 人为故障 故障———系统中某一部分出现的物理紊乱现象 永久性故障———硬件的物理失效引起 中期故障———偶然性故障,一般可修复 暂态故障———由于暂时的环境条件而导致 例)干扰、静电等 华东师范大学计算机科学技术系
一、 故障类型 失效规律 失效————指系统在规定的条件下和规定的时间 内丧失了规定的功能 华东师范大学计算机科学技术系
4.5 计算机系统的可靠性 二、模块可靠性 可靠性———连续服务时间的度量。系统投入 使用后,在给定时间内和环境条 件下不发生故障的概率 具有固定故障率的非容错系统: R(t)=e-t :系统的失效率 t: 系统建成时时间为零 R(t):时间的函数 华东师范大学计算机科学技术系
N MTBF=( ti)/N i=1 二、模块可靠性 ti是第i次无故障间隔时间,N为故障数 平均故障间隔时间 (MTBF, Mean Time Between Failure) ———两次故障时间间隔的平均值 越大越好 MTBF = MTTF + MTTR 华东师范大学计算机科学技术系
M MTTR=( ti)/M i=1 二、模块可靠性 平均修复时间 (MTTR, Mean Time To Repair) ———衡量是否能快速恢复 ti是第i次故障发生至投入运行的时间,M为修复总次数 越小越好 华东师范大学计算机科学技术系
二、模块可靠性 平均故障时间 (MTTF, Mean Time To Failure) MTTF的倒数是故障率,一般以10亿小时运行中的故障时间来计算 称为FIT(Failure In Time) 例2:1 000 000小时MTTF等于1000FIT 华东师范大学计算机科学技术系
二、模块可靠性 例3:假设一个磁盘子系统有如下组件和MTTF: · 10个磁盘,每一个MTTF是1 000 000小时MTTF · 1个SCSI控制器,500 000小时的MTTF · 1个电源,200 000小时的MTTF · 1个风扇,200 000小时的MTTF · 1条SCSI电缆,1 000 000小时的MTTF 故障具有独立性,计算系统MTTF。 解:系统故障率=10×1/1 000 000+1/500 000+1/200 000 +1/200 000+1/1 000 000 = (10+2+5+5+1)/1 000 000 =23/1 000 000 = 23000/1 000 000 000 即为23 000FIT MTTF=1 000 000 000/23 000 = 43500(小时) 华东师范大学计算机科学技术系
二、模块可靠性 可用性 可用性为服务实现的度量 可用性 = MTTF MTTF + MTTR 缩短MTTR和增大MTTF一样,能提高可用性 华东师范大学计算机科学技术系
4.5 计算机系统的可靠性 三、避错和容错 避错———精心设计,防止故障出现 容错———容许故障出现,但防止其造成的不利 影响 容错技术 错误恢复———系统退回到已知的正 确状态 例)卷回法、日志法 错误补偿———利用冗余性来克服出 错的不利影响,在出 现错误时可继续提供 无错的服务 错误预测——预测错误的存在和产生,减小MTTR 华东师范大学计算机科学技术系
4.5 计算机系统的可靠性 四、容错技术 容错的主要技术———冗余技术 通过引入系统资源的冗余,实现系统的可靠工作 时间冗余———对计算重复进行,并比较检查,以 实现无错计算 空间冗余———采用额外硬件进行并行工作,以屏 蔽错误结果 信息冗余———采用软件的方法,用不同的算法计 算相同的结果,并进行判决 华东师范大学计算机科学技术系
四、容错技术 覆盖率———指系统能从指定故障中成功恢 复工作的概率 系统容错性的指标,用于衡量容错系统的 可靠性 例4)某台计算机的覆盖率为100%,意味着 该机在每个方面,包括电路、逻辑门、 每条数据通路都具有某种容错机制 华东师范大学计算机科学技术系
本章重点 ♦ CPU的性能 衡量公式、影响因素 ♦ 性能评估方法 ♦ 计算机设计的优化 ♦ 计算机系统的可靠性 华东师范大学计算机科学技术系
作业 P179: 4.1 4.11 4.2 4.45 4.3 4.46 4.6 4.7 4.8 华东师范大学计算机科学技术系