- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
SIMD指令-乘加运算 * * * * + + SIMD指令-比较指令 SIMD指令-类型转换 SIMD指令-操作模式 SSE指令 128位操作模式 SSE指令 32位操作模式 5.11 CPU性能评价 CPU性能与3个要素有关 时钟频率f 每条指令需要的时钟周期数CPI 指令条数IN 时钟周期长度t=1/f CPU时钟周期数Nc=CPI×IN 5.11.1 CPU性能公式 第i类指令在总程序中占的比例 补充例题 假设在一般程序中浮点开平方操作FPSQR所占的比例为2%,它的CPI为100;其他浮点操作FP所占的比例为23%,它的CPI=4.0;其余75%指令的CPI=1.33,计算该处理机的CPI。如果FPSQR操作的CPI也为4.0,重新计算CPI。 解答: CPI1=100×2%+4×23%+1.33×75%=3.92 CPI2=4×25%+1.33×75%=2.00 〔例题7〕 有两种条件分支指令的设计方案: ① CPUA:比较指令设置条件码,条件分支指令测试条件码进行分支 ② CPUB:条件分支指令包括比较、并进行分支 两种方案中,条件分支指令占用2个时钟周期、其他指令占用1个时钟周期 CPUA的条件分支指令占20%,比较指令也占20% CPUB的时钟周期比CPUA慢25% 哪个CPU更快? 例题7解答 CPIA=0.2×2+0.8×1=1.2 CPU时间A=INA×1.2×tA CPUB没有独立的比较指令:INB= 0.8×INA CPUB条件分支指令所占比例: 20%÷80%=25%=0.25 CPIB=0.25×2+0.75×1=1.25 CPU时间B=INB × CPIB×tB =0.8×INA×1.25×tB =INA×tB tB=tA+0.25×tA = 1.25×tA CPU时间B=INA×1.25×tA > CPU时间A 5.11.2 性能评价标准 最初: 执行单项操作的时间,例如:加法操作时间 改进为: 平均指令执行时间= 进一步成为容易理解的: 每秒百万条指令(Million Instructions Per Second) 同时出现: MFLOPS(每秒百万浮点操作) 最终形成: 测试程序(Benchmarks) 测试程序 实际应用程序 修正的(或者脚本化)应用程序 核心测试程序 Livermore Loops和Linpack 小型测试程序 Quicksort,Puzzle和Sieve 合成测试程序 Whetstone和Dhrystone 基准测试程序组件 SPEC (Standard Performance Evaluation Corporation) SPEC89→SPEC92→SPEC95→SPEC2000 11个整数基准程序(CINT2000) 14个浮点基准程序(CFP2000) WinBench 99 and Winstone 2004 WinBench 99:measures the performance of a PCs graphics, disk, processor, and video subsystems Business Winstone 2004:application-based benchmark that measures a PCs overall performance CPU时间与CPU性能 衡量性能最可靠的标准:真实程序的执行时间 真实程序的执行时间 =CPU时间+I/O操作等时间 CPU时间 =用户CPU时间+系统CPU时间 CPU性能对应用户CPU时间 CPU时间还可细分为用户CPU时间及系统CPU时间,前者表示用户程序所花费的CPU时间,后者表示用户程序运行期间操作系统花费的CPU时间。 〔例题8〕 一台40MHz处理器执行标准测试程序 求:CPI,MIPS和执行时间T 指令类型 指令条数 时钟周期数 整数运算 数据传送 浮点运算 控制传送 45000 32000 15000 8000 1 2 2 2 例题8解答 CPI=(45000×1+32000×2+15000×2+8000×2)÷(45000+32000+15000+8000) =1.55(时钟周期/指令) MIPS=f/(CPI×106)=40×106/(1.55×106) =25.81 (百万条指令/秒) T=(45000×1+32000×2+15000×2+8000×2)÷(40×106) = 3.87×10-3(秒) 第5章习题 1. 在CPU基本模型中,主要有哪些寄存器? 2. 区别如下两组概念 ⑴ 指令周期、CPU周期、时钟周期 ⑵ 微命令、微指令、指令 3. 什么是计算机体系结构中的并行性,它包括哪两种含义
文档评论(0)