这是我参与更文挑战的第27天,活动详情查看: 更文挑战
第五章:存储系统
名词解释:
5.1 多级存储层次: 由一组采用
不同技术
实现的存储器构成的一个
存储系统。
5.2 命中时间: 当
命中
时,所需的访问时间
5.3 不命中开销:
从m2中把包含所要访问的字的块传送给M1的时间
和传送一个信息块所需要的时间
之和.3
5.4 命中率: CPU访问该存储系统时,在M1中找到所需信息的概率
5.5 不命中率: 指在CPU访存时
在M1中找不到
所需信息的概率---M1为最靠近CPU的存储器
5.6全相联映射:
主存
中的任一块
可以被放置到Cache
中的任意
一个位置
5.7直接映射:
主存
中的每一块
只能被放置到Cache
中的唯一
一个位置
5.8组相联映射:
主存
中的每一块
只能被放置到Cache中唯一
的一个组
中的任何一个
位置
5.9写直达法: 在执行写操作时,不仅把数据
写入Cache
中的相应块,而且也写入下一级存储器
。
5.10写回法: 只把数据
写入Cache
中相应的快,不写入
下一级存储器写直达与写回法的区别(考):
写直达 v慢,数据一致
写回法,v快,数据不一致
5.11强制性不命中: 当第一次
访问
一个块,该块不在Cache
中,需要下一级存储器调入Cache
5.12容量不命中: 如果程序执行时所需的块不能全部调入Cache中,则当某些块被替换后,又重新被访问,就会发生不命中
5.13 冲突不命中: 在
组相联或直接映射
中,太多的块映射到同一组中,就会出现该组中某些块被别的块替换
,然后又被重新访问的情况
5.14 2:1Cache经验规则: 容量为N的
直接映像
的不命中率和容量与N/2的两路组相联Cache
的不命中率差不多相同
5.15 牺牲Cache: 在Cache和下一级存储器的数据通路上增加一个
全相联
的小Cache
,这个小Cache就叫牺牲Cache
5.16相联度:当一个数据块从主存调入Cache时,Cache中可用于
存放该数据块的位置的个数
在组相联中,每组Cache中的块数
5.17系统响应时间: 计算机对用户的输入或请求作出反应的时间
5.18可靠性:指系统从
某个初始参考点
开始一直连续提供服务的能力
,它通常用平均无故障时间来衡量
5.18可用性: 系统
正常工作
的时间在连续两次正常服务间隔时间
中所占的比率
5.19RAID: 廉价磁盘冗余阵列或独立磁盘冗余阵列
简答题:
1、 单级存储器的主要矛盾是什么?通常采取什么方法来解决?
主要矛盾:
速度越快,每位价格就越高。
容量越大,每位价格就越低。
容量越大,速度越慢。
方法:
采用多级存储器技术
,构成多级存储层次结构
2、在存储层次中应解决哪四个问题?
映像规则
:当把一个块调入高一层存储器时,可以放到哪些位置上?查找算法
:当所要访问的块在高一层存储器中时,如何找到该块?替换算法
:当发生失效时,应替换哪一块?写策略
:当进行写访问时,应进行哪些操作?
3、地址映像方法有哪几种?它们各有什么优缺点?
全相联映射:
优点:Cache空间的利用率较高,块冲突率较低
缺点:
查找
机制复杂
,代价高
,速度慢
直接映射:
优点:查找的机制简单,速度
快
缺点:Cache空间利用率低,块冲突概率较高,因而Cache的失效率也高
- 组相联映射:是直接映射和全相联映射的一种
折中
4、写策略主要有哪两种?它们各有什么优点?
- 写直达: 易于实现,而且下一级存储器中的数据总是最新的
- 写回法:速度快,"写"操作能以Cache存储器的速度进行。而且对于同一单元的多个写最后只需写回下一级存储器,有些“写”只能到达Cache,不到达主存,因而所使用的的存储器频带较低
5、伪相联的基本思想是什么?
对伪相联Cache进行访问时,首先是与
直接映射
相同的方式进行访问,如果命中
,则从相应的块中取出所访问的数据送给cpu,访问结束,如果不命中
。伪相联Cache会检查Cache另一个位置
,看是否匹配,若这一块的标识匹配
,称伪命中;否则,只好访问下一级存储器。
- 当出现伪命中是,交换两个块的内容,把最近刚访问过的点放入第一位置(即按直接映像所对应的块上)
将两组对调的原因:这是根据局部性原理,刚访问过的块很可能就是下一次要访问的块
6、采用二级Cache的基本思想是什么?
通过在原有cache和存储器之间
增加另一级cache
,构成两级cache。把第一级cache做得足够小,使其速度和快速cpu的时钟周期相匹配。同时,把第二级cache做得足够大
时,使它捕获更多本来需要到存储器的访问
,从而降低
实际不命中开销。
7、采用容量小且结构简单的Cache有什么好处?
- 减少Cache命中时间。
- 足够小cache可以与处理机
做在同一芯片
上,以避免
因片外访问和增加时间开销。
8、“虚拟索引+物理标识” Cache的基本思想是什么?
- 直接使用
虚地址
中的页内位移
作为访问Cache的索引,但标识却是物理地址
。- cpu发出缓存请求后,再进行
虚->实地址
变化的同时可并行进行标识的读取
。- 在完成地址变化之后,再把得到的物理地址与标识进行
比较
。
补充考点:
1、多级存储器的设计目标
从CPU来看,改存储系统的速度接近与M1,而容量和每位价格接近与Mn
2、平均访存时间计算公式
, ,
平均访存时间=命中时间+失效率*失效开销
3、Cache块查找方法
- 通过查找目录表来实现
- 并行查找与顺序查找
- 并行查找的实现方法:相联存储器
重点例题:
计算公式:
平均访存时间计算公式(见上)
CPU时间计算公式
第七章:互连函数
名词解释:
7.1 互连网络: 是一种由
开关元件
按照一定的拓扑结构和
控制方式构成的网络,用来实现计算机系统中节点之间的相互连接
7.2互连函数:反映了网络输入端数组和输出端数组之间对应的置换关系或排列关系
用变量x表示输入,用
函数f(x)
表示输出
7.3网络直径: 互连网络中任意两个节点之间的距离的
最大值
7.4网络规模: 互连网络中
节点的个数
7.5 静态互连网络: 各节点之间有
固定
的连接通路,且运行中不能改变
的网络
7.6动态互连网络: 由
交换开关
构成、可按运行程序的要求动态
地改变连接状态的网络
补充考点:
1、互联网络的三大要素
- 互联结构
- 开关元件
- 控制方式
等分宽度b:把由N个节点构成的网络切成节点数相同的两半,在各种切法中,沿切口边数的最小值称为该网络的等分宽度。
2、常见互联网络的特性:
超立方体(考选择题)
- 是一种二元n-立方体结构
- 只要把两个(n-1)立方体中相对应的节点用链路连接起来,就可形成规模为的n-立方体,共需要条链路
线性阵列
N个结点用N-1条链路连成一行,内部节点的度d=2,端节点度d=1,直径D=N-1,等分宽度b=1
环和带弦环
用一条链路将线性阵列的两个端节点连接起来即可得到换。双向环的网络直径D=N/2,单向环的网络直径D=N-2。环的等分宽度b=2
循环移数网络
网络节点度d=2n-1,直径D=n/2,网络规模
树形和星形
完全二叉树:节点度d=3,直径,等分宽度b=1
星形:d=N-1,直径D=2,等分宽度b=N/2(向下取整)
网格形和环网形
一个规模为N=n×n的2维网格形网络:内部结点的度d=4,边结点的度d=3,角结点的度d=2,网络直径D=2 *(n-1),等分宽度b=n
一个n×n的环网形网,结点度:4,网络直径:2×(n/2)(向下取整),等分宽度b=2n
3、2*2开关的4种连接方式,开关模块的3种控制方式
- 4种连接方式:
直送、交换、上播、下播
- 开关模块3种控制方式
- 级控制:每一级的所有开关只用一个控制信息进行控制,这些开关只能同时处于同一种状态
- 单元控制:每一个开关都有一个独立的控制信号,可各自处于不同的状态
- 部件级控制:第级的所有开关分别用个信号控制
4、总线网络、交叉开关网络、多级互连网络
重点例题:
- (即对取反)
- 最高位和最低位互换;低k位中的最高位和最低位互换;高k位的最高位和最低位互换
- 所有次序颠倒;低k位中次序颠倒;:高k位中次序颠倒
第八章:多处理机
名词解释:
8.1 集中式共享多处理机: 它一般由几十个处理器构成,各处理器共享一个集中式的物理存储器。因为只有单一的主存,而且这个主存相对于各处理器的关系是
对称
的,也称为对称式共享多处理机
8.2分布式共享多处理机: 它的共享存储器分布在各台处理机中,每台处理机
都带有自己的本地存储器
,组成一个“处理机-存储器”单元
,但是这些分布各台处理机中的实际存储又合在一起统一编址
,在逻辑上组成一个共享存储器。这些处理机存储器单元通过互连网络连接在一起,每台处理机又能访问除
本地存储器外,还能通过互连网直接访问在其他
处理机存储单元中的远程存储器。
8.3多Cache一致性: 如果允许共享数据进入Cache,那么就可能出现多个处理器的Cache中都有统一存储块的副本,当其中某个处理器对其Cache中的数据进行修改后,就会使得其Cache中的数据与其他Cache中的数据不一致。这就是多处理机的Cache一致性问题。要保证多个副本的数据是一致的。
8.4写作废协议: 处理器在进行
写入
操作之前,把所有其他cache中的副本全部作废
8.5写更新协议: 当某处理器对某数据项进行
写入
时,他把该数据广播
给所有其他cache。这些Cache用新数据对其中的副本进行更新。当然,如果知道其他Cache中都没有相应的副本,就不必广播和更新。
简答题:
1、在分布式存储器结构的机器中,将存储器分布到各结点有什么好处?
- 如果大多数的访存都是针对本地结点的存储器进行的,则可以降低对存储器和互连网络的带宽要求
- 对本地存储器的访问延迟时间小
2、在分布式存储器结构的机器中,目前有哪两种存储器地址空间的组织方案?
- 把物理上分离的所有存储器作为一个
统一的共享逻辑空间
进行标志,这样任何一个处理器都可以访问该共享空间中的任何一个单元,不同处理器上的同一物理地址指向的是同一个存储单元。这类计算机的系统背称为分布式共享存储器系统。- 把每个节点的存储器编址为一个
独立的地址空间
,不同节点中的地址空间之间是相互独立的。也就是说整个系统的地址空间是由多个独立的地址空间构成的。每个节点的存储器只能由本地处理器访问,远程处理器不能直接对其进行访问。
3、在分布式存储器结构的机器中,对应于两种地址空间的组织方案,分别有哪两种通信机制?它们是怎么实现的?
共享存储器通信机制(对于共享地址空间的计算机系统来说)
处理器之间通过
load和store指令
对相同存储器地址进行读/写操作来实现的。消息传递通信机制(对于采用多个独立地址空间的计算机系统来说)
数据通信要通过处理器之间
显式地传递消息
来完成,这称为消息传递通信机制。
4、实现Cache一致性协议时,有哪两种跟踪共享数据状态的技术?
目录协议:物理存储器中数据块的共享状态被保存在一个称为目录的地方。目录协议的实现开销比监听协议的稍微大一些,但可用于实现更大规模的多处理机。
监听协议:当物理存储器中的数据被调入Cache时,其共享状态信息与该数据块一起放在该Cache中。系统没有集中的状态表。这些Cache通常连在共享存储器的总线上。当某个Cache需要访问存储器时,它会把请求放到总线上广播出去,其他各个Cache控制器通过监听总线来判断他们是否有总线上请求的数据块。如果有,就进行相应的操作。
5、目录协议中,Cache块有哪三种状态?
- 共享(S): 该块在
一个或多个
处理机上具有这个块的副本,且这些副本与存储器中的块相同。- 未缓冲(U): 该块尚未调入Cache。所有处理器的Cache中都没有这个块的副本。
- 独占(E) :
仅有一个
处理机上有这个块的副本,且该处理机已经对其进行了写操作,而存储器中该块的数据已过时。这个处理机称为该块的拥有者。
补充考点:
1、依据存储器结构对多处理机进行分类:
- 对称式共享存储器多处理机
- 分布式存储器多处理机