AVt天堂网 手机版,亚洲va久久久噜噜噜久久4399,天天综合亚洲色在线精品,亚洲一级Av无码毛片久久精品

當前位置:首頁 > 科技  > 軟件

程序員都要懂的~計算機的存儲器架構

來源: 責編: 時間:2023-08-09 23:03:29 281觀看
導讀大家都知道內存和硬盤都屬于計算機的存儲設備,斷電后內存的數據是會丟失的,而硬盤則不會,因為硬盤是持久化存儲設備,同時也是一個 I/O 設備。其實 CPU 內部也有存儲數據的組件,比如寄存器、CPU L1/L2/L3 Cache 也都是屬于

大家都知道內存和硬盤都屬于計算機的存儲設備,斷電后內存的數據是會丟失的,而硬盤則不會,因為硬盤是持久化存儲設備,同時也是一個 I/O 設備。T1D28資訊網——每日最新資訊28at.com

其實 CPU 內部也有存儲數據的組件,比如寄存器、CPU L1/L2/L3 Cache 也都是屬于存儲設備,只不過它們能存儲的數據非常小,但是它們因為靠近 CPU 核心,所以訪問速度都非常快,快過硬盤好幾個數量級別。T1D28資訊網——每日最新資訊28at.com

問題來了,那機械硬盤、固態硬盤、內存這三個存儲器,到底和 CPU L1 Cache 相比速度差多少倍呢?T1D28資訊網——每日最新資訊28at.com

在回答這個問題之前,我們先來看看「存儲器的層次結構」,好讓我們對存儲器設備有一個整體的認識。T1D28資訊網——每日最新資訊28at.com

T1D28資訊網——每日最新資訊28at.com

存儲器的層次結構

我們想象中一個場景,程序汪小劉同學準備轉行了,在準備法考,為了營造氣氛,就去附近自習室學習。那么,在看書的時候,我們的大腦會思考問題,也會記憶考點,另外我們通常也會把常用的書放在自己的桌子上,當我們要找一本不常用的書,則會回家去拿或者去附近的圖書館找一找。T1D28資訊網——每日最新資訊28at.com

就是這么一個場景,已經把計算機的存儲結構基本都涵蓋了。T1D28資訊網——每日最新資訊28at.com

我們可以把 CPU 比喻成我們的大腦,大腦正在思考的東西,就好比 CPU 中的寄存器,處理速度是最快的,但是能存儲的數據也是最少的 。T1D28資訊網——每日最新資訊28at.com

我們大腦中的記憶,就好比 CPU Cache,中文稱為 CPU 高速緩存,處理速度相比寄存器慢了一點,但是能存儲的數據也稍微多了一些。T1D28資訊網——每日最新資訊28at.com

CPU Cache 通常會分為 L1、L2、L3 三層,L1 是距離 CPU 最近的,因此它比 L2、L3 的讀寫速度都快、存儲空間都小。我們大腦中短期記憶,就好比 L1 Cache,而長期記憶就好比 L2/L3 Cache。T1D28資訊網——每日最新資訊28at.com

寄存器和 CPU Cache 都是在 CPU 內部,跟 CPU 挨著很近,因此它們的讀寫速度都相當的快,但是能存儲的數據很少,畢竟 CPU 就這么丁點大。T1D28資訊網——每日最新資訊28at.com

再來看看 CPU 外部的存儲器。T1D28資訊網——每日最新資訊28at.com

當我們大腦記憶中沒有資料的時候,可以從書桌拿書來閱讀,那我們桌子上的書,就好比內存,我們雖然可以一伸手就可以拿到,但讀寫速度肯定遠慢于寄存器,T1D28資訊網——每日最新資訊28at.com

那圖書館里資料或者在家里的書,就好比硬盤,能存儲的數據非常大,但是讀寫速度相比內存差好幾個數量級,更別說跟寄存器的差距了。T1D28資訊網——每日最新資訊28at.com

T1D28資訊網——每日最新資訊28at.com

對于存儲器,它的速度越快、能耗會越高、而且材料的成本也是越貴的,以至于速度快的存儲器的容量都比較小。T1D28資訊網——每日最新資訊28at.com

存儲器通常可以分為這么幾個級別:T1D28資訊網——每日最新資訊28at.com

  • 寄存器;
  • CPU Cache;
  1. L1-Cache;
  2. L2-Cache;
  3. L3-Cahce;
  • 內存;
  • SSD/HDD 硬盤

寄存器

最靠近 CPU 的控制單元和邏輯計算單元的存儲器,就是寄存器了,它使用的材料速度也是最快的,因此價格也是最貴的,那么數量不能很多。T1D28資訊網——每日最新資訊28at.com

寄存器的數量通常在幾十到幾百之間,每個寄存器可以用來存儲一定的字節(byte)的數據。比如:T1D28資訊網——每日最新資訊28at.com

  • 32 位 CPU 中大多數寄存器可以存儲 4 個字節;
  • 64 位 CPU 中大多數寄存器可以存儲 8 個字節。

寄存器的訪問速度非常快,一般要求在半個 CPU 時鐘周期內完成讀寫,CPU 時鐘周期跟 CPU 主頻息息相關,T1D28資訊網——每日最新資訊28at.com

舉個例子,主頻為3.0GHZ的CPU,一個時鐘周期大約是0.3納秒,內存訪問大約需要120納秒,固態硬盤訪問大約需要50-150微秒,機械硬盤訪問大約需要1-10毫秒,最后網絡訪問最慢,得幾十毫秒左右。 這個大家可能對時間不怎么敏感,那如果我們把一個時鐘周期如果按1秒算的話,內存訪問大約就是6分鐘 ,固態硬盤大約是2-6天 ,傳統硬盤大約是1-12個月,網絡訪問就得幾年了!T1D28資訊網——每日最新資訊28at.com

CPU Cache

CPU Cache 用的是一種叫 SRAM(Static Random-Access Memory,靜態隨機存儲器) 的芯片。T1D28資訊網——每日最新資訊28at.com

SRAM 之所以叫「靜態」存儲器,是因為只要有電,數據就可以保持存在,而一旦斷電,數據就會丟失了。T1D28資訊網——每日最新資訊28at.com

CPU 的高速緩存,通常可以分為 L1、L2、L3 這樣的三層高速緩存,也稱為一級緩存、二級緩存、三級緩存。T1D28資訊網——每日最新資訊28at.com

T1D28資訊網——每日最新資訊28at.com

部件T1D28資訊網——每日最新資訊28at.com

CPU訪問所需時間T1D28資訊網——每日最新資訊28at.com

介紹T1D28資訊網——每日最新資訊28at.com

L1 高速緩存T1D28資訊網——每日最新資訊28at.com


T1D28資訊網——每日最新資訊28at.com

2~4 個時鐘周期T1D28資訊網——每日最新資訊28at.com


T1D28資訊網——每日最新資訊28at.com

L1 高速緩存訪問速度幾乎和寄存器一樣快,大小在幾十 KB 到幾百 KB 不等。T1D28資訊網——每日最新資訊28at.com

每個 CPU 核心都有一塊屬于自己的 L1 高速緩存,指令和數據在 L1 是分開存放的,所以 L1 高速緩存通常分成指令緩存和數據緩存。T1D28資訊網——每日最新資訊28at.com

L2 高速緩存T1D28資訊網——每日最新資訊28at.com


T1D28資訊網——每日最新資訊28at.com

10~20 個時鐘周期T1D28資訊網——每日最新資訊28at.com

L2 高速緩存同樣每個 CPU 核心都有,但是 L2 高速緩存位置比 L1 高速緩存距離 CPU 核心 更遠,它大小比 L1 高速緩存更大,CPU 型號不同大小也就不同,通常大小在幾百 KB 到幾 MB 不等,訪問速度則更慢T1D28資訊網——每日最新資訊28at.com

L3 高速緩存T1D28資訊網——每日最新資訊28at.com


T1D28資訊網——每日最新資訊28at.com

20~60個時鐘周期T1D28資訊網——每日最新資訊28at.com

L3 高速緩存通常是多個 CPU 核心共用的,位置比 L2 高速緩存距離 CPU 核心 更遠,大小也會更大些,通常大小在幾 MB 到幾十 MB 不等,具體值根據 CPU 型號而定T1D28資訊網——每日最新資訊28at.com

內存

內存用的芯片和 CPU Cache 有所不同,它使用的是一種叫作 DRAM (Dynamic Random Access Memory,動態隨機存取存儲器) 的芯片。T1D28資訊網——每日最新資訊28at.com

相比 SRAM,DRAM 的密度更高,功耗更低,有更大的容量,而且造價比 SRAM 芯片便宜很多。T1D28資訊網——每日最新資訊28at.com

DRAM 存儲一個 bit 數據,只需要一個晶體管和一個電容就能存儲,但是因為數據會被存儲在電容里,電容會不斷漏電,所以需要「定時刷新」電容,才能保證數據不會被丟失,這就是 DRAM 之所以被稱為「動態」存儲器的原因,只有不斷刷新,數據才能被存儲起來。T1D28資訊網——每日最新資訊28at.com

DRAM 的數據訪問電路和刷新電路都比 SRAM 更復雜,所以訪問的速度會更慢,內存速度大概在 200~300 個 時鐘周期之間。T1D28資訊網——每日最新資訊28at.com

SSD/HDD 硬盤

SSD(Solid-state disk) 就是我們常說的固體硬盤,結構和內存類似,但是它相比內存的優點是斷電后數據還是存在的,而內存、寄存器、高速緩存斷電后數據都會丟失。內存的讀寫速度比 SSD 大概快 10~1000 倍。T1D28資訊網——每日最新資訊28at.com

當然,還有一款傳統的硬盤,也就是機械硬盤(Hard Disk Drive, HDD),它是通過物理讀寫的方式來訪問數據的,因此它訪問速度是非常慢的,它的速度比內存慢 10W 倍左右。T1D28資訊網——每日最新資訊28at.com

由于 SSD 的價格快接近機械硬盤了,因此機械硬盤已經逐漸被 SSD 替代了。T1D28資訊網——每日最新資訊28at.com


存儲器的層次關系

T1D28資訊網——每日最新資訊28at.com

現代的一臺計算機,都用上了 CPU Cahce、內存、到 SSD 或 HDD 硬盤這些存儲器設備了。存儲空間越大的存儲器設備,其訪問速度越慢,所需成本也相對越少。T1D28資訊網——每日最新資訊28at.com

CPU 并不會直接和每一種存儲器設備直接打交道,而是每一種存儲器設備只和它相鄰的存儲器設備打交道。比如,CPU Cache 的數據是從內存加載過來的,寫回數據的時候也只寫回到內存,CPU Cache 不會直接把數據寫到硬盤,也不會直接從硬盤加載數據,而是先加載到內存,再從內存加載到 CPU Cache 中。T1D28資訊網——每日最新資訊28at.com

T1D28資訊網——每日最新資訊28at.com

所以,存儲層次結構也形成了緩存的體系。T1D28資訊網——每日最新資訊28at.com

價格和性能的權衡

前面我們知道了,速度越快的存儲器,造價成本往往也越高,那我們就以實際的數據來看看,不同層級的存儲器之間的性能和價格差異。T1D28資訊網——每日最新資訊28at.com

下面這張表格是不同層級的存儲器之間的成本對比圖:T1D28資訊網——每日最新資訊28at.com

T1D28資訊網——每日最新資訊28at.com

你可以看到 L1 Cache 的訪問延時是 1 納秒,而內存已經是 100 納秒了,相比 L1 Cache 速度慢了 100 倍。另外,機械硬盤的訪問延時更是高達 10 毫秒,相比 L1 Cache 速度慢了 10000000 倍,差了好幾個數量級別。T1D28資訊網——每日最新資訊28at.com

在價格上,每生成 MB 大小的 L1 Cache 相比內存貴了 466 倍,相比機械硬盤那更是貴了 175000 倍。在某東逛了下各個存儲器設備的零售價,8G 內存 + 1T 機械硬盤 + 256G 固態硬盤的總價格,都不及一塊 Intle i5-10400 的 CPU 的價格,這款 CPU 的高速緩存的總大小也就十多 MB。T1D28資訊網——每日最新資訊28at.com

總結

機械硬盤、固態硬盤、內存這三個存儲器,到底和 CPU L1 Cache 相比速度差多少倍呢?T1D28資訊網——每日最新資訊28at.com

CPU L1 Cache 隨機訪問延時是 1 納秒,內存則是 100 納秒,所以 CPU L1 Cache 比內存快 100 倍左右。T1D28資訊網——每日最新資訊28at.com

SSD 隨機訪問延時是 150 微秒,所以 CPU L1 Cache 比 SSD 快 150000 倍左右。T1D28資訊網——每日最新資訊28at.com

最慢的機械硬盤隨機訪問延時已經高達 10 毫秒,我們來看看機械硬盤到底有多「龜速」:T1D28資訊網——每日最新資訊28at.com

  • SSD 比機械硬盤快 70 倍左右;
  • 內存比機械硬盤快 100000 倍左右;
  • CPU L1 Cache 比機械硬盤快 10000000 倍左右;

我們把上述的時間比例差異放大后,就能非常直觀感受到它們的性能差異了。如果 CPU 訪問 L1 Cache 的緩存時間是 1 秒,那訪問內存則需要大約 2 分鐘,隨機訪問 SSD 里的數據則需要 1.7 天,訪問機械硬盤那更久,長達近 4 個月。T1D28資訊網——每日最新資訊28at.com

可以發現,不同的存儲器之間性能差距很大,構造存儲器分級很有意義,分級的目的是要構造緩存體系。T1D28資訊網——每日最新資訊28at.com

題外話

由于CPU速度非常快,且價框非常是責,我們必須得充分壓榨CPU,得像生產隊的護一樣,讓它不隔地工作。
為了合理利用CPU的高性期,同時盡可能地節約成本。現代計算機格這些存儲器充分的結合起來,由于這些硬件的數據存取速度差異導改了計算機系統編程中的各種問題:有序性、可見性、原子性等。T1D28資訊網——每日最新資訊28at.com

本文鏈接:http://www.tebozhan.com/showinfo-26-5183-0.html程序員都要懂的~計算機的存儲器架構

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: TIOBE 8 月榜單:Julia 首次進入前 20 名

下一篇: 再見pip & conda!管理Python依賴關系的更好的選擇:Poetry

標簽:
  • 熱門焦點
  • Redmi Buds 4開箱簡評:才199還有降噪 可以無腦入

    在上個月舉辦的Redmi Note11T Pro系列新機發布會上,除了兩款手機新品之外,Redmi還帶來了兩款TWS真無線藍牙耳機產品,Redmi Buds 4和Redmi Buds 4 Pro,此前我們在Redmi Note11T
  • vivo TWS Air開箱體驗:真輕 臻好聽

    在vivo S15系列新機的發布會上,vivo的最新款真無線藍牙耳機vivo TWS Air也一同發布,本次就這款耳機新品給大家帶來一個簡單的分享。外包裝盒上,vivo TWS Air保持了vivo自家產
  • 2023年Q2用戶偏好榜:12+256G版本成新主流

    3月份的性能榜、性價比榜和好評榜之后,就要輪到2023年的第二季度偏好榜了,上半年的新機潮已經過去,最明顯的肯定就是大內存和存儲的機型了,另外部分中端機也取消了屏幕塑料支架
  • 消息稱迪士尼要拍真人版《魔發奇緣》:女主可能也找黑人演員

    8月5日消息,迪士尼確實有點忙,忙著將不少動畫改成真人版,繼《美人魚》后,真人版《白雪公主》、《魔發奇緣》也在路上了。據外媒消息稱,迪士尼將打造真人版
  • 三言兩語說透設計模式的藝術-單例模式

    寫在前面單例模式是一種常用的軟件設計模式,它所創建的對象只有一個實例,且該實例易于被外界訪問。單例對象由于只有一個實例,所以它可以方便地被系統中的其他對象共享,從而減少
  • 如何正確使用:Has和:Nth-Last-Child

    我們可以用CSS檢查,以了解一組元素的數量是否小于或等于一個數字。例如,一個擁有三個或更多子項的grid。你可能會想,為什么需要這樣做呢?在某些情況下,一個組件或一個布局可能會
  • 每天一道面試題-CPU偽共享

    前言:了不起:又到了每天一到面試題的時候了!學弟,最近學習的怎么樣啊 了不起學弟:最近學習的還不錯,每天都在學習,每天都在進步! 了不起:那你最近學習的什么呢? 了不起學弟:最近在學習C
  • 三星折疊屏手機去年銷售近1000萬臺 今年目標定為1500萬

    7月29日消息,三星率先發力可折疊手機市場,在全球市場已經取得了非常亮眼的成績,接下來會進一步鞏固和擴大這一優勢。三星在推出Galaxy Z Flip5和Galax
  • 支持aptX Lossless無損傳輸 iQOO TWS 1賽道版發布限時優惠價369元

    2023年7月4日,“無損音質,聲動人心”iQOO TWS 1正式發布,支持aptX Lossless無損傳輸,限時優惠價369元。iQOO TWS 1耳機率先支持端到端aptX Lossless無
Top