記憶體階層是在電腦架構下儲存系統階層的排列順序。每一層於下一層相比都擁有較高的速度和較低延遲性,以及較小的容量(也有少量例外,如AMD早期的Duron CPU)。大部分現今的中央處理器的速度都非常的快。大部分程式工作量需要記憶體存取。由於快取的效率和記憶體傳輸位於階層中的不同等級,所以實際上會限制處理的速度,導致中央處理器花費大量的時間等待記憶體I/O完成工作。
大部分電腦中的記憶體階層如下四層:
- 暫存器–可能是最快的存取。在32位處理器,每個暫存器就是32位。x86處理器共有16個暫存器。
- 快取(L1-L3:SRAM、L4:DRAM)
- 第一級快取(L1)–通常存取只需要幾個週期,通常是幾十個KB。
- 第二級快取(L2)–比L1約有2到10倍較高延遲性,通常是幾百個KB或更多。
- 第三級快取(L3)–比L2更高的延遲性,通常有數MB之大。
- 第四級快取(L4)(不一定有)–CPU外部的DRAM,但速度較主記憶體高。
- 主記憶體(DRAM)–存取需要幾百個週期,可以大到數十GB。
- 磁碟儲存–需要成千上萬個週期,容量非常大。
參考