1.Amdahl定律
主要思想:当我们对某一个部分加速时,其对系统整体性能的影响取决于该部分的-重要性和加速程度
如果系统执行某应用程序需要时间是Told,执行某部分的时间与该时间的比值是α,该部分提升性能比例为k.
所以总的执行时间是:
因此加速比
其实,Amdahl描述了改善任何过程的一般原则。
比如说,学生想提高自己的gpa那么就要把高学分的成绩提高
注:2.2X表示2.2倍
2.并发,并行
计算机的两个持续驱动力:do more things,do faster
并发:一个具有多个活动的系统,允许多个用户同时和系统交互
并行:用并行使一个系统运行得更快
随着多核处理器,超线程的出现,多处理器系统变得常见
如图:
四核cpu多处理器的作用:
1.减少了模拟并发的需要
2.使程序运行更快
指令级并行:同时执行多条指令的属性
如8086
超变量:处理器达到比一个周期一条指令运行更快的执行速率
现代处理器都支持超变量操作
单指令,多数据(SIMD并行):允许一个指令产生多个可以并行执行的操作
3.抽象
抽象是计算机中最为重要的概念之一
比如API
目前为止,我们一共学了四个抽象:
文件:I/O设备的抽象
虚拟内存:存储器的抽象
进程:对正在进行的程序的抽象
虚拟机:整个计算机的抽象