色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

討論經典的DynamIQ的cache架構

Linux閱碼場 ? 來源:代碼改變世界ctw ? 作者:代碼改變世界ctw ? 2022-10-26 11:04 ? 次閱讀

思考:1、在經典的 DynamIQ架構 中,數據是什么時候存在L1 cache,什么時候存進L2 cache,什么時候又存進L3 cache,以及他們的替換策略是怎樣的?比如什么時候數據只在L1?什么時候數據只在L2?什么時候數據只在L3?還有一些組合,比如什么時候數組同時在L1和L3,而L2沒有?這一切的規則是怎樣定義的?

2、本文不討論什么MESI協議,也不討論cache基本原理,本文討論的是多級cache之間的替換策略。

說明:本文討論經典的DynamIQ的cache架構,忽略 big.LITTLE的cache架構

d105c8a8-4853-11ed-a3b6-dac502259ad0.png

1、L1 / L2 cache直接的替換策略

我們先看一下DynamIQ架構中的cache中新增的幾個概念:

(1)Strictly inclusive: 所有存在L1 cache中的數據,必然也存在L2 cache中

(2)Weakly inclusive: 當miss的時候,數據會被同時緩存到L1和L2,但在之后,L2中的數據可能會被替換

(3)Fully exclusive: 當miss的時候,數據只會緩存到L1

綜上總結:inclusive/exclusive 描述的僅僅是 L1和L2之間的替換策略

我們再去查閱 ARMV9 cortex-A710 trm手冊,查看該core的cache類型,得知:

d11e1f5c-4853-11ed-a3b6-dac502259ad0.png

L1 I-cache和L2之間是 weakly inclusive的

L1 D-cache和L2之間是 strictly inclusive的

也就是說:

當發生D-cache發生miss時,數據緩存到L1 D-cache的時候,也會被緩存到L2 Cache中,當L2 Cache被替換時,L1 D-cache也會跟著被替換

當發生I-cache發生miss時,數據緩存到L1 I-cache的時候,也會被緩存到L2 Cache中,當L2 Cache被替換時,L1 I- cache不會被替換

再次總結 :L1 和 L2之間的cache的替換策略,I-cache和D-cache可以是不同的策略,每一個core都有每一個core的做法,請查閱你使用core的手冊。

2、core cache / DSU cache / memory 之間的替換策略

說實話, core cache/DSU cache/ 這個名字可能不好,感覺叫 privatecache和share cache更好,我也不知道官方一般使用哪個,反正我們能理解其意思即可吧。

那么他們之間的替換策略是怎樣的呢?

我們知道MMU的頁表中的表項中,管理者每一塊內存的屬性,其實就是cache屬性,也就是緩存策略。其中就有cacheable和shareable、Inner和Outer的概念。如下是針對 DynamIQ 架構做出的總結,注意哦,僅僅是針對 DynamIQ 架構的cache。

如果將block的內存屬性配置成Non-cacheable,那么數據就不會被緩存到cache,那么所有observer看到的內存是一致的,也就說此時也相當于Outer Shareable。其實官方文檔,也有這一句的描述:在B2.7.2章節 “Data accesses to memory locations are coherent for all observers in the system, and correspondingly are treated as being Outer Shareable”

如果將block的內存屬性配置成write-through cacheable 或 write-back cacheable,那么數據會被緩存cache中。write-through和write-back是緩存策略。

如果將block的內存屬性配置成 non-shareable, 那么core0訪問該內存時,數據緩存的到Core0的L1 D-cache / L2 cache (將L1/L2看做一個整體,直接說數據會緩存到core0的private cache更好),不會緩存到其它cache中。

如果將block的內存屬性配置成 inner-shareable, 那么core0訪問該內存時,數據只會緩存到core 0的L1 D-cache / L2 cache和 DSU L3 cache,不會緩存到System Cache中(當然如果有system cache的話 ) ,(注意這里MESI協議其作用了)此時core0的cache TAG中的MESI狀態是E, 接著如果這個時候core1也去讀該數據,那么數據也會被緩存core1的L1 D-cache / L2 cache, 此時core0和core1的MESI狀態都是S

如果將block的內存屬性配置成 outer-shareable, 那么core0訪問該內存時,數據會緩存到core 0的L1 D-cache / L2 cache 、cluster0的DSU L3 cache 、 System Cache中, core0的MESI狀態為E。如果core1再去讀的話,則也會緩存到core1的L1 D-cache / L2 cache,此時core0和core1的MESI都是S。這個時候,如果core7也去讀的話,數據還會被緩存到cluster1的DSU L3 cache. 至于DSU0和DSU1之間的一致性,非MESI維護,具體怎么維護的請看DSU手冊,本文不展開討論。

Non-cacheable write-through
cacheable
write-back
cacheable
non-shareable 數據不會緩存到cache
(對于觀察則而言,又相當于outer-shareable)
core0訪問該內存時,數據緩存的到Core0的L1 D-cache / L2 cache (將L1/L2看做一個整體,直接說數據會緩存到core0的private cache更好),不會緩存到其它cache中 同左側
inner-shareable 數據不會緩存到cache
(對于觀察則而言,又相當于outer-shareable)
core0訪問該內存時,數據只會緩存到core 0的L1 D-cache / L2 cache和 DSU L3 cache,不會緩存到System Cache中(當然如果有system cache的話 ) , (注意這里MESI協議其作用了)此時core0的cache TAG中的MESI狀態是E, 接著如果這個時候core1也去讀該數據,那么數據也會被緩存core1的L1 D-cache / L2 cache, 此時core0和core1的MESI狀態都是S 同左側
outer-shareable 數據不會緩存到cache
(對于觀察則而言,又相當于outer-shareable)
core0訪問該內存時,數據會緩存到core 0的L1 D-cache / L2 cache 、cluster0的DSU L3 cache 、 System Cache中, core0的MESI狀態為E。如果core1再去讀的話,則也會緩存到core1的L1 D-cache / L2 cache,此時core0和core1的MESI都是S
思考:那么此時core7去讀取會怎樣?
同左側





審核編輯:劉清

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 數據緩存
    +關注

    關注

    0

    文章

    23

    瀏覽量

    7055
  • MMU
    MMU
    +關注

    關注

    0

    文章

    91

    瀏覽量

    18283

原文標題:深度解讀DynamIQ架構cache的替換策略

文章出處:【微信號:LinuxDev,微信公眾號:Linux閱碼場】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    紫光展銳推出全球首款基于DYNAMIQ架構的4核LTE平臺--虎賁T310

    4月9日,紫光展銳宣布推出新一代LTE移動芯片平臺紫光展銳虎賁T310(以下簡稱:虎賁T310),這是全球首款基于Arm DynamIQ架構、面向智能手機的4核LTE芯片平臺,可實現優異的運算性能
    發表于 04-12 15:50 ?1447次閱讀

    ARM全新DynamIQ架構奠定未來10年發展基礎

    ARM全新推出的DynamIQ架構首次允許一個處理器芯片集成8個內核,而且可以是異構內核,它第一次使得處理器供應商可以采用更高效、更靈活的多核配置,它徹底奠定了未來10年ARM Cortex-A系列處理器的發展基礎。
    發表于 04-05 15:30 ?1548次閱讀

    Arm Cortex-A53 cache架構解析

    A53的L1 Data cache遵從的是MOESI協議,如下所示在L1 data cache的tag中存有MOESI的標記位。
    的頭像 發表于 09-01 15:01 ?8319次閱讀
    Arm Cortex-A53 <b class='flag-5'>cache</b>的<b class='flag-5'>架構</b>解析

    淺析Cache多核之間的一致性MESI協議

    進入正文,我們來看現代 ARM 架構體系(DynamIQ 架構)中的 cache 層級關系圖。注意 L1/L2 都在 core 中,L3 在 cluster 中。
    的頭像 發表于 10-27 16:26 ?815次閱讀
    淺析<b class='flag-5'>Cache</b>多核之間的一致性MESI協議

    DynamIQ,ARM的千億出貨量大生意

    面對未來巨大的市場需求,ARM也開始了行動,敲響了DynamIQ的千億出貨量大生意。
    發表于 03-24 11:00 ?2318次閱讀

    DynamIQ世界中的big.LITTLE是什么樣的?

    ARM DynamIQ 技術于近期發布,因其對 big.LITTLE 技術未來發展的影響而引起了科技行業和“技術愛好者”的強烈興趣。簡而言之,big.LITTLE 成為了 DynamIQ 技術中的一部分。那么現在讓我們回過頭來,從一個更大的范圍,看看這其中的關系。
    發表于 10-16 06:44

    ARM DynamIQ計算技術介紹

    ARM DynamIQ全新時代的計算技術
    發表于 02-03 06:49

    淺析ARM處理器的power架構

    的power mode和cluster的power mode。1、core的power modepower mode有以下一些模式:可見,在DynamiQ架構下的power,core的power模式,有多種
    發表于 03-31 11:24

    Arm DynamIQ共享單元技術參考手冊

    DynamIQ? 共享單元(DSU)包括支持DynamIQ的L3存儲系統、控制邏輯和外部接口? 簇DynamIQ? 集群微體系結構將一個或多個核心與DSU集成,以形成一個集群,該集群實現為指定的配置
    發表于 08-08 06:48

    ARM Dynamiq共享單元-120型技術參考手冊

    DynamIQ? 共享單元-120(DSU-120)提供了一個共享的L3存儲系統、窺探控制和過濾以及其他控制邏輯,以支持a級架構核心的集群。該集群被稱為DSU-120 DynamIQ? 簇此外,片上系統(SoC)的所有外部接口均
    發表于 08-08 06:29

    ARM Dynamiq?共享單元-110型技術參考手冊

    DynamIQ? 共享單元-110(DSU-110)提供了一個共享的L3內存系統、窺探控制和過濾以及其他控制邏輯,以支持a級架構核心的集群。該集群被稱為DSU-110 DynamIQ? 簇此外,到片上系統(SoC)的所有外部接口
    發表于 08-10 07:52

    DynamIQ世界中的big.LITTLE

    ARM DynamIQ 技術于近期發布,因其對 big.LITTLE 技術未來發展的影響而引起了科技行業和“技術愛好者”的強烈興趣。簡而言之,big.LITTLE 成為了 DynamIQ 技術中的一部分。那么現在讓我們回過頭來,從一個更大的范圍,看看這其中的關系。
    發表于 04-14 16:36 ?1019次閱讀
    <b class='flag-5'>DynamIQ</b>世界中的big.LITTLE

    解讀ARM架構最新的DynamIQ技術,人工智能和VR

    ARM DynamIQ 技術于近期發布,因其對 big.LITTLE 技術未來發展的影響而引起了科技行業和“技術愛好者”的強烈興趣。簡而言之,big.LITTLE 成為了 DynamIQ 技術中的一部分。那么現在讓我們回過頭來,從一個更大的范圍,看看這其中的關系。
    發表于 04-21 16:54 ?896次閱讀

    big.LITTLE 和DynamIQ有什么關系?DynamIQ big.LITTLE 有什么好處?

    ARM DynamIQ 技術于近期發布,因其對 big.LITTLE 技術未來發展的影響而引起了科技行業和技術愛好者的強烈興趣。簡而言之,big.LITTLE 成為了 DynamIQ 技術中的一部分
    發表于 07-10 10:51 ?5668次閱讀

    什么是 Cache? Cache讀寫原理

    由于寫入數據和讀取指令分別通過 D-Cache 和 I-Cache,所以需要同步 D-Cache 和 I-Cache,即復制后需要先將 D-Cach
    發表于 12-06 09:55 ?2559次閱讀
    主站蜘蛛池模板: 日日摸夜夜添无码AVA片| 日本国产精品无码一区免费看| 午夜在线观看免费完整直播网 | qvod激情图片| se01短视频在线观看| 丰满少妇67194视频| 国产久爱青草视频在线观看| 国产一区精选播放022| 久久精品国产免费播高清无卡| 快穿做妓女好爽H| 人妻夜夜爽天天爽三区麻豆AV网站| 少妇两个奶头喷出奶水了怎么办 | 人人干人人插| 亚久久伊人精品青青草原2020| 一本道在线综合久久88| 99久久国产露脸精品竹菊传煤| 俄罗斯14一18处交| 国产最新精品亚洲2021不卡| 久久一er精这里有精品| 日本视频中文字幕一区二区| 亚洲AV噜噜狠狠网址蜜桃尤物| 曰批视频免费40分钟不要钱| videosgrati欧美另类| 国产欧美日韩国产高清| 老司机亚洲精品影院| 骚浪插深些好烫喷了| 亚洲色噜噜狠狠网站| 99福利在线观看| 国产精品自产拍在线观看网站| 好嗨哟在线看片免费| 海角社区在线视频播放观看| 学生小泬无遮挡女HD| 野花香在线观看免费观看大全动漫 | 久热这里只有精品99国产6| 漂亮的保姆6在线观看中文 | 国产色婷婷精品人妻蜜桃成熟时| 久久婷婷电影网| 十分钟免费视频大全在线| 欲乱艳荡少寡妇全文免费| 国产成人精品123区免费视频| 久久草这在线观看免费|