淺析CPU二級緩存容量對CPU性能的影響
互聯(lián)網(wǎng) 發(fā)布時間:2009-04-21 01:31:51 作者:佚名
我要評論

現(xiàn)代桌面級PC的CPU二級緩存容量大多數(shù)在64KB到2MB之間。因為CPU二級緩存容量對CPU性能有不小的影響,所以低端CPU和中高端CPU在物理結(jié)構(gòu)上的差異主要就是二級緩存容量的大小。那么二級緩存容量為什么如此重要?它對CPU性能有什么
現(xiàn)代桌面級PC的CPU二級緩存容量大多數(shù)在64KB到2MB之間。因為CPU二級緩存容量對CPU性能有不小的影響,所以低端CPU和中高端CPU在物理結(jié)構(gòu)上的差異主要就是二級緩存容量的大小。那么二級緩存容量為什么如此重要?它對CPU性能有什么樣的影響呢?
CPU二級緩存作為一級緩存的“后備倉庫”,用于為一級緩存存儲更多的數(shù)據(jù),減少CPU直接訪問內(nèi)存 的次數(shù)。理論上,CPU訪問并調(diào)用緩存的數(shù)據(jù)所占的比重越大,則CPU訪問并調(diào)用內(nèi)存的數(shù)據(jù)所占的比重就越小,那么因訪問內(nèi)存而耽誤的時間 就越少。所以緩存的容量越大,CPU的實際效率也就越高,性能就越強。
實際上,在腳本之家上講到,現(xiàn)在Intel和AMD處理器在一級緩存的邏輯結(jié)構(gòu)設(shè)計上有所不同,所以二級緩存對CPU性能的影響也不盡相同。因為CPU讀取的 數(shù)據(jù)(包括指令)中有80%的數(shù)據(jù)來自一級緩存,所以一級緩存的邏輯結(jié)構(gòu)決定了CPU二級緩存容量對CPU性能的影響。Intel的Pentium 4及Celeron系列處理器的一級數(shù)據(jù)緩存被稱為“數(shù)據(jù)代碼指令追蹤(讀寫)緩存”;AMD的Athlon 64/Athlon XP/Sempron/Duron系列處理器 的一級數(shù)據(jù)緩存叫作“實數(shù)據(jù)讀寫緩存”。
這兩類CPU一級緩存不同的邏輯結(jié)構(gòu)有什么不同?下面,我用一個例子來描述。
假設(shè)有一個運算任務(wù),要從“1”一直遞加到“999999”。在傳統(tǒng)的“實數(shù)據(jù)讀寫緩存”架構(gòu)下,這一系列數(shù)據(jù)中最先用到的數(shù)據(jù)(如 “1、2……449、450”)將存儲在CPU一級數(shù)據(jù)緩存中,更多的數(shù)據(jù)(如“451、452……899999、900000”)存儲在CPU二級緩存中,其余的數(shù) 據(jù)(如“900001、999002……999998、999999”)暫存在內(nèi)存中,CPU將按照一級數(shù)據(jù)緩存、二級緩存和內(nèi)存的順序讀取這些數(shù)據(jù)。
傳統(tǒng)的一級數(shù)據(jù)緩存的存儲方式
但是在“數(shù)據(jù)代碼指令追蹤緩存”架構(gòu)的CPU中,一級數(shù)據(jù)緩存并不存儲這些最先用到的數(shù)據(jù)(“1、2……449、450”),而是將這些 數(shù)據(jù)存儲到二級緩存中,一級數(shù)據(jù)緩存僅僅存儲這些數(shù)據(jù)在二級緩存中的起止地址(又稱為:指令代碼)。例如,數(shù)據(jù)“1、2……449、450” 順序存儲在二級緩存中,數(shù)據(jù)“1”所在地址為“00001F”,數(shù)據(jù)“450” 所在地址為“00451F”,實際上一級數(shù)據(jù)緩存只需要存儲“00001F”和“00451F”這兩個地址就可以了,而不需要存儲大量的數(shù)據(jù)。
“數(shù)據(jù)代碼指令追蹤緩存”架構(gòu)的一級數(shù)據(jù)緩存的存儲方式
但是由于其一級數(shù)據(jù)緩存不存儲數(shù)據(jù),數(shù)據(jù)存儲在二級緩存中,因此對二級緩存容量的依賴非常大,所以CPU需要更大的二級緩存容量 才能發(fā)揮出應(yīng)有的性能。在實際應(yīng)用中,CPU處理的數(shù)據(jù)中大多數(shù)都是0KB~128KB大小的數(shù)據(jù),128KB~256KB的數(shù)據(jù)約有10%,256KB~512KB的 數(shù)據(jù)有5%,512KB~1MB的數(shù)據(jù)僅有3%左右。所以對于這種CPU來說,二級緩存容量從0KB增加到256KB對CPU性能的提高幾乎是直線性的;增加 到512KB對CPU性能的提高稍微小一些;從512KB增加到1MB,普通用戶就很難體會到CPU性能有提高了。正因為如此,大家能感受到Pentium 4 C(512KB二級緩存)與Celeron(128KB二級緩存)的性能差異,卻很難感受到Pentium 4 C(512KB二級緩存)與Pentium 4 E(1MB二級緩存)的性能差異了。
CPU二級緩存作為一級緩存的“后備倉庫”,用于為一級緩存存儲更多的數(shù)據(jù),減少CPU直接訪問內(nèi)存 的次數(shù)。理論上,CPU訪問并調(diào)用緩存的數(shù)據(jù)所占的比重越大,則CPU訪問并調(diào)用內(nèi)存的數(shù)據(jù)所占的比重就越小,那么因訪問內(nèi)存而耽誤的時間 就越少。所以緩存的容量越大,CPU的實際效率也就越高,性能就越強。
實際上,在腳本之家上講到,現(xiàn)在Intel和AMD處理器在一級緩存的邏輯結(jié)構(gòu)設(shè)計上有所不同,所以二級緩存對CPU性能的影響也不盡相同。因為CPU讀取的 數(shù)據(jù)(包括指令)中有80%的數(shù)據(jù)來自一級緩存,所以一級緩存的邏輯結(jié)構(gòu)決定了CPU二級緩存容量對CPU性能的影響。Intel的Pentium 4及Celeron系列處理器的一級數(shù)據(jù)緩存被稱為“數(shù)據(jù)代碼指令追蹤(讀寫)緩存”;AMD的Athlon 64/Athlon XP/Sempron/Duron系列處理器 的一級數(shù)據(jù)緩存叫作“實數(shù)據(jù)讀寫緩存”。
這兩類CPU一級緩存不同的邏輯結(jié)構(gòu)有什么不同?下面,我用一個例子來描述。
假設(shè)有一個運算任務(wù),要從“1”一直遞加到“999999”。在傳統(tǒng)的“實數(shù)據(jù)讀寫緩存”架構(gòu)下,這一系列數(shù)據(jù)中最先用到的數(shù)據(jù)(如 “1、2……449、450”)將存儲在CPU一級數(shù)據(jù)緩存中,更多的數(shù)據(jù)(如“451、452……899999、900000”)存儲在CPU二級緩存中,其余的數(shù) 據(jù)(如“900001、999002……999998、999999”)暫存在內(nèi)存中,CPU將按照一級數(shù)據(jù)緩存、二級緩存和內(nèi)存的順序讀取這些數(shù)據(jù)。
傳統(tǒng)的一級數(shù)據(jù)緩存的存儲方式
但是在“數(shù)據(jù)代碼指令追蹤緩存”架構(gòu)的CPU中,一級數(shù)據(jù)緩存并不存儲這些最先用到的數(shù)據(jù)(“1、2……449、450”),而是將這些 數(shù)據(jù)存儲到二級緩存中,一級數(shù)據(jù)緩存僅僅存儲這些數(shù)據(jù)在二級緩存中的起止地址(又稱為:指令代碼)。例如,數(shù)據(jù)“1、2……449、450” 順序存儲在二級緩存中,數(shù)據(jù)“1”所在地址為“00001F”,數(shù)據(jù)“450” 所在地址為“00451F”,實際上一級數(shù)據(jù)緩存只需要存儲“00001F”和“00451F”這兩個地址就可以了,而不需要存儲大量的數(shù)據(jù)。
“數(shù)據(jù)代碼指令追蹤緩存”架構(gòu)的一級數(shù)據(jù)緩存的存儲方式
但是由于其一級數(shù)據(jù)緩存不存儲數(shù)據(jù),數(shù)據(jù)存儲在二級緩存中,因此對二級緩存容量的依賴非常大,所以CPU需要更大的二級緩存容量 才能發(fā)揮出應(yīng)有的性能。在實際應(yīng)用中,CPU處理的數(shù)據(jù)中大多數(shù)都是0KB~128KB大小的數(shù)據(jù),128KB~256KB的數(shù)據(jù)約有10%,256KB~512KB的 數(shù)據(jù)有5%,512KB~1MB的數(shù)據(jù)僅有3%左右。所以對于這種CPU來說,二級緩存容量從0KB增加到256KB對CPU性能的提高幾乎是直線性的;增加 到512KB對CPU性能的提高稍微小一些;從512KB增加到1MB,普通用戶就很難體會到CPU性能有提高了。正因為如此,大家能感受到Pentium 4 C(512KB二級緩存)與Celeron(128KB二級緩存)的性能差異,卻很難感受到Pentium 4 C(512KB二級緩存)與Pentium 4 E(1MB二級緩存)的性能差異了。
相關(guān)文章
CPU型號、主頻、緩存、插槽接口類型等參數(shù)怎么查看?
CPU型號、主頻、緩存、插槽接口類型等參數(shù)怎么查看?對于購買電腦的朋友,這些都要查看,那么怎么查看呢?下面小編就為大家詳細(xì)介紹一下,一起來看看吧2015-11-05cpu中一級緩存是什么及數(shù)據(jù)緩存設(shè)計介紹
一級緩存都內(nèi)置在CPU內(nèi)部并與CPU同速運行,可以有效的提高CPU的運行效率,下面為大家介紹下一級緩存的分類及數(shù)據(jù)緩存設(shè)計,感興趣的朋友可以參考下哈,希望對你有所幫助2013-05-08- 三級緩存是為讀取二級緩存后未命中的數(shù)據(jù)設(shè)計的—種緩存,在擁有三級緩存的CPU中,只有約5%的數(shù)據(jù)需要從內(nèi)存中調(diào)用,這進一步提高了CPU的效率,下面為大家介紹下其分類及性2013-05-08
- 最近有網(wǎng)友詢問CPU的三級緩存是什么意思,有什么用呢?針對此類細(xì)節(jié)問題,下面小編與大家做個簡單介紹,感興趣的你可不要錯過了哈,希望本文知識點可以幫助到你2013-02-22
- CPU緩存(Cache Memory)是位于CPU與內(nèi)存之間的臨時存儲器,它的容量比內(nèi)存小但交換速度快。在緩存中的數(shù)據(jù)是內(nèi)存中的一小部分,但這一小部分是短時間內(nèi)CPU即將訪問的,當(dāng)C2012-12-27
- 本文詳細(xì)的介紹了CPU三級緩存的作用2012-11-17
- 一客戶送修一臺電腦,配置如下:賽揚800MHz的CPU,QDI693A主板,HY128MB內(nèi)存,邁拓20GB硬盤。故障現(xiàn)象表現(xiàn)為開機自檢完成后無法進入操作系統(tǒng),即電腦顯示“Verifying2010-09-08
- 在電腦城看到了一顆叫BE 2300的AMD X2 CPU,問老板他也說不出什么所以然來,請問這塊CPU的型號是怎么回事,有什么特別的地方嗎? 【答】:BE-2300是Athlon X22009-04-21
- 處理器要想發(fā)揮出優(yōu)異的性能,除了與核心架構(gòu)有關(guān)之外,緩存的作用也是功不可沒。那什么是CPU的緩存呢?其實很好解釋,CPU緩存(Cache Memoney)就是位于CPU與內(nèi)存之間2009-04-21
- 說到CPU,不得不說的就是CPU緩存,目前CPU的緩存已經(jīng)成了衡量CPU性能的一個必要指標(biāo),那么CPU緩存到底對CPU性能的影響有多大呢? 我們知道,CPU執(zhí)行指令時,會將執(zhí)行結(jié)果2009-04-21