1. 程式人生 > >一級Cache與二級Cache的主要區別是什麼

一級Cache與二級Cache的主要區別是什麼

[轉載:百度知道]    
  總體來說,現在CPU的L1快取的大小差別不大,主要差的就是L2,而L2的增加會使效能大幅度的提升,但是相對來說成本增加的更大。一般來說我們買CPU時都會重視L2的大小,而沒有幾個在L1上做文章

L1 Cache(一級快取)是CPU第一層快取記憶體,分為資料快取和指令快取。內建的L1快取記憶體的容量和結構對CPU的效能影響較大,不過高速緩衝儲存器均由靜態RAM組成,結構較複雜,在CPU管芯面積不能太大的情況下,L1級快取記憶體的容量不可能做得太大。一般伺服器CPU的L1快取的容量通常在32—4096KB。

L2 CACHE=二級快取
它是處理器內部的一些緩衝儲存器,其作用跟記憶體一樣。 它是怎麼出現的呢? 要上溯到上個世紀80年代,由於處理器的執行速度越來越快,慢慢地,處理器需要從記憶體中讀取資料的速度需求就越來越高了。然而記憶體的速度提升速度卻很緩慢,而能高速讀寫資料的記憶體價格又非常高昂,不能大量採用。從效能價格比的角度出發,
英特爾
等處理器設計生產公司想到一個辦法,就是用少量的高速記憶體和大量的低速記憶體結合使用,共同為處理器提供資料。這樣就兼顧了效能和使用成本的最優。而那些高速的記憶體因為是處於CPU和記憶體之間的位置,又是臨時存放資料的地方,所以就叫做緩衝儲存器了,簡稱“快取”。它的作用就像倉庫中臨時堆放貨物的地方一樣,貨物從運輸車輛上放下時臨時堆放在快取區中,然後再搬到內部儲存區中長時間存放。貨物在這段區域中存放的時間很短,就是一個臨時貨場。 最初快取只有一級,後來處理器速度又提升了,一級快取不夠用了,於是就添加了二級快取。二級快取是比一級快取速度更慢,容量更大的記憶體,主要就是做一級快取和記憶體之間資料臨時交換的地方用。現在,為了適應速度更快的處理器P4EE,已經出現了
三級快取
了,它的容量更大,速度相對二級快取也要慢一些,但是比記憶體可快多了。 快取的出現使得CPU處理器的執行效率得到了大幅度的提升,這個區域中存放的都是CPU頻繁要使用的資料,所以快取越大處理器效率就越高,同時由於快取的物理結構比記憶體複雜很多,所以其成本也很高。
大量使用二級快取帶來的結果是處理器執行效率的提升和成本價格的大幅度不等比提升。舉個例子,伺服器上用的至強處理器和普通的P4處理器其核心基本上是一樣的,就是二級快取不同。至強的二級快取是2MB~16MB,P4的二級快取是512KB,於是最便宜的至強也比最貴的P4貴,原因就在二級快取不同。

相關推薦

一級Cache二級Cache主要區別是什麼

[轉載:百度知道] 總體來說,現在CPU的L1快取的大小差別不大,主要差的就是L2,而L2的增加會使效能大幅度的提升,但是相對來說成本增加的更大。一般來說我們買CPU時都會重視L2的大小,而沒有幾個在L1上做文章L1 Cache(一級快取)是CPU第一層快取記憶

Hibernate一級快取二級快取的區別

一級快取:   就是Session級別的快取。一個Session做了一個查詢操作,它會把這個操作的結果放在一級快取中。   如果短時間內這個session(一定要同一個session)又做了同一個操作,那麼hibernate直接從一級快取中拿,而不會再去連資料庫,取資料。

hibernate的一級快取二級快取的區別

快取是介於應用程式和物理資料來源之間,其作用是為了降低應用程式對物理資料來源訪問的頻次,從而提高了應用的執行效能。快取內的資料是對物理資料來源中的資料的複製,應用程式在執行時從快取讀寫資料,在特定的時刻或事件會同步快取和物理資料來源的資料。   快取的介質一般

HibernateMybatis的區別、Hibernate一級快取二級快取之間的區別

Hibernate對資料庫提供了較為完整的封裝,不需要手寫SQL語句,自動生成、自動執行,持久層框架,開源的物件關係對映,對JDBC的進一步封裝。 Mybatis著力點在於JAVA物件與SQL之間的對映關係,需要編寫sql語句,半自動,需要注意的細節更多,但是

hibernate一級快取和二級快取的區別聯絡

快取是介於應用程式和物理資料來源之間,其作用是為了降低應用程式對物理資料來源訪問的頻次,從而提高了應用的執行效能。快取內的資料是對物理資料來源中的資料的複製,應用程式在執行時從快取讀寫資料,在特定的時刻或事件會同步快取和物理資料來源的資料。   快取的介質一般是記憶體,

Mysql 存儲引擎中InnoDBMyisam的主要區別

sql mysq where條件 擴展 擴展名 sel 系統 sele sans innodb 支持事務功能,myisam 不支持。 Myisam 的執行速度更快,性能更好。 2、select ,update ,insert ,delete 操作 MyISAM:如果執行

Mysql中一級緩存二級緩存區別

情況 如果 mys 提交 四種 ssi 修改 進行 失效 一級緩存:   也稱本地緩存,sqlSession級別的緩存。一級緩存是一直開啟的;與數據庫同一次會話期間查詢到的數據會放在本地緩存中。   如果需要獲取相同的數據,直接從緩存中拿,不會再查數據庫。   一級緩

路由交換的主要區別

路由與交換的區別三層交換機與路由器的主要區別重點提示:雖然三層交換機與路由器都具有路由功能,但我們不能因此而把它們等同起來,正如現在許多網絡設備同時具備多種傳統網絡設備功能一樣。下面了解一下他們之間不同的功能、環境、性能一.主要功能不同 雖然三層交換機與路由器都具有路由功能,但我們不能因此而把它們等

mybatis基礎系列(四)——關聯查詢、延遲載入、一級快取二級快取

關本文是Mybatis基礎系列的第四篇文章,點選下面連結可以檢視前面的文章: mybatis基礎系列(三)——動態sql mybatis基礎系列(二)——基礎語法、別名、輸入對映、輸出對映 mybatis基礎系列(一)——mybatis入門 關聯查詢 在進行表設計時,往往需要在具體的業務基礎上分析表與表之間的

python2python3的主要區別

print 在進行程式除錯時用得最多的語句可能就是 print,在 Python 2 中,print 是一條語句,而 Python3 中作為函式存在。有人可能就有疑問了,在 Python2 中明明也看到當函式使用: # py2 print("hello") # 等價 print ("hell

4G LTE是什麼 4G LTE閘道器CPE的主要區別

  LTE(Long Term Evolution,長期演進)專案是3G的演進,LTE並非人們普遍誤解的4G技術,而是3G與4G技術之間的一個過渡,是3.9G的全球標準,採用OFDM和MIMO作為其無線網路演進的唯一標準,改進並增強了3G的空中接入技術,這種以OFDM/FDM

AndroidStudio3.0之前版本主要區別

dependencies {        //3.0 之前     compile 'com.android.support:appcompat-v7:26.1.0'     compile fileTree(include: ['*.jar'], dir: 'libs

程序和執行緒的主要區別及程序程式的主要區別

1.程序和執行緒的主要區別 根本區別:程序是作業系統資源分配的基本單位,而執行緒是任務排程和執行的基本單位 在開銷方面:每個程序都有獨立的程式碼和資料空間(程式上下文),程式之間的切換會有較大的開銷;執行緒可以看做輕量級的程序,同一類執行緒共享程式碼和資料空間,每個執行緒

hibernate一級快取和二級快取的區別

                       快取是介於應用程式和物理資料來源之間,其作用是為了降低應用程式對物理資料來源訪問的頻次,從而提高了應用的執行效能。快取內的資料是對物理資料來源中的資料的複製,應用程式在執行時從快取讀寫資料,在特定的時刻或事件會同步快取和物理資料來源的資料。   快取的介質一般是記

Mybatis 預設的一級快取 二級快取

一級快取 同一個session 呼叫多次查詢相同的的主鍵獲取資料 發起一次SQL語句 /** * 1級快取 * 同一個session 呼叫多次查詢相同的的主鍵獲取資料 發起一次SQL語句 */ @Test public void text

MySQL中MyISAMInnoDB的主要區別對比

item sam mysql 5.7 表空間 空間索引 mce table 格式 isa 特征MyISAMInnoDB 聚集索引 否 是 壓縮數據 是(僅當使用壓縮行格式時才支持壓縮MyISAM表。使用壓縮行格式和MyISAM的表是只讀的。) 是 數據緩

SpringMVCStruts2的主要區別

區別1: Struts2 的核心是基於一個Filter即StrutsPreparedAndExcuteFilter  SpringMvc的核心是基於一個Servlet即DispatcherServlet(前端控制器) 區別2: Struts2是基於類開發的,傳遞的引數是

Mysql 儲存引擎中InnoDBMyisam的主要區別

MVCC ( Multi-Version Concurrency Control )多版本併發控制  InnoDB:通過為每一行記錄新增兩個額外的隱藏的值來實現MVCC,這兩個值一個記錄這行資料何時被建立,另外一個記錄這行資料何時過期(或者被刪除)。但是InnoDB並不儲存這些事件發生時的實際時間,相反它只

Java中ArrayArrayList的主要區別(

1)精闢闡述: 可以將 ArrayList想象成一種“會自動擴增容量的Array”。2)Array([]):最高效;但是其容量固定且無法動態改變;     ArrayList:  容量可動態增長;但犧牲效率;3)建議: 基於效率和型別檢驗,應儘可能使用Array,無法確定陣

MySQLOracle的主要區別

1. Oracle是大型資料庫而Mysql是中小型資料庫,Oracle市場佔有率達40%,Mysql只有20%左右,同時Mysql是開源的而Oracle價格非常高。 2. Oracle支援大併發,大訪問量,是OLTP最好的工具。 3. 安裝所用的空間差別也是很大的,Mysql安裝完後才152