第4章存储层次结构设计 存储层次结构 Cache基本知识 基本的 Cache优化方法 ·高级的 Cache优化方法 存储器技术与优化 虚拟存储器-基本原理 2021/2/11 计算机体系结构
第4章 存储层次结构设计 • 存储层次结构 • Cache基本知识 • 基本的Cache优化方法 • 高级的Cache优化方法 • 存储器技术与优化 • 虚拟存储器-基本原理 2021/2/11 计算机体系结构 2
存储层次结构 存储系统设计是计算机体系结构设计的关键问题之 价格,容量,速度的权衡 用户对存储器的“容量,价格和速度”要求是相互矛盾的 速度越快,每位价格就高 容量越大,每位价格就低 容量越大,速度就越慢 目前主存一般由DRAM构成 Micr。 processor与 Memory之间的性能差异越来越大 cPU性能提高大约60%/year DRAM性能提高大约9%/ear 2021/2/11 计算机体系结构
存储层次结构 • 存储系统设计是计算机体系结构设计的关键问题之一 – 价格,容量,速度的权衡 • 用户对存储器的“容量,价格和速度”要求是相互矛盾的 – 速度越快,每位价格就高 – 容量越大,每位价格就低 – 容量越大,速度就越慢 – 目前主存一般由DRAM构成 • Microprocessor与Memory之间的性能差异越来越大 – CPU性能提高大约60%/year – DRAM 性能提高大约 9%/year 2021/2/11 计算机体系结构 3
Trends in Dram Year Ch Ip Bus DRAM Type Latency Produced Si Ize Cycle New Request 1980 64 Kbit Asynchronous DRAM 250ns 1983 256 Kbit Asynchronous dRAM 190ns 1986 1 Mbit Asynchronous DRAM 140ns 1989 4 Mbit Asynchronous DRAM 110ns 1992 16 Mbit Asynchronous DRAM 90 ns 1996 64 Mbit SDRAM 10 ns 70 ns 1998 128 Mbit SDRAM 7.5 ns 60 ns 2000 256 Mbit DDR SDRAM 6 ns 55 ns 2002 512 Mbit DDR SDRAM 5 ns 55 ns 2004 1 Gbit DDR2 SDRAM 3 ns 50 ns 2006 2 Gbit DDR2 SDRAM 2ns 45 ns 2010 4 Gbit DDR3 SDRAM 1.5ns 37 ns 2012 8 Gbit DDR3 SDRAM 1 ns 31 ns
Trends in DRAM 2021/2/11 计算机体系结构 4
微处理器与DRAM的性能差异 rocessor-DRAM Memory Gap (latency) 100.000 10.000 Processor-Memory 1,000 Processor Performance Gap 100 Growing 10 Memory 国■■ 口口日口aa 1980198519901995200020052010 Year 2021/2/11 计算机体系结构
Processor-DRAM Memory Gap (latency) 微处理器与DRAM 的性能差异 2021/2/11 计算机体系结构 5 1 1 0 100 1,000 10,000 100,000 1980 1985 1990 1995 2000 2005 2010 Year Performance Memory Processor Processor-Memory Performance Gap Growing
Microprocessor-DRAM性能差异 ·利用 caches缓解微处理器与存储器性能上的差异 Microprocessor-DRAM性能差异 time of a full cache miss in instructions executed 1st Alpha: 340 ns 5ons= 68 clks x 2 or 136 instructions 2nd alpha: 266ns / 3.3 ns=80 clks x 4 or 320 instructions 3rd Alpha 180 ns/1.7 ns=108 cIks x 6 or 648 instructions 2021/2/11 计算机体系结构
Microprocessor-DRAM性能差异 • 利用caches缓解微处理器与存储器性能上的差异 • Microprocessor-DRAM 性能差异 – time of a full cache miss in instructions executed – 1st Alpha : 340 ns/5.0 ns = 68 clks x 2 or 136 instructions – 2nd Alpha :266 ns/3.3 ns = 80 clks x 4 or 320 instructions – 3rd Alpha :180 ns/1.7 ns =108 clks x 6 or 648 instructions 2021/2/11 计算机体系结构 6
存储系统的设计目标 Workload or Benchmark programs Processor reference stream <op, addr, <op, addr, <op, addr, <op, addr, op: i-fetch, read, write Memory 话过优化存储系统的组织来使得针对典型应 $ 用平均访存时同最短 MEM 2021/2/11 计算机体系结构
Processor $ MEM Memory reference stream , ,,, . . . op: i-fetch, read, write 通过优化存储系统的组织来使得针对典型应 用平均访存时间最短 Workload or Benchmark programs 存储系统的设计目标 2021/2/11 计算机体系结构 7
基本解决方法:多级层次结构 多级分层结构 Mn M2 CPU M1速度最快,容量最小,每位价格最高 Mn速度最慢,容量最大,每位价格最低 并行 ·存储系统接近M1的速度,容量和价格接近 Mn 2021/2/11 计算机体系结构
基本解决方法:多级层次结构 • 多级分层结构 – M1 速度最快,容量最小,每位价格最高 – Mn速度最慢,容量最大,每位价格最低 • 并行 • 存储系统接近M1的速度,容量和价格接近 Mn 2021/2/11 计算机体系结构 8 CPU M1 M2 Mn ………
计算机系统的多级存储层次 CPU Register CACHE cAcHE 3CACHE MEMORY lo device Server 300ps 1ns 3-10ns10-20ns50-100ns5-1ms 1000B 64KB 256K 2-4MB 4-16GB 4-16TB CPU Register LcACH CACH MEMORY yo device PMD 500ps 2ns1020ns5010062550s 500B 64KB256K256512MB48GB 2021/2/11 计算机体系结构
计算机系统的多级存储层次 2021/2/11 计算机体系结构 9 CPU Register MEMORY I/O device L1 C A C H E L2 C A C H E L3 C A C H E 300ps 1ns 3-10ns 10-20ns 50-100ns 5-10ms 1000B 64KB 256K 2-4MB 4-16GB 4-16TB CPU Register MEMORY I/O device L1 C A C H E L2 C A C H E 500ps 2ns 10-20ns 50-100ns 25-50μs 500B 64KB 256K 256-512MB 4-8GB Server PMD
典型的存储器访问模式 Address n loop iterations Instruction fetches ooO subroutine subroutine call Stack accesses Oo oO argument access o Data accesses scalar accesses o。OooO Time 2021/2/11 计算机体系结构
典型的存储器访问模式 2021/2/11 计算机体系结构 10
存储层次工作原理: Locality! 应用程序局部性原理:给用户 个采用低成本技术达到的存储容量.(容量大,价格低) 个采用高速存储技术达到的访问速度.(速度快) Temporal Locality(时间局部性): >保持最近访问的数据项最接近微处理器 Spatial Locality(空间局部性) 以由地址连续的若干个字构成的块为单位,从低层复制到上 层 Lower leve To Processor Upper Level Memory Mem BⅩ From processor BIk Y 2021/2/11 计算机体系结构
存储层次工作原理: Locality! • 应用程序局部性原理: 给用户 – 一个采用低成本技术达到的存储容量. (容量大,价格低) – 一个采用高速存储技术达到的访问速度.(速度快) • Temporal Locality (时间局部性): – =>保持最近访问的数据项最接近微处理器 • Spatial Locality (空间局部性): – 以由地址连续的若干个字构成的块为单位,从低层复制到上 一层 2021/2/11 计算机体系结构 11 Lower Level Upper Level Memory Memory To Processor From Processor Blk X Blk Y