计算机系统设计定量定理:
·经常性事件为重点
执行时间(execution Time)、等待时间(latency)尽量短
·Amdahl定律
带宽(bandwidth)
·CPU性能公式
·执行指令耗时
·程序局部性原理(计算机catche支持,高速缓冲区比内存快很多)
时间、空间局部性
例如:c语言的循环体,运行时进入内存,执行100次,在内存连续调用100次,都是在内存的同一地方,同一地方、连续体现了空间、时间的局部性。
计算机性能评价
制造成本
衡量性能的基本指标
响应时间——执行时间、等待时间
吞吐量(处理数据量)——带宽(bandwidth)
计算机性能测试
指令执行速度 (MIPS、MFLOPS\TELOPS/PFLOPS)
基准程序(Benchmark)
·SPEC
基本性能指标
计算机两种不同性能:
·Time to do the task
响应时间(事务处理系统例如数据库、存取款)、执行时间、等待时间或延迟
·Tasks per day,hour,sec,ns. ···
吞吐率(多媒体应用)、带宽 //相应时间而且吞吐率:ATM、文件服务器、Web服务器等
基本性能评价v标准:CPU执行时间
CPU执行时间就是执行程序中每条指令的时间。
ExTime(Y)/ExTime(X) = n = Performance(X)/Performance(Y)
相对性能用执行时间的倒数来表示。
性能测量
比较计算机得性能时,用执行时间衡量
·完成同样工作量所需时间最短是最好的
用户感觉到的相映时间:
·CPU时间
·用户CPU时间:用来运行用户代码
·系统CPU时间:为执行用户程序而需运行操作系统程序时间
·其他时间
等待II/O操作完成或cpu用在其他用户的时间
·系统性能和CPU性能不等价,有一定区别
系统性能:系统响应时间
CPU性能:用户CPU时间
CPU执行时间:
CPI :Cycles Per Instruction
CPU 执行时间 = CPU时钟周期数/程序*时钟周期
= CPU时钟周期数/程序/时钟频率
= 指令条数/程序*CPI *时钟周期
CPU时钟周期数 /程序 = 指令条数/程序 *CPI
CPI = CPU 时钟周期数 /程序 / 指令条数/程序
CPI 越小越好,用来衡量一下各方面综合结果:
·ISA:指令集
·计算机的体系、组成、物理实现
计算机体系结构 :计算机指令集(ISA) +组成 (Organization)
computer Design:
Instruction Set Design——指令设计:功能定义与设计
Computer Hardware Design——组成原理实现:具体逻辑结构设计+物理实现技术
性能影响因素:
instr.count | |||
x | x | ||
x | (x) | ||
x | x | ||
x | x | ||
x |
CPU Time = Seconds/Program = (Instructions/Program) * (Cycles /Instruction) * (Seconds/Cycle)
如何计算CPI?
假定CPli 和 Ci 分别为第i类指令的CPI和指令条数,则程序的总时钟数为:
机器B的频率时A的两倍,但速度是1.67倍!
Marketing Metrice(产品宣称指标)
MIPS = instructioin Count /Second * 1/10 6 = Clock Rate /CPI * 1/ 106
每条指令执行时间不同,所以MIPS总是一个平均值
MIPS数不可靠!
选择性能评价程序