當前位置:首頁 » 硬碟大全 » l1是什麼緩存
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

l1是什麼緩存

發布時間: 2023-01-30 05:46:29

Ⅰ cpu中L1核心緩存和L1數據緩存是什麼有什麼用

L1是一級緩沖,L2是二級緩沖,LS已經說了,還有L3 AMD的CPU主要需要L1的緩沖,而INTEL的CPU,因設計結構不同,並沒有嚴格意義上的L1,所以INTEL主要看L2緩沖,這是設計上的不同帶來的結果,不能靠緩沖對兩家的CPU進行對比 緩沖的作用就是寄存CPU需要處理的命令列,緩沖越大,存儲的越多,CPU就能執行的越多,CPU自帶的緩沖是最直接的存儲,讀取是最快的,這樣就減少了讀盤時間,間接提高處理效率 如果樓主是為玩游戲問這個,很少有游戲對CPU的緩沖有需求,即使有,那也是那種規模非常大的游戲,比如<橫掃千軍><最高指揮官>等,這些場面巨大的游戲,對CPU的緩沖非常敏感,而相反,如孤島,失落星球,刺客等動作FPS游戲,對緩沖的依賴則沒前面提到的需求來得高

Ⅱ 電腦參數里的緩存指的是L1還是L2

電腦CPU的緩存分L1和L2,指的是一級緩存和二級緩存。
在參數一樣的情況下緩存越大速度越快。
回答完畢,請採納

Ⅲ cpuL1數據緩存,cpuL1指令緩存和L1高速緩存的關系詳解

2、CPU Level 1 Cache/Internal Cache(中央處理器一級緩存/內部緩存)
選項:Enabled,Disabled
此設置用於控制CPU的主緩存開啟/關閉,L1 Cache對機器的整體性能有很大影響,關閉以後系統的性能會下降幾個數量級。在超頻的時候,一級緩存往往是成功與否的關鍵所在,比如你不能超到500MHz,並不代表CPU不能上500MHz,很可能是L1 Cache無法達到,所以關閉一級緩存可以提升超頻的成功率。
3、CPU Level 2 Cache/External Cache(中央處理器二級緩存/外部緩存)
選項:Enabled,Disabled
此設置用於控制CPU的主緩存開啟/關閉,它對系統和超頻的影響如同一級緩存,關閉L2 Cache也能夠超頻的成功率。
4、CPU L2 Cache ECC Checking(CPU二級緩存ECC校驗)
選項:Enabled,Disabled
系統可以啟用CPU內部L2Cache進行ECC(Error Checking and Correction,錯誤檢查修正)檢測,默認值是Enable,它可以偵察並糾正單位信號錯誤保持資料的准確性,對超頻的穩定性有幫助,但不能偵察雙位信號錯誤。這里要注意的是,啟用ECC檢測將會延遲系統自檢的時間和降低機器的性能,而且必須內存支持才能開啟此特性。

L1高速緩存,也就是我們經常說的一級高速緩存。在CPU裡面內置了高速緩存可以提高CPU的運行效率。內置的L1高速緩存的容量和結構對CPU的性能影響較大,不過高速緩沖存儲器均由靜態RAM組成,結構較復雜,在CPU管芯面積不能太大的情況下,L1級高速緩存的容量不可能做得太大。採用回寫(Write Back)結構的高速緩存。它對讀和寫*作均有可提供緩存。而採用寫通(Write-through)結構的高速緩存,僅對讀*作有效。在486以上的計算機中基本採用了回寫式高速緩存。在目前流行的處理器中,奔騰Ⅲ和Celeron處理器擁有32KB的L1高速緩存,奔騰4為8KB,而AMD的Duron和Athlon處理器的L1高速緩存高達128KB。

L2高速緩存,指CPU第二層的高速緩存,第一個採用L2高速緩存的是奔騰 Pro處理器,它的L2高速緩存和CPU運行在相同頻率下的,但成本昂貴,市場生命很短,所以其後奔騰 II的L2高速緩存運行在相當於CPU頻率一半下的。接下來的Celeron處理器又使用了和CPU同速運行的L2高速緩存,現在流行的CPU,無論是AthlonXP和奔騰4,其L2高速緩存都是和CPU同速運行的。除了速度以外,L2高速緩存容量也會影響CPU的性能,原則是越大越好,現在家庭用CPU容量最大的是512KB,而伺服器和工作站上用CPU的L2高速緩存更高達1MB-3MB。

cpuL1緩存首先是CPU的內部結構決定,CPU是由硅晶原片切割而成的,一塊晶原片切割的CPU塊有限,所以一個CPU的結構要非常合理地搭配L1,L2緩存大小,P4640比P4630高頻,所以內部結構有所不同。而L1緩存的作用是數據交換的「超高速」通道,所以其大小不是重點,內部參數才是關鍵,只要參數(CL值,延遲等)夠快,完全可以彌補大小的差距,像P-M 1。7G的CPU由於L1緩存的參數夠高,雖然容量有不足,但在性能測試上L1緩存的速度比P4 630快的多。所以不必刻意要求L1緩存大小。(另外,CPU的緩存速度比一般內存快的多,大概快幾十倍)

高速緩存英文是cache。一種特殊的存儲器子系統,其中復制了頻繁使用的數據,以利於CPU快速訪問。存儲器的高速緩沖存儲器存儲了頻繁訪問的 RAM 位置的內容及這些數據項的存儲地址。當處理器引用存儲器中的某地址時,高速緩沖存儲器便檢查是否存有該地址。如果存有該地址,則將數據返回處理器;如果沒有保存該地址,則進行常規的存儲器訪問。因為高速緩沖存儲器總是比主RAM 存儲器速度快,所以當 RAM 的訪問速度低於微處理器的速度時,常使用高速緩沖存儲器。

Ⅳ 什麼是高速緩存L1高速緩存作用

高速緩存英文是cache。一種特殊的存儲器子系統,其中復制了頻繁使用的數據,以利於CPU快速訪問。存儲器的高速緩沖存儲器存儲了頻繁訪問的 RAM 位置的內容及這些數據項的存儲地址。當處理器引用存儲器中的某地址時,高速緩沖存儲器便檢查是否存有該地址。如果存有該地址,則將數據返回處理器;如果沒有保存該地址,則進行常規的存儲器訪問。因為高速緩沖存儲器總是比主RAM 存儲器速度快,所以當 RAM 的訪問速度低於微處理器的速度時,常使用高速緩沖存儲器。

L1高速緩存,也就是我們經常說的一級高速緩存。在CPU裡面內置了高速緩存可以提高CPU的運行效率。內置的L1高速緩存的容量和結構對CPU的性能影響較大,不過高速緩沖存儲器均由靜態RAM組成,結構較復雜,在CPU管芯面積不能太大的情況下,L1級高速緩存的容量不可能做得太大。採用回寫(Write Back)結構的高速緩存。它對讀和寫*作均有可提供緩存。而採用寫通(Write-through)結構的高速緩存,僅對讀*作有效。在486以上的計算機中基本採用了回寫式高速緩存。在目前流行的處理器中,奔騰Ⅲ和Celeron處理器擁有32KB的L1高速緩存,奔騰4為8KB,而AMD的Duron和Athlon處理器的L1高速緩存高達128KB。

L2高速緩存,指CPU第二層的高速緩存,第一個採用L2高速緩存的是奔騰 Pro處理器,它的L2高速緩存和CPU運行在相同頻率下的,但成本昂貴,市場生命很短,所以其後奔騰 II的L2高速緩存運行在相當於CPU頻率一半下的。接下來的Celeron處理器又使用了和CPU同速運行的L2高速緩存,現在流行的CPU,無論是AthlonXP和奔騰4,其L2高速緩存都是和CPU同速運行的。除了速度以外,L2高速緩存容量也會影響CPU的性能,原則是越大越好,現在家庭用CPU容量最大的是512KB,而伺服器和工作站上用CPU的L2高速緩存更高達1MB-3MB。

——》1,高速緩存(Cache),全稱「高速緩沖存儲器」。

——》2,例如:當CPU處理數據時,它會先到高速緩存中去尋找,如果數據因之前的操作已經讀取而被暫存其中,就不需要再從主內存中讀取數據——由於CPU的運行速度一般比主內存快,因此若要經常存取主內存的話,就必須等待數個CPU周期從而造成浪費。

——》3,提供「高速緩存」的目的是為了讓數據存取的速度適應CPU的處理速度,其基於的原理是內存中「程序執行與數據訪問的局域性行為」。

——》4,現在Cache的概念已經被擴充了:不僅在CPU和主內存之間有Cache,而且在內存和硬碟之間也有Cache(磁碟高速緩存),乃至在硬碟與網路之間也有某種意義上的「Cache」(Internet臨時文件夾)。

——》5,凡是位於速度相差較大的兩種硬體之間的,用於協調兩者數據傳輸速度差異的結構,均可稱之為Cache。

——》6,所以硬碟和內存之間的Cache就叫做磁碟高速緩存。它是在內存中開辟一塊位置,來臨時存取硬碟中的數據。這項技術可使計算機讀寫時的存儲系統平均數據傳輸率提高5-10倍,適應了當前激增的海量數據存儲需求。

——》7,在DOS時代,我們用:
smartdrv 內存容量
命令來載入硬碟高速緩存。自從有了Windows後,我們就不需要載入硬碟高速緩存了,因為Windows本身有自己的高速緩存管理單元,如果強行使用smartdrv命令載入,反而會影響Windows的性能。

——》8,我們在用硬碟安裝Win2000/XP時候,系統會提示載入高速緩存,這是因為在安裝的初期還是DOS操作,所以為了達到讀存的速度,安裝程序要求載入高速緩存。

Ⅳ 什麼是CPU的L1緩存

Cache(一級緩存)是CPU第一層高速緩存。內置的L1高速緩存的容量和結構對CPU的性能影響較大,不過高速緩沖存儲器均由靜態RAM組成,結構較復雜,在CPU管芯面積不能太大的情況下,L1級高速緩存的容量不可能做得太大。一般L1緩存的容量通常在32—256KB。L2Cache(二級緩存)是CPU的第二層高速緩存,分內部和外部兩種晶元。內部的晶元二級緩存運行速度與主頻相同,而外部的二級緩存則只有主頻的一半。L2高速緩存容量也會影響CPU的性能,原則是越大越好,現在家庭用CPUL2高速緩存最大的是512KB,而伺服器和工作站上用CPU的L2高速緩存更高達1MB-3MB。

Ⅵ L1是什麼意思

L1,譯名廈門L1路、L1線,全稱廈門L1線,廈門快速公交,即廈門市快速公交系統(BRT),屬於廈門市快速公交運營有限公司。

2008年09月01日起,L1線開始投入運營(第一碼頭站←→成功大道站)。

2016年02月02日起,「成功大道站」更名為「廈港公交場站」(第一碼頭站←→廈港公交場站)。

2016年10月15日起,優化調整L1線為微循環線路(BRT第一碼頭站→經廈大西村→BRT第一碼頭站)環線。

2016年11月01日起,調整L1線雙向運行(BRT第一碼頭站←→廈大西村站)。

2017年03月01日起,L1線更改線號為71路(BRT第一碼頭站←→廈大西村站)。

沿途站點

L1線BRT鏈接線BRT第一碼頭站[首班06:10末班22:40]←→廈大西村站[首班05:50末班22:20]

跨段站點:BRT第一碼頭——廈大西村

票價:上車0.5元,全程0.5元,E通卡0.3元。

上行

BRT第一碼頭站→鷺江道站→輪渡站→婦幼保健院站→大生里站→華僑博物院站→理工學院思明校區站→廈大西村站

下行

廈大西村站→中華兒女美術館站→民族路站→外貿新村站→思明區政府站→和平碼頭站→海濱大廈站→輪渡郵局站→BRT第一碼頭站

Ⅶ cpuL1數據緩存,cpuL1指令緩存和L1高速緩存的關系詳解

內置的l1高速緩存的容量和結構對cpu的性能影響較大,不過高速緩沖存儲器均由靜態ram組成cache(一級緩存)是cpu第一層高速緩存。l2cache(二級緩存)是cpu的第二層高速緩存,分內部和外部兩種晶元,結構較復雜。l2高速緩存容量也會影響cpu的性能,原則是越大越好,現在家庭用cpul2高速緩存最大的是512kb,而伺服器和工作站上用cpu的l2高速緩存更高達1mb-3mb,在cpu管芯面積不能太大的情況下,l1級高速緩存的容量不可能做得太大。一般l1緩存的容量通常在32—256kb。內部的晶元二級緩存運行速度與主頻相同,而外部的二級緩存則只有主頻的一半

Ⅷ 一級數據緩存跟一級指令緩存是什麼意思

一級緩存(Level 1 Cache)簡稱L1 Cache,位於CPU內核的旁邊,是與CPU結合最為緊密的CPU緩存,也是歷史上最早出現的CPU緩存。由於一級緩存的技術難度和製造成本最高,提高容量所帶來的技術難度增加和成本增加非常大,所帶來的性能提升卻不明顯,性價比很低,而且現有的一級緩存的命中率已經很高,所以一級緩存是所有緩存中容量最小的,比二級緩存要小得多。 一般來說,一級緩存可以分為一級數據緩存(Data Cache,D-Cache)和一級指令緩存(Instruction Cache,I-Cache)。二者分別用來存放數據以及對執行這些數據的指令進行即時解碼,而且兩者可以同時被CPU訪問,減少了爭用Cache所造成的沖突,提高了處理器效能。目前大多數CPU的一級數據緩存和一級指令緩存具有相同的容量,例如AMD的Athlon XP就具有64KB的一級數據緩存和64KB的一級指令緩存,其一級緩存就以64KB+64KB來表示,其餘的CPU的一級緩存表示方法以此類推。 二級緩存是CPU性能表現的關鍵之一,在CPU核心不變化的情況下,增加二級緩存容量能使性能大幅度提高。而同一核心的CPU高低端之分往往也是在二級緩存上有差異,由此可見二級緩存對於CPU的重要性。

Ⅸ CPU Cache一L1 L2 L3 TLB

cache是一種又小又快的存儲器。它存在的意義是彌合Memory與CPU之間的速度差距。

現在的CPU中有好幾個等級的緩存。通常L1和L2緩存都是每個CPU一個的, L1緩存有分為L1i和L1d,分別用來存儲指令和數據。L2緩存是不區分指令和數據的。L3緩存多個核心共用一個,通常也不區分指令和數據。  還有一種緩存叫TLB,它主要用來緩存MMU使用的頁表,通常我們講緩存(cache)的時候是不算它的。

Cache hierarchy of the K8 core in the AMD Athlon 64 CPU

Cache Line

Cache存儲數據是固定大小為單位的,稱為一個Cache entry,這個單位稱為Cache line或Cache block。給定Cache容量大小和Cache line size的情況下,它能存儲的條目個數(number of cache entries)就是固定的。因為Cache是固定大小的,所以它從DRAM獲取數據也是固定大小。對於X86來講,它的Cache line大小與DDR3、4一次訪存能得到的數據大小是一致的,即64Bytes。對於ARM來講,較舊的架構(新的不知道有沒有改)的Cache line是32Bytes,但一次內存訪存只訪問一半的數據也不太合適,所以它經常是一次填兩個Cache line,叫做double fill。

CPU從Cache數據的最小單位是位元組,Cache從Memory拿數據的最小單位(這里不講嵌入式系統)是64Bytes,Memory從硬碟拿數據通常最小是4092Bytes。

替換策略

Cache里存的數據是Memory中的 常用 數據一個拷貝,Cache比較小,不可以緩存Memory中的所有數據。當Cache存滿後,再需要存入一個新的條目時,就需要把一個舊的條目從緩存中拿掉,這個過程稱為evict,一個被evict的條目稱為victim。緩存管理單元通過一定的演算法決定哪些數據有資格留在Cache里,哪些數據需要從Cache里移出去。這個策略稱為 替換策略(replacement policy) 。最簡單的替換策略稱為LRU(least recently used),即Cache管理單元記錄每個Cache line最近被訪問的時間,每次需要evict時,選最近一次訪問時間最久遠的那一條做為victim。在實際使用中,LRU並不一定是最好的替換策略,在CPU設計的過程中,通常會不段對替換策略進行改進,每一款晶元幾乎都使用了不同的替換策略。

寫入策略與一致性

CPU需要讀寫一個地址的時候,先去Cache中查找,如果數據不在Cache中,稱為Cache miss,就需要從Memory中把這個地址所在的那個Cache line上的數據載入到Cache中。然後再把數返回給CPU。這時會伴隨著另一個Cache 條目成為victim被替換出去。

如果CPU需要訪問的數據在Cache中,則稱為Cache hit。

針對寫操作,有兩種寫入策略,分別為write back和write through。write through策略下,數據直接同時被寫入到Memory中,在write back策略中,數據僅寫到Cache中,此時Cache中的數據與Memory中的數據不一致,Cache中的數據就變成了臟數據(dirty)。如果其他部件(DMA, 另一個核)訪問這段數據的時候,就需要通過 Cache一致性協議 (Cache coherency protocol)保證取到的是最新的數據。另外這個Cache被替換出去的時候就需要寫回到內存中。

Cache Miss 與CPU stall

如果發生了Cache Miss,就需要從Memory中取數據,這個取數據的過程中,CPU可以執行幾十上百條指令的,如果等待數據時什麼也不做時間就浪費了。可以在這個時候提高CPU使用效率的有兩種方法,一個是亂序執行(out of order execution),即把當前線程中後面的、不依賴於當前指令執行結果的指令拿過來提前執行,另一個是超線程技術,即把另一個線程的指令拿過來執行。

L1/L2 Cache速度差別

L1 cache: 3 cycles

L2 cache: 11 cycles

L3 cache: 25 cycles

Main Memory: 100 cycles

L1/L2 Cache都是用SRAM做為存儲介質,為什麼說L1比L2快呢?這裡面有三方面的原因:

1. 存儲容量不同導致的速度差異

L1的容量通常比L2小,容量大的SRAM訪問時間就越長,同樣製程和設計的情況下,訪問延時與容量的開方大致是成正比的。

2. 離CPU遠近導致的速度差異

通常L1 Cache離CPU核心需要數據的地方更近,而L2 Cache則處於邊緩位置,訪問數據時,L2 Cache需要通過更遠的銅線,甚至更多的電路,從而增加了延時。

L1 Cache分為ICache(指令緩存)和DCache(數據緩存),指令緩存ICache通常是放在CPU核心的指令預取單遠附近的,數據緩存DCache通常是放在CPU核心的load/store單元附近。而L2 Cache是放在CPU pipeline之外的。

為什麼不把L2 Cache也放在很近的地方呢?由於Cache的容量越大,面積越大,相應的邊長的就越長(假設是正方形的話),總有離核遠的。

下面的圖並不是物理上的圖,只是為大家回顧一下CPU的pipe line。

另外需要注意的是這張圖里展示了一個二級的DTLB結構,和一級的ITLB。

3. 製程不同的造成的速度差異

在實際設計製造時,針對L1/L2的不同角色,L1更加註重速度, L2更加註重節能和容量。在製程上這方面有體現,(但我不懂,。。。。)。在設計時,這方面的有體現:

首先, L1 Cache都是N路組相聯的,N路組相聯的意思時,給定一個地址,N個Cache單元同時工作,取出N份tag和N份數據,然後再比較tag,從中選出hit的那一個採用,其它的丟棄不用。這種方式一聽就很浪費,很不節能。

另外,L2 Cache即便也是N路組相聯的,但它是先取N個tag,然後比對tag後發現cache hit之後再把對應的數據取出來。由於L2是在L1 miss之後才會訪問,所以L2 cache hit的概率並不高,訪問的頻率也不高,而且有前面L1抵擋一下,所以它的延遲高點也無所謂,L2容量比較大,如果數據和tag一起取出來,也比較耗能。

通常專家都將L1稱為latency filter, L2稱為bandwidth filter。

L3 Cache

L1/L2 Cache通常都是每個CPU核心一個(x86而言,ARM一般L2是為一個簇即4個核心共享的),這意味著每增加一個CPU核心都要增加相同大小的面積,即使各個CPU核心的L2 Cache有很多相同的數據也只能各保存一份,因而一個所有核心共享的L3 Cache也就有必要了。

L3 Cache通常都是各個核心共享的,而且DMA之類的設備也可以用。

由於L3 Cache的時延要求沒有那麼高,現在大家也要考慮不使用SRAM,轉而使用STT-MRAM,或是eDRAM來做L3 Cache。

邏輯Cache和物理Cache

Cache在系統中的位置根據與MMU的相對位置不同,分別稱為logical Cache和physical cache。

Logical Cache接受的是邏輯地址,物理Cache接受的是物理地址。

logical cache有一個優勢就是可以在完成虛擬地址到物理地址的翻譯之前就可以開始比對cache,但是有一個問題就是Cache 一致性還有cache eviction必須通過物理地址來做,因為多個虛擬地址可能對應同一個物理地址,不能保證不同的虛擬地址所以應的cache就一定不是同一份數據。為了解決這個問題,就不得不把物理地址也保存在為tag。這樣tag要存的內容就增加了一倍。

相對而言,physical cache由於一開始就是物理地址,所以只需要存物理地址為tag,而不需要再保存虛擬地址為tag,看起來簡單了很多。

其實總結起來,Cache的tag有兩種作用:(1)對於N路組相聯cache中,通過tag比對選擇使用哪一路的數據,(2)決定cache hit還是miss。前者配合操作系統的情況下,虛擬地址就可以做到,比如說給虛擬地址和物理頁配對的時候總是保證根據兩者的某些位來選way的時候是一樣的,而且前者不需要完全的正確,偶爾錯一些是可以接受的,你可以先選出數據,默認是cache hit,然後拿著數據是計算,但後來通過物理tag比對時發現是miss的情況下,再無效掉這次計算,反正cache miss的情況下cpu本來也需要stall好多個cycle。後者則必須依靠物理地址才可以做到。這樣一來,很多設計都把虛擬地址tag弱化為hint, 僅用於選哪個way。

又沒寫完了,心情不好,吐嘈一下,為什麼有些人自己能力差無法跟上優秀的人節奏,一點都不感到羞愧,反而理直氣壯的要求別人為他維持他自己的心理舒適區?

以下是後面接著寫時需要參考的資料,大家也可以自己看看。

CPU cache - Wikipedia

https://faculty.tarleton.e/agapie/documents/cs_343_arch/04_CacheMemory.pdf

http://www.ecs.csun.e/~cputnam/Comp546/Putnam/Cache%20Memory.pdf

進一步閱讀:

https://cseweb.ucsd.e/classes/fa14/cse240A-a/pdf/08/CSE240A-MBT-L15-Cache.ppt.pdf

http://www.ecs.csun.e/~cputnam/Comp546/Putnam/Cache%20Memory.pdf

https://ece752.ece.wisc.e/lect11-cache-replacement.pdf

http://www.ipdps.org/ipdps2010/ipdps2010-slides/session-22/2010IPDPS.pdf

Ⅹ 什麼是L1緩存啊什麼是L2緩存啊

二級緩存是CPU性能的體現,像以前的P4的CPU,二級緩存都為1M,現在雙核心的為2M,之所有INTEL的CPU比AMD的CPU在制圖,處理數據方面快得多的原因也正在此,AMD的二級緩存基本上只有INTEL的一半。二級緩存是在和內存之間讀取數據的時候體現的,如果二級緩存不夠,那大量的數據就會堆積在內存里進行運算,所以速度就會大大降低,相反,如果二級緩存夠大,進入內存運算的數據就會相對的減少,所以二級緩存很重要,也是CPU的性能優越的指標。