- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
計算機結構之精華要素-im.cjcu.edu.tw
第 12 章快取結構 快取結構 電腦最重要的關鍵技術之一 常用於硬體和軟體 降低范紐曼瓶頸的最佳化技術 快取記憶體 快取技術扮演中介角色,來改善存取效能。 快取結構必須比正常存取機制快速。 在正常的情況下,必須使用快取記憶體,來保存某些資料的備份,以便在接受資料請求之後,能夠直接回覆請求。 快取結構圖 快取置放在請求機制(稱為請求者)和回答請求機制(通常是大型資料儲存裝置)之間的路徑上 快取特性 小巧 快取容量遠小於整體容量 靈活 決定如何回答 透通 不管快取插入與否,都不影響請求者和資料儲存裝置的功能 。 自動 快取機制具有主動的演算法,可以調整快取的管理方式。 快取領域 軟硬體 小型資料項目(比如:位元組、字組) 中型資料項目(比如:區段、分頁) 大型資料項目(比如:整個程式) 一般資料項目(比如:檔案、磁碟區塊) 應用程式(比如:網頁、文件、或資料庫)的資料項目 文字資料(比如:電子郵件訊息) 快取領域(Cont.) 非文字資料(比如:影像、音效檔、視訊) 單一電腦系統(比如:在處理器和記憶體之間) 多重電腦系統(比如:在多個桌上型電腦和資料庫伺服器之間) 擷取取資料的專用系統(比如:WWW網站) 擷取和儲存資料的專用系統(比如:實體記憶體) 快取重要性 快取結構是一種基本的最佳化技術,廣泛地運用於抓擷取資料的軟硬體系統,而所擷取的項目並沒有限制固定的資料型態、型式、或大小。 快取術語 快取擊中: 簡稱擊中 快取請求時,可直接從快取記憶體中取出所請求的資料; 快取失誤: 簡稱失誤 無法從快取記憶體取出請求的資料,必須到底層的資料儲存裝置,去擷取所請求的資料。 快取術語(Cont.) 區域存取性: 存取的指令或資料有區域化傾向 有許多重複指令或資料的請求,稱為高區域存取性 反之,則稱低區域存取性 愈高的區域存取性,代表愈高的效能表現。 快取效能 最差快取效能 最壞的極端情況:假設每一個請求都是新的資料項目,顯然無法在快取記憶體中,找到這些資料。 快取轉送N個請求給資料儲存裝置,這些所累計的時間成本,稱為最差成本Cworst: Cworst=NCm 平均成本為Cm。 最佳快取效能 最好的極端情況:假設快取的第一個請求,是擷取於儲存裝置,而後續的請求直接使用快取內部的複本。 累計N個請求的時間成本,稱為最佳成本Cbest: Cbest=Cm+(N-1)Ch 平均成本為: 當N?∞時,請求成本逼近快取速度Ch 效能成本的結論 如果不管額外的設計負荷,在最壞的情況下,有快取設計的效能不會比沒快取設計的效能要差;反之,在最好的情況下,每一個請求的時間成本接近快取效能,並且遠低於資料儲存裝置的存取成本。 快取效能的評估 擊中率意指:在一序列的快取請求中,快取擊中次數的比率。 擊中率 = 失誤率定義: 失誤率 = 1 - 擊中率 整體成本的評估 擊中率需視實際的情況而定 整體成本 = rCh + (1-r)Cm r 擊中率 Ch擊中成本 Cm失誤成本 有兩個可以改善整體成本: 增加擊中率 降低擊中成本 快取置換策略 如何增加擊中率呢? 快取容量遠小於資料儲存裝置,一旦快取滿載後,就必須引入一種置換策略。 置換策略有兩個主要考慮因素: 盡量保留存取最頻繁的資料項目,增加擊中率! 建構置換策略的成本必須不貴。 LRU置換法 最流行的置換策略就是LRU置換法 LRU主張 把過去最長時間未被存取的資料項目,列為置換的對象。 容易實現,而且工作順暢。 如果快取請求具有高區域存取性時,資料項目會不斷地重複存取,此時LRU會傾向保存這些資料項目,來降低存取成本。 LRU觀念 當快取記憶體滿載,卻又必須存取新的資料項目,此時快取面臨的選擇是要保留目前的資料項目,或者進行置換動作(回收一個資料,置放新的資料)。目前最常使用的置換法,以LRU置換法最受歡迎,除了容易建構實現外,LRU會盡量保留重複請求的資料項目。 多階層快取結構 快取結構最令人感到驚嘆的是改善效能的表現 快取會盡量靠近請求者,就近反應,降低抓取資料的成本。 我們可以在請求者和資料儲存裝置之間使用多個快取,稱為多階層快取結構,更進一步改善快取效能。 多階層快取結構圖 二階層快取結構 這種二階層快取結構的成本會低於原快取的存取成本。 整體成本 = r1Ch1 + r2Ch2 +(1-r1-r2)Cm r1是新快取的擊中率 Ch1則是新快取的存取成本; r2是原快取的擊中率 Ch2則是原快取的存取成本。 預先載入快取 快取設計者發現:程式在執行初期,快取擊中率會特別的低。 使用預先載入快取的觀念,來加以改善。 目前存在各種不同的預先載入法,比如: 快取可以先把某些內容備
文档评论(0)