程序的访存特性 ·时间局部性temporal locality 空间局部性 最近的访问项(指令/数据)很可能在不 久的将来再次被访问 Address n loop iterations ·频繁访问某个地址 Instruction 一策略:保留data,复用 fetches ·内存地址不一定集中! subroutine subroutine 空间局部性spatial locality Stack call return 一个进程访问的访问项其地址彼此相邻 accesses argument access ·往往会访问在存储器空间的同一区域 策略:保留data及其相邻者,预取 Data yector access 0 ·内存地址连续! accesses 。 scalar accesses 0 例:时间局部性?空间局部性? Time for i:=0to 10000 do A0=0; Typical Access Address Pattern ·时空局部性实现:内存分块 时间局部性程序的访存特性 • 时间局部性temporal locality – 最近的访问项(指令/数据)很可能在不 久的将来再次被访问 • 频繁访问某个地址 – 策略:保留data,复用 • 内存地址不一定集中! • 空间局部性spatial locality – 一个进程访问的访问项其地址彼此相邻 • 往往会访问在存储器空间的同一区域 – 策略:保留data及其相邻者,预取 • 内存地址连续! • 例:时间局部性?空间局部性? – for i := 0 to 10000 do A[i] := 0; • 时空局部性实现:内存分块 Typical Access Address Pattern 空间局部性 时间局部性