cpu緩存什么作用
cpu緩存什么作用
究竟cpu緩存有什么作用呢,下面,就隨小編帶您去看看,希望您能滿意,謝謝。
cpu緩存什么作用:
最早先的CPU緩存是個(gè)整體的,而且容量很低,英特爾公司從Pentium時(shí)代開始把緩存進(jìn)行了分類。當(dāng)時(shí)集成在CPU內(nèi)核中的緩存已不足以滿足CPU的需求,而制造工藝上的限制又不能大幅度提高緩存的容量。因此出現(xiàn)了集成在與CPU同一塊電路板上或主板上的緩存,此時(shí)就把 CPU內(nèi)核集成的緩存稱為一級(jí)緩存,而外部的稱為二級(jí)緩存。一級(jí)緩存中還分?jǐn)?shù)據(jù)緩存(Data Cache,D-Cache)和指令緩存(Instruction Cache,I-Cache)。二者分別用來存放數(shù)據(jù)和執(zhí)行這些數(shù)據(jù)的指令,而且兩者可以同時(shí)被CPU訪問,減少了爭(zhēng)用Cache所造成的沖突,提高了處理器效能。英特爾公司在推出Pentium 4處理器時(shí),用新增的一種一級(jí)追蹤緩存替代指令緩存,容量為12KμOps,表示能存儲(chǔ)12K條微指令。 隨著CPU制造工藝的發(fā)展,二級(jí)緩存也能輕易的集成在CPU內(nèi)核中,容量也在逐年提升。現(xiàn)在再用集成在CPU內(nèi)部與否來定義一、二級(jí)緩存,已不確切。而且隨著二級(jí)緩存被集成入CPU內(nèi)核中,以往二級(jí)緩存與CPU大差距分頻的情況也被改變,此時(shí)其以相同于主頻的速度工作,可以為CPU提供更高的傳輸速度。 二級(jí)緩存是CPU性能表現(xiàn)的關(guān)鍵之一,在CPU核心不變化的情況下,增加二級(jí)緩存容量能使性能大幅度提高。而同一核心的CPU高低端之分往往也是在二級(jí)緩存上有差異,由此可見二級(jí)緩存對(duì)于CPU的重要性。 CPU在緩存中找到有用的數(shù)據(jù)被稱為命中,當(dāng)緩存中沒有CPU所需的數(shù)據(jù)時(shí)(這時(shí)稱為未命中),CPU才訪問內(nèi)存。從理論上講,在一顆擁有二級(jí)緩存的CPU中,讀取一級(jí)緩存的命中率為80%。也就是說CPU一級(jí)緩存中找到的有用數(shù)據(jù)占數(shù)據(jù)總量的80%,剩下的20%從二級(jí)緩存中讀取。由于不能準(zhǔn)確預(yù)測(cè)將要執(zhí)行的數(shù)據(jù),讀取二級(jí)緩存的命中率也在80%左右(從二級(jí)緩存讀到有用的數(shù)據(jù)占總數(shù)據(jù)的16%)。那么還有的數(shù)據(jù)就不得不從內(nèi)存調(diào)用,但這已經(jīng)是一個(gè)相當(dāng)小的比例了。目前的較高端的CPU中,還會(huì)帶有三級(jí)緩存,它是為讀取二級(jí)緩存后未命中的數(shù)據(jù)設(shè)計(jì)的—種緩存,在擁有三級(jí)緩存的CPU中,只有約5%的數(shù)據(jù)需要從內(nèi)存中調(diào)用,這進(jìn)一步提高了CPU的效率。 為了保證CPU訪問時(shí)有較高的命中率,緩存中的內(nèi)容應(yīng)該按一定的算法替換。一種較常用的算法是“最近最少使用算法”(LRU算法),它是將最近一段時(shí)間內(nèi)最少被訪問過的行淘汰出局。因此需要為每行設(shè)置一個(gè)計(jì)數(shù)器,LRU算法是把命中行的計(jì)數(shù)器清零,其他各行計(jì)數(shù)器加1。當(dāng)需要替換時(shí)淘汰行計(jì)數(shù)器計(jì)數(shù)值最大的數(shù)據(jù)行出局。這是一種高效、科學(xué)的算法,其計(jì)數(shù)器清零過程可以把一些頻繁調(diào)用后再不需要的數(shù)據(jù)淘汰出緩存,提高緩存的利用率。 CPU產(chǎn)品中,一級(jí)緩存的容量基本在4KB到64KB之間,二級(jí)緩存的容量則分為128KB、256KB、512KB、1MB、2MB等。一級(jí)緩存容量各產(chǎn)品之間相差不大,而二級(jí)緩存容量則是提高CPU性能的關(guān)鍵。二級(jí)緩存容量的提升是由CPU制造工藝所決定的,容量增大必然導(dǎo)致CPU內(nèi)部晶體管數(shù)的增加,要在有限的CPU面積上集成更大的緩存,對(duì)制造工藝的要求也就越高.