并行存储器系统
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
如果在高速缓存中的一个字被修改过,那 么在所有更高层上该字的副本也必须立即或最 后加以修改 。
2.维护一致性的两种策略
(1)写直达(write-through,WT),即如果 在Mi(i=1,2,…,n-1)中修改了一个字,则 在Mi+1中需要立即修改。
(2)写回(write-back,WB),即如果在 Mi+1 中的修改延迟到Mi中正在修改的字被替换 时才进行。
成本(美分/KB) 18000
72
5.6
0.23
0.01
带宽(MB/S) 400-800 250-400 80-133
3-5
0.18-0.23
传送单位 字:4-8B 块:32B 页:0.5-1KB 文件:5- 后援存储器 512KB
分配管理 编译器分配 硬件控制 操作系统 操作系统/ 操作系统/
用户
存储器层次 第0层 第1层 第2层
第3层
第4层
特性 CPU寄存器 高速缓存 主存储器 磁盘存储器 磁带存储器
设备工艺 ECL SRAM DRAM 磁盘机 磁带机
存取时间 10ns 容量(字节) 512B
25-40ns 60-100ns 10-20ms 2-20min 128KB 512MB 60-228GB 512G-2TB
M1:高速缓存
CPU寄存器 字单位
……
a
……
块单位
M2:主存储器
a 页面A
页单位
M3:磁盘 存储器
M4:磁带机 后援存储器
a
b
页面A 页面B
段F
段单位
a
b
页面A 页面B
段F
b
a,b为高速缓存
块,32个字节
b 页面B
段G
段G
4.2.2 一致性(coherence)
1.一致性定义
同一个信息项与后继存储器层次的副本是 一致的。
用户
第四章 并行存储器系统
4.1 存储器系统的层次结构 4.2 包含性、一致性和局部性
4.2.1 包含性 4.2.2 一致性 4.2.3 局部性
4.3 存储器容量的规划 4.4 虚拟存储器技术 4.5 交叉访问的存储器
4.2 包含性、一致性和局部性
4.2.1 包含性(inclusion)
1. 包含性的定义 M0 M1 M2…… Mn
i1
f i { (1 h j )} h i j 1
n 1
f n
(1 h j )
Hale Waihona Puke Baidu
j 1
访问到最外层Mn时总是命中的
n
fi 1
i 1
通常情况下,有:
f1 f2 fn
这说明,访问内存比访问外存要多。
4.3.2 有效存取时间
每当发生缺失时,就要付出代价去访问较高 层次的存储器。这种缺失在Cache中称为块缺失。 在主存储器中称为缺页错(page fault),因为 块和页面是这些层次之间传送信息的单位。
n
Teff fiti h1t1(1h1)h2t2 i1
第四章 并行存储器系统
4.1 存储器系统的层次结构 4.2 包含性、一致性和局部性 4.3 存储器容量的规划
5.3.1 命中率 5.3.2 有效存取时间
4.4 虚拟存储器技术 4.5 交叉访问的存储器
4.3 存储器容量的规划
存储器层次结构的性能是由层次结构的有 效存取时间Teff决定的,它依赖于相继层 次的命中率和访问频率。
所有信息项最初存放在最外层Mn,在处 理过程中,它的子集复制到Mn-1,同样, Mn-1的子集复制到Mn-2,……
如果在Mi中找到一个信息字,那么同一个 字的复制品在所有的高层Mi+1,Mi+2,……, Mn中都一定可以找到。
2. 相邻层之间的数据传送单位
CPU高速缓存:字 高速缓存主存储器:块(每块32个字节 (8个字)) 主存磁盘:页面(比如每页4K字节,包 含128块) 磁盘磁带:段 包含性可以用下面的图来说明:
取
层2:M2
主存储器
成
时
本
间
层3:M3
磁盘存储器
增
增
加
加
层4:M4
磁带机
五个参数:
存取时间ti:从CPU到第i层存储器的往返时间 存储器容量Si:第i层的字节的数量 每字节成本Ci:第i层存储器的成本为CiSi 传输带宽bi:相邻层之间传送信息的速率 传输单位Xi:i和i+1层之间数据传送的粒度
对存储器系统中各层次存储器的特性,某统 计数据如下表:
4.2.3 局部性(locality)
Hennessy和Patterson(1990年)提出了一 条90-10规则:典型程序在10%的代码上可能 要耗费其执行时间的90%(例如嵌套循环操作 的最内层循环)。
时间局部性(temporal locality):最近 的访问项(指令或数据)很可能在不久的将来 再次被访问。即对最近使用区域的集中访问。
对Mi的访问频率为:
fi ( 1 h 1 )1 (h 2 ) ( 1 h i 1 ) h i
是指在较低层次有i-1次缺失而在Mi有一次 命中时访问Mi成功的概率。
n
fi 1, f1 h1
i1
fi ( 1 h 1 )1 (h 2 ) ( 1 h i 1 ) h i
f1 h1
CPU总是先访问M1
空间局部性(spatial locality):一个进程 访问的各项的地址彼此很近,例如,表操作或 数组操作含对地址空间中某一区域的集中访问。
顺序局部性(sequential locality):在典 型程序中,除非转移指令产生不按次序的转移 外,指令都是顺序执行的。
局部性原理指导我们去设计高速缓存、主存储器 以及虚拟存储器组织。
4.3.1 命中率
在Mi中找到一个信息项时,称之为命中,反 之称为缺失。
假定在层次结构中的存储器层次为Mi和Mi-1, 其中i=1,2,…,n。 在Mi层的命中率hi则是信息项可在Mi中找到的 概率。它是表示两个相邻层Mi-1和Mi特性的函数。 在Mi中的缺失率定义为1-hi。
相继层的命中率是存储器容量、管理策略 和程序行为的函数,它是独立的随机变量,其 值在0到1之间。我们假设h0=0和hn=1,这意 味着CPU总是先访问M1,并且访问到最外层 Mn时总是命中的。
高等计算机体系结构
第四章 并行存储器系统
4.1 存储器系统的层次结构 4.2 包含性、一致性和局部性 4.3 存储器容量的规划 4.4 虚拟存储器技术 4.5 交叉访问的存储器
4.1 存储器系统的层次结构
存储器系统的层次结构如下图所示:
容
层0:M0 CPU内的寄存器
量 和
层1:M1
高速缓存
每
存
位
2.维护一致性的两种策略
(1)写直达(write-through,WT),即如果 在Mi(i=1,2,…,n-1)中修改了一个字,则 在Mi+1中需要立即修改。
(2)写回(write-back,WB),即如果在 Mi+1 中的修改延迟到Mi中正在修改的字被替换 时才进行。
成本(美分/KB) 18000
72
5.6
0.23
0.01
带宽(MB/S) 400-800 250-400 80-133
3-5
0.18-0.23
传送单位 字:4-8B 块:32B 页:0.5-1KB 文件:5- 后援存储器 512KB
分配管理 编译器分配 硬件控制 操作系统 操作系统/ 操作系统/
用户
存储器层次 第0层 第1层 第2层
第3层
第4层
特性 CPU寄存器 高速缓存 主存储器 磁盘存储器 磁带存储器
设备工艺 ECL SRAM DRAM 磁盘机 磁带机
存取时间 10ns 容量(字节) 512B
25-40ns 60-100ns 10-20ms 2-20min 128KB 512MB 60-228GB 512G-2TB
M1:高速缓存
CPU寄存器 字单位
……
a
……
块单位
M2:主存储器
a 页面A
页单位
M3:磁盘 存储器
M4:磁带机 后援存储器
a
b
页面A 页面B
段F
段单位
a
b
页面A 页面B
段F
b
a,b为高速缓存
块,32个字节
b 页面B
段G
段G
4.2.2 一致性(coherence)
1.一致性定义
同一个信息项与后继存储器层次的副本是 一致的。
用户
第四章 并行存储器系统
4.1 存储器系统的层次结构 4.2 包含性、一致性和局部性
4.2.1 包含性 4.2.2 一致性 4.2.3 局部性
4.3 存储器容量的规划 4.4 虚拟存储器技术 4.5 交叉访问的存储器
4.2 包含性、一致性和局部性
4.2.1 包含性(inclusion)
1. 包含性的定义 M0 M1 M2…… Mn
i1
f i { (1 h j )} h i j 1
n 1
f n
(1 h j )
Hale Waihona Puke Baidu
j 1
访问到最外层Mn时总是命中的
n
fi 1
i 1
通常情况下,有:
f1 f2 fn
这说明,访问内存比访问外存要多。
4.3.2 有效存取时间
每当发生缺失时,就要付出代价去访问较高 层次的存储器。这种缺失在Cache中称为块缺失。 在主存储器中称为缺页错(page fault),因为 块和页面是这些层次之间传送信息的单位。
n
Teff fiti h1t1(1h1)h2t2 i1
第四章 并行存储器系统
4.1 存储器系统的层次结构 4.2 包含性、一致性和局部性 4.3 存储器容量的规划
5.3.1 命中率 5.3.2 有效存取时间
4.4 虚拟存储器技术 4.5 交叉访问的存储器
4.3 存储器容量的规划
存储器层次结构的性能是由层次结构的有 效存取时间Teff决定的,它依赖于相继层 次的命中率和访问频率。
所有信息项最初存放在最外层Mn,在处 理过程中,它的子集复制到Mn-1,同样, Mn-1的子集复制到Mn-2,……
如果在Mi中找到一个信息字,那么同一个 字的复制品在所有的高层Mi+1,Mi+2,……, Mn中都一定可以找到。
2. 相邻层之间的数据传送单位
CPU高速缓存:字 高速缓存主存储器:块(每块32个字节 (8个字)) 主存磁盘:页面(比如每页4K字节,包 含128块) 磁盘磁带:段 包含性可以用下面的图来说明:
取
层2:M2
主存储器
成
时
本
间
层3:M3
磁盘存储器
增
增
加
加
层4:M4
磁带机
五个参数:
存取时间ti:从CPU到第i层存储器的往返时间 存储器容量Si:第i层的字节的数量 每字节成本Ci:第i层存储器的成本为CiSi 传输带宽bi:相邻层之间传送信息的速率 传输单位Xi:i和i+1层之间数据传送的粒度
对存储器系统中各层次存储器的特性,某统 计数据如下表:
4.2.3 局部性(locality)
Hennessy和Patterson(1990年)提出了一 条90-10规则:典型程序在10%的代码上可能 要耗费其执行时间的90%(例如嵌套循环操作 的最内层循环)。
时间局部性(temporal locality):最近 的访问项(指令或数据)很可能在不久的将来 再次被访问。即对最近使用区域的集中访问。
对Mi的访问频率为:
fi ( 1 h 1 )1 (h 2 ) ( 1 h i 1 ) h i
是指在较低层次有i-1次缺失而在Mi有一次 命中时访问Mi成功的概率。
n
fi 1, f1 h1
i1
fi ( 1 h 1 )1 (h 2 ) ( 1 h i 1 ) h i
f1 h1
CPU总是先访问M1
空间局部性(spatial locality):一个进程 访问的各项的地址彼此很近,例如,表操作或 数组操作含对地址空间中某一区域的集中访问。
顺序局部性(sequential locality):在典 型程序中,除非转移指令产生不按次序的转移 外,指令都是顺序执行的。
局部性原理指导我们去设计高速缓存、主存储器 以及虚拟存储器组织。
4.3.1 命中率
在Mi中找到一个信息项时,称之为命中,反 之称为缺失。
假定在层次结构中的存储器层次为Mi和Mi-1, 其中i=1,2,…,n。 在Mi层的命中率hi则是信息项可在Mi中找到的 概率。它是表示两个相邻层Mi-1和Mi特性的函数。 在Mi中的缺失率定义为1-hi。
相继层的命中率是存储器容量、管理策略 和程序行为的函数,它是独立的随机变量,其 值在0到1之间。我们假设h0=0和hn=1,这意 味着CPU总是先访问M1,并且访问到最外层 Mn时总是命中的。
高等计算机体系结构
第四章 并行存储器系统
4.1 存储器系统的层次结构 4.2 包含性、一致性和局部性 4.3 存储器容量的规划 4.4 虚拟存储器技术 4.5 交叉访问的存储器
4.1 存储器系统的层次结构
存储器系统的层次结构如下图所示:
容
层0:M0 CPU内的寄存器
量 和
层1:M1
高速缓存
每
存
位