cache的作用是什麼,cache作用

2022-01-18 05:09:31 字數 4990 閱讀 3415

1樓:愛可生雲資料庫

我們都知道 mysql 的 table cache 是表定義的快取,江湖上流傳著各種對這個引數的調優方法。

table cache 的作用,就是節約讀取表結構檔案的開銷。對於table cache 是否命中,其實table cache 是針對於執行緒的,每個執行緒有自己的快取,只快取本執行緒的表結構定義。不過我們發現,strace 中沒有關於表結構檔案的 open 操作(只有 stat 操作,定位表結構檔案是否存在),也就是說 table cache 不命中,不一定需要讀取表結構檔案。

這種感覺好像是:在不命中 table cache 時,命中了另外一個表結構快取。

運維建議:

我們讀一下 mysql 的文件,關於 table_open_cache 的建議值公式:建議值 = 最大併發數 * join 語句涉及的表的最大個數。

通過實驗我們容易理解:table_cache 是針對於執行緒的,所以需要最大併發數個快取。另外,一個語句 join 涉及的表,需要同時在快取中存在。

所以最小的快取大小,等於語句 join 涉及的表的最大個數。將這兩個數相乘,就得到了 mysql 的建議值公式。

2樓:

cache是高速緩衝儲存器 一種特殊的儲存器子系統,其中複製了頻繁使用的資料以利於快速訪問。

cache由標記儲存器和資料儲存器兩個基本部分組成。標記儲存器是用來儲存cache的控制位與塊地址標籤,控制位用於管理cache的讀寫操作,而塊地址標籤則記錄著cache中各塊的地址。這個地址包含了與主記憶體對映的塊地址,並且都與cache中的一塊“資料”相對應。

而這塊“資料”正是貯存於cache的資料儲存器中。

當cpu讀取資料時,先通過地址匯流排把實體地址送到cache中,與cache中的塊地址標籤進行對比。若相符合,則表示此資料已經存在於cache中(此情況被戲稱為“命中”),這時只需把cache中的對應資料經由資料匯流排直接傳送給cpu即可。但如果cpu送來的實體地址無法與cache中的塊地址標籤相符,則表明這一資料不在cache中(稱為“失誤”),這時,需要由主記憶體把cpu所需的資料地址拷貝到cache中,再由cache把資料傳送給cpu。

從這個過程我們可以看到,若cpu讀取“命中”,存取速度確實可以提高許多,但如果“失誤”,則cache的存在反而減慢了cpu的讀取速度。因此,採用何種技術和方法提高讀寫命中率、減少失誤率,就成了cache設計的關鍵。加大cache的容量當然可以提高命中率,但因成本問題,cache不可能無限增大,但可以通過採用適當的對映方式和塊替代方式來提高命中率。

知識拓展

cache中的對映方式資料如何與主記憶體中的資料相對應的問題。對映方式通常有以下三種:

1.直接對映

如果主記憶體上的塊只能對映到cache中的特定塊,我們稱這種對映方式為直接對映。直接對映的存取速度最快,但失誤率也最高。

2.完全對映

在這種對映方式下,主記憶體上的塊可以對映到cache的任意塊之中,當cpu欲讀取某一個塊時,cache會把cpu送來的地址與cache中的所有地址標籤進行對比。由於是完全對比,因此存取時間最長,但失誤率也最低。

3.結合對映

這種對映方式是把cache分成若干個頁面,每個頁面會有相同數目的塊。主記憶體中資料塊可以對映到cache中指定頁面的任一塊中。這種對映方式可以看成是直接對映與完全對映的折衷,是效率最高的對映方式。

3樓:奇勇肥蘭夢

臨時儲存資料的地方

臨時倉庫

搬貨速度快

cache作用

4樓:匿名使用者

cache作用具體如下:

1、cache可以大大提高cpu訪問主存的速度,**處理器絕大多數存取主儲存器的操作能為存取高速緩衝儲存器所代替,能極大緩和**處理器和主儲存器之間速度不匹配的矛盾。

在計算機技術發展過程中,主儲存器存取速度一直比**處理器操作速度慢得多,使**處理器的高速處理能力不能充分發揮,整個計算機系統的工作效率受到影響。在儲存層次上採用高速緩衝儲存器來緩和**處理器和主儲存器之間速度不匹配的矛盾也是常用的方法之一。很多大、中型計算機以及新近的一些小型機、微型機也都採用高速緩衝儲存器。

2、cache可以顯著提高計算機系統處理速度。

高速緩衝儲存器的容量一般只有主儲存器的幾百分之一,但它的存取速度能與**處理器相匹配。根據程式區域性性原理,正在使用的主儲存器某一單元鄰近的那些單元將被用到的可能性很大。因而,當**處理器存取主儲存器某一單元時,計算機硬體就自動地將包括該單元在內的那一組單元內容調入高速緩衝儲存器,**處理器即將存取的主儲存器單元很可能就在剛剛調入到高速緩衝儲存器的那一組單元內。

於是,**處理器就可以直接對高速緩衝儲存器進行存取。在整個處理過程中,如果**處理器絕大多數存取主儲存器的操作能為存取高速緩衝儲存器所代替,計算機系統處理速度就能顯著提高。

拓展資料:

cache定義如下:

cache名為高速緩衝儲存器。其是指存取速度比一般隨機存取記憶體(ram)來得快的一種ram,一般而言它不像系統主記憶體那樣使用dram技術,而使用昂貴但較快速的sram技術,也有快取記憶體的名稱。cache是存在於主存與cpu之間的一級儲存器,由靜態儲存晶片(sram)組成,容量比較小但速度比主存高得多, 接近於cpu的速度。

cache原理具體如下:

任何程式或資料要為cpu所使用,必須先放到主儲存器(記憶體)中,即cpu只與主存交換資料,所以主存的速度在很大程度上決定了系統的執行速度。程式在執行期間,在一個較短的時間間隔內,由程式產生的地址往往集中在儲存器的一個很小範圍的地址空間內。

指令地址本來就是連續分佈的,再加上迴圈程式段和子程式段要多次重複執行,因此對這些地址中的內容的訪問就自然的具有時間集中分佈的傾向。資料分佈的集中傾向不如程式這麼明顯,但對陣列的儲存和訪問以及工作單元的選擇可以使儲存器地址相對地集中。這種對區域性範圍的儲存器地址頻繁訪問,而對此範圍外的地址訪問甚少的現象被稱為程式訪問的區域性化性質。

如果把在一段時間內一定地址範圍被頻繁訪問的資訊集合成批地從主的系統中,cpu訪問資料時,在cache中能直接找到的概率,它是cache的一個重要指標,與cache的大小、替換演算法、程式特性等因素有關。

增加cache後,cpu訪問主存的速度是可以預算的,64kb的cache可以緩衝4mb的主存,且命中率都在90%以上。以主頻為100mhz的cpu(時鐘週期約為10ns)、20ns的cache、70ns的ram、命中率為90%計算,cpu訪問主存的週期為:有cache時,20×0.

9+70×0.1=34ns;無cache時,70×1=70ns。

cpu訪問主存的速度大大提高了,但是加cache只是加快了cpu訪問主存的速度,而cpu訪問主存只是計算機整個操作的一部分,所以增加cache對系統整體速度只能提高10~20%左右。

5樓:網天絡地

cache名為【高速緩衝儲存器】

其原始意義是指存取速度比一般隨機存取記憶體(ram)來得快的一種ram,一般而言它不像系統主記憶體那樣使用dram技術,而使用昂貴但較快速的sram技術,也有快取記憶體的名稱。

cache是存在於主存與cpu之間的一級儲存器, 由靜態儲存晶片(sram)組成,容量比較小但速度比主存高得多, 接近於cpu的速度。

作用:緩和**處理器和主儲存器之間速度不匹配的矛盾。

原理:當**處理器存取主儲存器某一單元時,計算機硬體就自動地將包括該單元在內的那一組單元內容調入高速緩衝儲存器,**處理器即將存取的主儲存器單元很可能就在剛剛調入到高速緩衝儲存器的那一組單元內。

效果:**處理器絕大多數存取主儲存器的操作能為存取高速緩衝儲存器所代替,計算機系統處理速度就能顯著提高。

cache組成結構:

1、cache儲存體:存放由主存調入的指令與資料塊。

2、地址轉換部件:建立目錄表以實現主存地址到快取地址的轉換。

3、替換部件:在快取已滿時按一定策略進行資料塊替換,並修改地址轉換部件。

cache在計算機中的作用是什麼?

6樓:河傳楊穎

高速緩衝儲存器是存在於主存與cpu之間的一級儲存器,具體作用如下:

在計算機技術發展過程中,主儲存器存取速度一直比**處理器操作速度慢得多,使**處理器的高速處理能力不能充分發揮,整個計算機系統的工作效率受到影響。

有很多方法可用來緩和**處理器和主儲存器之間速度不匹配的矛盾,如採用多個通用暫存器、多儲存體交叉存取等,在儲存層次上採用高速緩衝儲存器也是常用的方法之一。很多大、中型計算機以及新近的一些小型機、微型機也都採用高速緩衝儲存器。

cache組成部分

主要由三大部分組成:

cache儲存體:存放由主存調入的指令與資料塊。

7樓:開心時刻樂園

高速緩衝儲存器(cache)實際上是為了把由dram組成的大容量記憶體儲器都看做是高速儲存器而設定的小容量區域性儲存器,一般由高速sram構成。這種區域性儲存器是面向cpu的,引入它是為減小或消除cpu與記憶體之間的速度差異對系統效能帶來的影響。cache 通常儲存著一份記憶體儲器中部分內容的副本(拷貝),該內容副本是最近曾被cpu使用過的資料和程式**。

cache的有效性是利用了程式對儲存器的訪問在時間上和空間上所具有的區域性區域性,即對大多數程式來說,在某個時間片內會集中重複地訪問某一個特定的區域。如push/pop指令的操作都是在棧頂順序執行,變數會重複使用,以及子程式會反覆呼叫等,就是這種區域性區域性的實際例證。因此,如果針對某個特定的時間片,用連線在區域性匯流排上的cache代替低速大容量的記憶體儲器,作為cpu集中重複訪問的區域,系統的效能就會明顯提高。

系統開機或復位時,cache 中無任何內容。當cpu送出一組地址去訪問記憶體儲器時,訪問的儲存器的內容才被同時“拷貝”到cache中。此後,每當cpu訪問儲存器時,cache 控制器要檢查cpu送出的地址,判斷cpu要訪問的地址單元是否在cache 中。

若在,稱為cache 命中,cpu可用極快的速度對它進行讀/寫操作;若不在,則稱為cache未命中,這時就需要從記憶體中訪問,並把與本次訪問相鄰近的儲存區內容複製到 cache 中。未命中時對記憶體訪問可能比訪問無cache 的記憶體要插入更多的等待週期,反而會降低系統的效率。而程式中的呼叫和跳轉等指令,會造成非區域性操作,則會使命中率降低。

因此,提高命中率是cache 設計的主要目標。

清除CACHE分割槽是什麼意思,清除cache分割槽啥意思

清理一個名為cache中的檔案。cache第二區是為安卓系統快取區域,而儲存的系統經常尋訪的是資料和應用程式。清除cache分割槽,不影響個人資料,只是刪除了這個分割槽中已經儲存的快取內容,快取內容會在後續手機使用過程中重新自動生成。分割槽1 boot 此分割槽可以保證手機正常啟動,他包含了kern...

什麼是Cache?作用是什麼?說明其在微處理機中的位置

前言 雖然cpu主頻的提升會帶動系統效能的改善,但系統效能的提高不僅僅取決於cpu,還與系統架構 指令結構 資訊在各個部件之間的傳送速度及儲存部件的存取速度等因素有關,特別是與cpu 記憶體之間的存取速度有關。若cpu工作速度較高,但記憶體存取速度相對較低,則造成cpu等待,降低處理速度,浪費cpu...

的作用是什麼文件的作用是什麼

文件的作用和分類 軟體文件 document 也稱檔案,通常指的是一些記錄的資料 和資料 它具有固定不變的形式,可被人和計算機閱讀.它和 計算機程式共同構成了能完成特定功能的計算機軟體 有人把源 程式也當作文件的一部分 我們知道,硬體產品和產品資料在整 個生產過程中都是有形可見的,軟體生產則有很大不...