CPU緩存是什么?一二三級(jí)緩存哪個(gè)對CPU最重要?

2018-04-26 09:37:04 來源:電腦百事網(wǎng) 人氣: 次閱讀 619 條評論

我們知道,CPU性能是主要由CPU構(gòu)架、核心線程數(shù)量、主頻、緩存等諸多因素共同決定,而“緩存”是很多網(wǎng)友容易忽視的一個(gè)地方。那么,CPU緩存是什么?在電腦CPU中,一二三級(jí)...

我們知道,CPU性能是主要由CPU構(gòu)架、核心線程數(shù)量、主頻、緩存等諸多因素共同決定,而“緩存”是很多網(wǎng)友容易忽視的一個(gè)地方。那么,CPU緩存是什么?在電腦CPU中,一二三級(jí)緩存究竟誰對CPU性能影響最重要呢?下面“”小編就來帶大家全面科普一下。

CPU緩存是什么?一二三級(jí)緩存哪個(gè)對CPU最重要?

CPU的一二三級(jí)緩存哪個(gè)重要?

CPU緩存是什么?

CPU緩存(Cache Memory)是位于CPU與內(nèi)存之間的臨時(shí)存儲(chǔ)器,它的容量比內(nèi)存小的多但是交換速度卻比內(nèi)存要快得多。CPU高速緩存的出現(xiàn)主要是為了解決CPU運(yùn)算速度與內(nèi)存讀寫速度不匹配的矛盾,因?yàn)镃PU運(yùn)算速度要比內(nèi)存讀寫速度快很多,這樣會(huì)使CPU花費(fèi)很長時(shí)間等待數(shù)據(jù)到來或把數(shù)據(jù)寫入內(nèi)存。在緩存中的數(shù)據(jù)是內(nèi)存中的一小部分,但這一小部分是短時(shí)間內(nèi)CPU即將訪問的,當(dāng)CPU調(diào)用大量數(shù)據(jù)時(shí),就可先緩存中調(diào)用,從而加快讀取速度。

CPU緩存是什么?一二三級(jí)緩存哪個(gè)對CPU最重要?

CPU緩存

緩存大小是CPU的重要指標(biāo)之一,而且緩存的結(jié)構(gòu)和大小對CPU速度的影響非常大,CPU內(nèi)緩存的運(yùn)行頻率極高,一般是和處理器同頻運(yùn)作,工作效率遠(yuǎn)遠(yuǎn)大于系統(tǒng)內(nèi)存和硬盤。實(shí)際工作時(shí),CPU往往需要重復(fù)讀取同樣的數(shù)據(jù)塊,而緩存容量的增大,可以大幅度提升CPU內(nèi)部讀取數(shù)據(jù)的命中率,而不用再到內(nèi)存或者硬盤上尋找,以此提高系統(tǒng)性能。但是從CPU芯片面積和成本的因素來考慮,緩存都很小。

CPU緩存是什么?一二三級(jí)緩存哪個(gè)對CPU最重要?
CPU緩存設(shè)計(jì)示意圖

按照數(shù)據(jù)讀取順序和與CPU結(jié)合的緊密程度,CPU緩存可以分為一級(jí)緩存,二級(jí)緩存,如今主流CPU還有三級(jí)緩存,甚至有些CPU還有四級(jí)緩存。每一級(jí)緩存中所儲(chǔ)存的全部數(shù)據(jù)都是下一級(jí)緩存的一部分,這三種緩存的技術(shù)難度和制造成本是相對遞減的,所以其容量也是相對遞增的。

為什么CPU會(huì)有L1、L2、L3這樣的緩存設(shè)計(jì)?主要是因?yàn)楝F(xiàn)在的處理器太快了,而從內(nèi)存中讀取數(shù)據(jù)實(shí)在太慢(一個(gè)是因?yàn)閮?nèi)存本身速度不夠,另一個(gè)是因?yàn)樗xCPU太遠(yuǎn)了,總的來說需要讓CPU等待幾十甚至幾百個(gè)時(shí)鐘周期),這個(gè)時(shí)候?yàn)榱吮WCCPU的速度,就需要延遲更小速度更快的內(nèi)存提供幫助,而這就是緩存,如下圖所示。

CPU緩存是什么?一二三級(jí)緩存哪個(gè)對CPU最重要?

當(dāng)CPU要讀取一個(gè)數(shù)據(jù)時(shí),首先從一級(jí)緩存中查找,如果沒有找到再從二級(jí)緩存中查找,如果還是沒有就從三級(jí)緩存或內(nèi)存中查找。一般來說,每級(jí)緩存的命中率大概都在80%左右,也就是說全部數(shù)據(jù)量的80%都可以在一級(jí)緩存中找到,只剩下20%的總數(shù)據(jù)量才需要從二級(jí)緩存、三級(jí)緩存或內(nèi)存中讀取,由此可見一級(jí)緩存是整個(gè)CPU緩存架構(gòu)中最為重要的部分。