由于CPU是核心硬件,相信我們在選擇CPU的時候都會去關(guān)心CPU參數(shù)方面,而在CPU核心參數(shù)中,我們經(jīng)常會看到緩存(Cache)這個參數(shù),那么CPU緩存有什么用?下面武林網(wǎng)分享一下科普一下關(guān)于CPU緩存的作用。
CPU緩存是什么?
CPU緩存是CPU和內(nèi)存之間的臨時存儲器,雖然緩存的容量不能與內(nèi)存和硬盤相比,但是交換速度卻比它們快得多了,CPU緩存就是為了更快的連接CPU與內(nèi)存而存儲在中間媒介。簡單來說,因?yàn)镃PU的速度快,而內(nèi)存的速度較慢,這時CPU緩存來解決這個問題,減少了CPU的等待時間,變相的提高了CPU的性能。
舉個例子,比如CPU需要做一個加法運(yùn)算,需要-2個時鐘周期,如果從內(nèi)存中讀取數(shù)據(jù)需要100-300個周期,而CPU是不可能等待那么長的時間,即使是高端CPU也變成龜速,因此通過高速緩存來減少了CPU等待時間。
在主流的CPU中,一般緩存分為一級緩存、二級緩存、三級緩存,而它們之間的速度呈遞減,容量呈遞增,讀取一級緩存中的信息需要3個周期,與CPU處理運(yùn)算的速度無限接近了,讀取二級緩存的周期大約10-15個周期,而三級緩存所需時間為50個周期左右。
之所以CPU需要采用這種層級結(jié)構(gòu),主要就是是從成本、性能、容量還有面積上來平衡的,對于CPU緩存來說,下面幾點(diǎn)是它們提升的目前,也就所謂的CPU緩存的作用。
1、縮短延遲
訪問緩存的時間應(yīng)該盡可能縮短,可以通過多種的方式縮短這個時間,比如能夠通過減小緩存的大小或關(guān)聯(lián)性來降低緩存的延遲,還有方式預(yù)測、增加帶寬等方法。
2、提升命中率
所謂的命中率是在高速緩存中找到內(nèi)存引用的速率,我們希望能夠首先通過緩存中獲得信息,以得到速度優(yōu)勢,所以緩存需要最大限度地實(shí)現(xiàn)這一目標(biāo)。對于單個高速緩存,大小、關(guān)聯(lián)性和塊大小決定命中率。
3、降低更低級別內(nèi)存下的開銷
高速緩存是內(nèi)存層次結(jié)構(gòu)的一部分,其性能會影響其它性能,處理其它內(nèi)存花費(fèi)的時間越長,意味著系統(tǒng)性能越低,也就是說盡可能讓處理在緩存中完成。
4、減少錯失懲罰
緩存中不能命中是無法避免的事情,但是我們可以減少處理未命中所需的時間以獲得更好的處理器性能,通過提升命中率并通過應(yīng)用不同的優(yōu)化,能夠降低錯失懲罰。
高速緩存是CPU中十分重要的部分,占據(jù)了大量的資源開銷和成本,如果您看過CPU架構(gòu)圖的話,您就會發(fā)現(xiàn)緩存占據(jù)了至少50%的面積,絕對至關(guān)重要。
總結(jié):
CPU緩存的作用說白了就是提高命中率、降低延遲、降低內(nèi)存開銷、減少錯失懲罰等,對于一般用戶你只需了解CPU緩存能夠提升CPU的工作效率即可,緩存在cpu參數(shù)中的作用舉足輕重。
|
新聞熱點(diǎn)
疑難解答
圖片精選