文章目录
- 进程
- 多任务
- 线程
- 冯诺依曼架构的改进
-
- 缓存结构
-
- 缓存命中
- 缓存缺失
- 缓存与主存的问题
-
- 数据不一致
- cache和主存之间的映射机制
-
- 具体例子
- 最近最少使用原则
- 缓存和程序
- 虚拟存储技术
- 转译后备缓冲区
- 指令集并行
-
- 流水线
- 多发射
-
- 静态多发射
- 动态多发射(超标量处理器)
- 多发射预测
- 硬件多线程
-
- 细粒度的
- 粗粒度的
- 同步多线程(细粒度的一种变种)
- 并行硬件
-
- SIMD
-
- 缺陷
- 向量处理器
-
- 优点
- 缺点
- 显卡上图形处理单元GPU
- MIMD
-
- 共享内存系统和
- 分布式内存系统
- 课堂作业
最初计算机都是一次只能运行一个程序。
冯诺依曼架构:其主要特点就是内存和CPU的分离,但是这也造成了冯诺依曼瓶颈:CPU执行指令比从内存中读取指令要快得多
sRAM主要使用于作为寄存器或者作为cache,价格比较昂贵。
多任务
会让人产生一种错觉,单核处理器也可以同时运行多个程序
每个进程排队等待被执行,时间到了就需要停止
现代计算机的体系架构是一种层式架构,与CPU数据交互最快的是寄存器和缓存,接下来是主存。
低级别缓存可以看做是缓存的缓存,高级别缓存的组成部分中中有低级别缓存
缓存命中
顺利找到相应变量
缓存与主存的问题
数据不一致
当CPU向缓存中写入数据时,缓存中数据可能和主存有所不同。
具体例子
缓存和程序
虚存是将主存看做缓存来使用,虚存和主存相当于形成了主存和缓存的关系
有可能导致虚存中的页指向主存中的同一块地址。
- 在程序运行时,需要转换虚拟地址到实际地址。页表(page table)用于进行这样一种翻译映射操作
转译后备缓冲区
为了减少加载页表的时间,CPU中有一个专门的转译后备缓冲区用于存放页表
流水线
多发射
算术逻辑单元ALU中部分相同功能单元是不止一个的,可以同时执行不同任务。
静态多发射
动态多发射(超标量处理器)
多发射预测
为了充分利用多任务问题,系统必须认识到那些任务可以同时执行。
细粒度的
在执行一个指令之后,编译器都允许切换至别的线程指令来执行
同步多线程(细粒度的一种变种)
允许充分利用超标量处理器的潜能
SIMD
对多个数据执行相同的指令来实现并行计算,适合数据并行的任务方式。
如果ALU和数组长度相等,那么每个ALU将执行相同的操作。
缺陷
优点
显卡上图形处理单元GPU
也借鉴了了SIMD的架构,衍生出不同于CPU的结构
时间上是不同步的。
共享内存系统和
分布式内存系统
课堂作业
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!