系統架構設計師(八)——計算機組成與體系結構-緩存

緩存,裡涉及自身的概念性的東西不多,可是考試會考一些地址分配、映像之類的,煩人的很,1分題,要搞一章,也許是兩張、maybe三張,OK開始

緩存

這裡的緩存主要指的是cache,反正也是計算機性能的瓶頸(計算機各種各樣的瓶頸),一般採用相聯存儲,還記得相聯存儲不?(忘記了?奶奶個腿的,給你鏈接 )通過內容完成訪問的存儲設備,簡單的說,存數據時自動給個不用的單元,讀數據時,別人給地址,你按照地址找,這個不是,這個給你數據的一部分,你一看是我要找的,拿走,(客官:老子沒看明白!)好吧,再說一次(客官:要和剛剛的不一樣,要生動,實際!!!)ok,就是警察準備逮你,別的方式是去找你的地址,然後上門抓你,慢不慢??!!!現在呢,你把照片貼門口,警察站天上(哦,MY GOD!)一眼看見了,直接抓走。(小樣的,警察抓你了,明白了不!老實點!別炸刺!)

so,因為數據比較(這四個字是一個詞,不要分開了)是一種並行方式,可以同時進行,所以速度快。

說了半天,其實上面沒啥大用,項目用不上,那麼為啥要說尼?(因為,所以,不說也可以。哈哈哈哈)為了可以引出一個概念——訪問命中,我們在讀取數據時,會先將內存一部分可能用到的數據提前加載到cache內,這樣我們先看cache裡有沒有,有,世界多麼美好,速度飛快啊,性能高啊。沒有,what,找內存吧,然後再將數據給CPU和cache,cpu直接使用,cache等下次看看能不能中。

so,又引出幾個名詞,cache訪問命中率(不解釋了,多直白)用h代表,同時我們也就有了cache的週期時間t1,ok,有了命中就有未命中(失效率)用(1-h)代表,cache未命中前面告訴你了,找內存,搜迪斯噶,就有了內存週期時間t2.

哦了,又TMD引出一個公式:

cache+內存組成的存儲,系統訪問數據的平均週期t3為:

t3=t1*h+t2*(1-h)

ok,概念性的說完了,考你一道題吧,這種題一般不考,沒什麼技術含量。

某大型互諒網公司,採購了一批高性能、大容量、高吞吐的服務器,打算進行雲部署,項目預期使用openstack+docker實現基礎設施層(IAAS),已知服務器內存讀寫時間為100ns,cache讀寫時間10ns,且cache是數據指令合一型,取指令為98%命中,取數據為95%命中。在運行系統時有20%的指令需要獲取數據,問每條指令的平均訪問時間多少。前提假設系統運行無阻塞。

先分析:

1、前面一段話,都TMD是啥,浪費時間,狗帶

2、取指令或取數據,先取cache,沒有的話,再找內存

3、取指令:cache命中為98%,so,內存為2%

4、取數據:cache命中為95%,so,內存為5%

5、讀寫時間:cache為10ns,內存為100ns

6、20%概率取數據

最後計算時間,時間為取指令時間+取數據時間,套公式

取指令(cache命中時間+內存命中時間)+取數據(概率發生)(cache命中時間+內存命中時間)

=(98%*10+2%*100)+20%*(95%*10+5%*100)

=自己算吧

=14.7

這一章是cache的一些基本知識,知道就好,沒啥大用,考試應該不考,實在是沒什麼東西了

下一章說說映射,和內存地址那些亂七八糟的搞在一起,麻煩死,一章還不一定能說完。

88


分享到:


相關文章: