典型的存储器访问模式 Address n loop iterations Instruction o。。 oo oO fetches 。。。。。 oooooo subroutine subroutine all ca Stack return accesses argument access Data accesses scalar accesses Time 2021-2-4 计算机体系结构
典型的存储器访问模式 2021-2-4 计算机体系结构 12
存储层次结构涉及的基本概念 Block Block:不同层次的 Block大小可能不同 命中和命中率 失效和失效率 镜像和一致性问题 高层存储器是较低层存储器的一个镜像 高层存储器内容的修改必须反映到低层存储器中 数据致性问题 寻址:不管如何组织,我们必须知道如何访问数据 要求:不同层次上块大小可以不同 在L0 cache可能以 Double, Words, Halfword,或 bytes 在L1 cache仅以 cache line或slot为单位访问 在更低层 因此总是存在地址映射问题 物理地址格式 Block frame address+ Block offset 2021-2-4 计算机体系结构
存储层次结构涉及的基本概念 • Block − Block : 不同层次的Block大小可能不同 − 命中和命中率 − 失效和失效率 • 镜像和一致性问题 − 高层存储器是较低层存储器的一个镜像 − 高层存储器内容的修改必须反映到低层存储器中 ü 数据一致性问题 • 寻址:不管如何组织,我们必须知道如何访问数据 • 要求:不同层次上块大小可以不同 − 在L0 cache 可能以Double, Words, Halfwords, 或bytes − 在L1cache仅以cache line 或 slot为单位访问 − 在更低层….. − 因此总是存在地址映射问题 − 物理地址格式 Block Frame Address + Block Offset 2021-2-4 计算机体系结构 13
存储层次的性能参数(1/2) 假设采用二级存储:M1和M2 M和M2的容量、价格、访问时间分别为 Lower level To Processor U Der lev el Memory mory BlkⅩ From processor Blk Y 2021-2-4 计算机体系结构 14
存储层次的性能参数(1/2) 假设采用二级存储:M1和M2 − M1和M2的容量、价格、访问时间分别为: S1 、 C1、TA1 S2、C2、TA2 2021-2-4 计算机体系结构 14 Lower Level Upper Level Memory Memory To Processor From Processor Blk X Blk Y
存储层次的性能参数(2/2) ·存储层次的平均每位价格C C=(C1*S1+C2*S2)(S1+S2) 命中Hit:访问的块在存储系统的较高层次上 若一组程序对存储器的访问,其中№1次在M1中找到所需数据,N2次在M2中找到数 据则 Hit rate(命中率):存储器访问在较高层命中的比例H=N/N1+N2) Hit Time(命中时间)访问较高层的时间,TA1 失效(Miss访问的块不在存储系统的较高层次上 Miss Rate(失效)=1-( Hit Rate)=1-H=N2/(N1+N) 当在M1中没有命中时:一般必须从M2中将所访问的数据所在块搬到M1中,然后 CPU才能在M1中访问 设传送一个块的时间为TB即不命中时的访问时间为:TA2+TB+TA1=TA1+TM TM通常称为失效开销 ·平均访存时间 平均访存时间TA=HTA1+(1-H)(TA1+TM=TA1+(1-H)TM 2021-2-4 计算机体系结构 15
存储层次的性能参数 (2/2) • 存储层次的平均每位价格C − C=(C1 *S1+C2 *S2)/(S1+S2) • 命中(Hit): 访问的块在存储系统的较高层次上 − 若一组程序对存储器的访问,其中N1次在M1中找到所需数据,N2次在M2中找到数 据 则 − Hit Rate(命中率): 存储器访问在较高层命中的比例 H= N1 /(N1+N2) − Hit Time(命中时间):访问较高层的时间,TA1 • 失效(Miss):访问的块不在存储系统的较高层次上 − Miss Rate (失效)= 1 - (Hit Rate) = 1 – H = N2/(N1+N2 ) − 当在M1中没有命中时:一般必须从M2中将所访问的数据所在块搬到M1中,然后 CPU才能在M1中访问。 − 设传送一个块的时间为TB,即不命中时的访问时间为:TA2+TB+TA1 = TA1+TM TM 通常称为失效开销 • 平均访存时间: − 平均访存时间 TA = HTA1+(1-H)(TA1+TM) = TA1+(1-H)TM 2021-2-4 计算机体系结构 15
常见的存储层次的组织 Registers <->Memory 由编译器完成调度 · cache<-> memory 由硬件完成调度 memory <-> dISkS 由硬件和操作系统(虚拟管理) 由程序员完成调度 2021-2-4 计算机体系结构
常见的存储层次的组织 • Registers <-> Memory − 由编译器完成调度 • cache <-> memory − 由硬件完成调度 • memory <-> disks − 由硬件和操作系统(虚拟管理) − 由程序员完成调度 2021-2-4 计算机体系结构 16