正在加载图片...
6.10假设在一个计算机系统中 (1)每页为32KB, Cache块大小为128字节: (2)对应新页的地址不在 Cache中,CPU不访问新页中的数据 (3) Cache中95%的被替换块将再次被读取,并引起一次失效 (4) Cache使用写回方法,平均60%的块修改过 (5)I/0系统缓冲能够存储一个 Cache完整的块(这称为速度匹配缓冲区,使存储器 和I/0的速度得到匹配) (6)访问或失效在所有的 Cache中均匀分布 (7)在CPU和I/0之间,没有其它访问 Cache的干扰 (8)无I/0时,每100万个时钟周期中,有18000次失效 (9)失效开销是40个时钟周期。如果替换块被修改过,则再加上30个周期用于写 回主存 (10)假设机器平均每200万周期处理1页。 分析I/0对于性能的影响有多大? 解:每个主存页有32K/128=256块。 因为是按块传输,所以I/0传输本身并不引起 Cache失效。但是它可能要替换 ache中的有效块。如果这些被替换块中有60%是被修改过的,将需要(256×60%) ×30=4608个时钟周期将这些被修改过的块写回主存 这些被替换出去的块中,有95%的后继需要访问,从而产生95%×256=244次 失效,将再次发生替换。由于这次被替换的244块中数据是从I/0直接写入 Cache 的,因此所有块都为被修改块,需要写回主存(因为CPU不会直接访问从I/0来的 新页中的数据,所以它们不会立即从主存中调入 Cache),需要时间是244×(40+ 30)=17080个时钟周期 没有1/0时,每一页平均使用200万个时钟周期, Cache失效36000次,其中 60%被修改过,所需的处理时间为 (36000×40%)×40+(36000×60%)×(40+30)=2088000(时钟周期) 时钟I/0造成的额外性能损失比例为 (4608+17080)÷(2000000+2088000)=0.53% 即大约产生0.53%的性能损失 体系结构6-2体系结构 6-2 6.10 假设在一个计算机系统中: (1) 每页为 32KB,Cache 块大小为 128 字节; (2) 对应新页的地址不在 Cache 中,CPU 不访问新页中的数据; (3) Cache 中 95%的被替换块将再次被读取,并引起一次失效; (4) Cache 使用写回方法,平均 60%的块修改过; (5) I/O 系统缓冲能够存储一个 Cache 完整的块(这称为速度匹配缓冲区,使存储器 和 I/O 的速度得到匹配); (6) 访问或失效在所有的 Cache 中均匀分布; (7) 在 CPU 和 I/O 之间,没有其它访问 Cache 的干扰; (8) 无 I/O 时,每 100 万个时钟周期中,有 18000 次失效; (9) 失效开销是 40 个时钟周期。如果替换块被修改过,则再加上 30 个周期用于写 回主存; (10)假设机器平均每 200 万周期处理 1 页。 分析 I/O 对于性能的影响有多大? 解:每个主存页有 32K/128=256 块。 因为是按块传输,所以 I/O 传输本身并不引起 Cache 失效。但是它可能要替换 Cache 中的有效块。如果这些被替换块中有 60%是被修改过的,将需要(256×60%) ×30=4608 个时钟周期将这些被修改过的块写回主存。 这些被替换出去的块中,有 95%的后继需要访问,从而产生 95%×256=244 次 失效,将再次发生替换。由于这次被替换的 244 块中数据是从 I/O 直接写入 Cache 的,因此所有块都为被修改块,需要写回主存(因为 CPU 不会直接访问从 I/O 来的 新页中的数据,所以它们不会立即从主存中调入 Cache),需要时间是 244×(40+ 30)=17080 个时钟周期。 没有 I/O 时,每一页平均使用 200 万个时钟周期,Cache 失效 36000 次,其中 60%被修改过,所需的处理时间为: (36000×40%)×40+(36000×60%)×(40+30)=2088000(时钟周期) 时钟 I/O 造成的额外性能损失比例为 (4608+17080)÷(2000000+2088000)=0.53% 即大约产生 0.53%的性能损失
<<向上翻页
©2008-现在 cucdc.com 高等教育资讯网 版权所有