首页 > 其他分享 >ARMv8中non-shareable inner-shareable outer-shareable属性

ARMv8中non-shareable inner-shareable outer-shareable属性

时间:2024-07-13 10:54:05浏览次数:19  
标签:non 缓存 outer cache shareable 内存 core0

image

  • 如果将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 和 cluster0的L2 cache,不会缓存到其它cache中

  • 如果将block的内存属性配置成 inner-shareable, 那么core0访问该内存时,数据只会缓存到core 0和core 1的L1 d-cache中, 也会缓存到clustor0的L2 cache,不会缓存到clustor1中的任何cache里。

  • 如果将block的内存属性配置成 outer-shareable, 那么core0访问该内存时,数据会缓存到所有cache中

Non-cacheable write-through cacheable write-back cacheable
non-shareable 数据不会缓存到cache(对于观察则而言,又相当于outer-shareable) Core0读取时,数据缓存的到Core0的L1 d-cache 和 cluster0的L2 cache, 如果core0和core1都读写过该内存,且在core0 core1的L1 d-cache中都缓存了该内存。那么core0在读取数据的时候,core0的L1 Dcache会更新,但core 1的L1 Dcache不会更新 同左侧
inner-shareable 数据不会缓存到cache(对于观察则而言,又相当于outer-shareable) Core0读取时,数据缓存的到Cluster0中所有cache 同左侧
outer-shareable 数据不会缓存到cache(对于观察则而言,又相当于outer-shareable) Core0读取时,数据缓存的到所有cache 同左侧

标签:non,缓存,outer,cache,shareable,内存,core0
From: https://www.cnblogs.com/linhaostudy/p/18299766

相关文章

  • Fatal error: Call to a member function read() on a non-object in 错误解决方法(织
    大家都说这是因为织梦代码优化不好怎么着怎么着的,其实有一些是因为这个原因,但不是完全因为这个。dede登录后台卡死原因分析登录完后台,加载的分别为顶部、左侧、右侧内容三个部分。顶部只是简单的查询一下权限不会卡、左侧也是简单的查询了一下也不会卡,那么原因就是......
  • 【最新鸿蒙应用开发】——Router页面路由
    Router路由页面路由指的是在应用程序中实现不同页面之间的跳转,以及数据传递。通过Router模块就可以实现这个功能.1.创建页面之前是创建的文件,使用路由的时候需要创建页面,步骤略有不同方法1:直接右键新建Page(常用)方法2:单独添加页面并配置1.1.直接右键新建Page......
  • 处理Keras中的AttributeError: ‘NoneType‘ object has no attribute ‘XYZ‘
    处理Keras中的AttributeError:'NoneType'objecthasnoattribute'XYZ'......
  • Pytnon变量print打印计数显示前面补零 0001、0002
    前言全局说明Pytnon变量计数显示前面补零0001、0002一、说明环境:Windows11家庭版23H222631.3737Python3.8.10(tags/v3.8.10:3d8993a,May32021,11:48:03)[MSCv.192864bit(AMD64)]onwin32二、变量print打印计数显示前面补零0001、0002>>>frame_co......
  • 前端react入门day06-ReactRouter
    (创作不易,感谢有你,你的支持,就是我前行的最大动力,如果看完对你有帮助,请留下您的足迹)目录什么是前端路由创建路由开发环境快速开始抽象路由模块路由导航什么是路由导航声明式导航编程式导航导航传参嵌套路由配置什么是嵌套路由嵌套路由配置默认二级路由404路由配......
  • Nonlinear econometrics for finance
    NonlineareconometricsforfinanceHOMEWORK2(LIE,NLSandGMM)Problem1(LawofIteratedExpectations.)(6points) Afinancialanalystwantstopredictthereturnonaportfolio.Theportfoliogiveseitherareturnof1or2percentineachperiod.She......
  • vue-router 源码分析——8.重定向
    这是对vue-router3版本的源码分析。本次分析会按以下方法进行:按官网的使用文档顺序,围绕着某一功能点进行分析。这样不仅能学习优秀的项目源码,更能加深对项目的某个功能是如何实现的理解。这个对自己的技能提升,甚至面试时的回答都非常有帮助。在围绕某个功能展开讲解时,所......
  • opencv 编译报错: error: temporary of non-literal type 'google::protobuf::intern
    完整报错:C:\Users\MyName\MyProject\lib\include\google\protobuf\stubs\mutex.h:124:error:temporaryofnon-literaltype'google::protobuf::internal::CallOnceInitializedMutex<std::mutex>'inaconstantexpressionInfileincludedfrom......
  • 1055 - Expression #9 of SELECT list is not in GROUP BY clause and contains nonag
    MySQL8的默认sql_mode包含了only_full_group_by,如果想要sql不按照这模式做检查,可以设置当前session的sql_mode值不包含oly_full_group_by;全局修改则使用以下sql--全局配置session级配置则去掉GlobalSETGLOBALsql_mode='ANSI_QUOTES,STRICT_ALL_TABLES,STRICT_TRANS_TAB......
  • vue-router
    vue-routervue-router是vue的一个插件库,专门用来实现SPA单页面应用对路由的理解1.什么是路由一个路由就是一组映射关系(key-value)key是路径,value可以是function或components2.路由的分类后端路由理解:value是function,用于处理客户端提交的请求工作过程:服务......