各種存儲器之間的關(guān)系,可以用我們在圖書館學習這個場景來理解佛猛。
CPU 可以比喻成我們的大腦惑芭,我們當前正在思考和處理的知識的過程,就好比 CPU 中的寄存器處理數(shù)據(jù)的過程继找,速度極快遂跟,但是容量很小。而 CPU 中的?L1-L3 Cache?好比我們大腦中的短期記憶和長期記憶婴渡,需要小小花費點時間來調(diào)取數(shù)據(jù)并處理幻锁。
我們面前的桌子就相當于內(nèi)存,能放下更多的書(數(shù)據(jù))边臼,但是找起來和看起來就要花費一些時間哄尔,相比 CPU Cache 慢不少。而圖書館的書架相當于硬盤柠并,能放下比內(nèi)存更多的數(shù)據(jù)岭接,但找起來就更費時間了,可以說是最慢的存儲器設(shè)備了臼予。
從 寄存器鸣戴、CPU Cache,到內(nèi)存粘拾、硬盤窄锅,這樣一層層下來的存儲器,訪問速度越來越慢缰雇,存儲容量越來越大入偷,價格也越來越便宜,而且每個存儲器只和相鄰的一層存儲器設(shè)備打交道械哟,于是這樣就形成了存儲器的層次結(jié)構(gòu)盯串。
再來回答,開頭的問題:那機械硬盤戒良、固態(tài)硬盤、內(nèi)存這三個存儲器冠摄,到底和?CPU L1 Cache?相比速度差多少倍呢糯崎?
CPU L1 Cache 隨機訪問延時是 1 納秒几缭,內(nèi)存則是 100 納秒,所以?CPU L1 Cache 比內(nèi)存快?100?倍左右沃呢。
SSD 隨機訪問延時是 150 微秒年栓,所以?CPU L1 Cache 比 SSD 快?150000?倍左右。
最慢的機械硬盤隨機訪問延時已經(jīng)高達 10 毫秒薄霜,我們來看看機械硬盤到底有多「龜速」:
SSD 比機械硬盤快 70 倍左右某抓;
內(nèi)存比機械硬盤快 100000 倍左右;
CPU L1 Cache 比機械硬盤快 10000000 倍左右惰瓜;
我們把上述的時間比例差異放大后否副,就能非常直觀感受到它們的性能差異了。如果 CPU 訪問 L1 Cache 的緩存時間是 1 秒崎坊,那訪問內(nèi)存則需要大約 2 分鐘备禀,隨機訪問 SSD 里的數(shù)據(jù)則需要 1.7 天,訪問機械硬盤那更久奈揍,長達近 4 個月曲尸。
可以發(fā)現(xiàn),不同的存儲器之間性能差距很大男翰,構(gòu)造存儲器分級很有意義另患,分級的目的是要構(gòu)造緩存體系。