当前位置: 首页 > news >正文

CHI - Transaction介绍 - 其他类型介绍

之前介绍了CHI的transaction类型,包括read/dataless/write/snp等各类型的transaction,本小节介绍Exclusive和Cache Stashing类型的描述

1. Exclusive Access

   exclusive传输的目的是确保读写操作之间的行为是原子的,没有被其他人所修改的,基本的流程如下:

   a. 读 exclusive address 
b. 执行计算
c. 写exclusive address
如果在写之前有别的写发生了,那么这笔exclusive失效,对应的地址监测会有硬件的monitor来实现;

termcomment
exclusive loadLP执行适当程序指令的动作,例如LDREX,要求:
•从想要执行排他序列的位置获取数据。
•表示开始一个exclusive序列。
exclusive load transaction如果数据在LP的缓存中不可用,则在接口上发出的事务,以获取Exclusive Load的数据。
并不是每个Exclusive Load都需要一个Exclusive Load事务
exclusive storeLP执行适当程序指令的动作,例如STREX,要求:
1. 确定排他序列是否通过或失败。
2. 如果合适,更新现场数据。
可以通过或失败,执行处理器知道这个结果。当独占存储传递时,将更新地址位置的数据值。
当排他性存储失败时,这表明地址位置的数据值尚未更新,并且必须重新启动排他性序列。
exclusive store transaction在接口上发出的事务,该事务可能需要完成exclusive store。并非每个Exclusive Store都需要Exclusive Store事务。Exclusive Store事务可以通过也可以失败,并且使用事务响应将此结果告知LP.

2. Cache Stashing

     a.缓存存储是一种在系统中特定缓存中安装数据的机制。缓存存储确保数据位于其使用点附近,从而提高系统性能;
b.仅对snpable memory
c. 主要支持两种stash
WriteUniqueStash: 用隐藏<hint>的提示写。当应该分配数据的缓存在写入数据的时间点是已知的时,使用这种方法.
StashOnce: 独立存储请求。
当将数据存储到特定缓存中的请求与数据写入分离时,使用这种方法。
独立的Stash事务可以通过使用StashOnceUnique或StashOnceSepUnique,或stashoncesshared或StashOnceSepShared事务,这对应于缓存行的下一个预期使用是用于存储还是用于读取。

WriteUniquePtlStashSnpUniqueStashReadUnique
其他备份都被INVLD
其他备份都被INVLD
WriteUniqueFullStashSnpMakeInvalidStashReadUnique其他备份都被INVLD
StashOnceUnique
StashOnceSepUnique
SnpStashUniqueReadUnique其他备份都被INVLD
StashOnceShared
StashOnceSepShared
SnpStashSharedReadNotSharedDirty之后只会是SC/UC/UD
http://www.dtcms.com/a/302016.html

相关文章:

  • 图论(BFS)构造邻接表(运用队列实现搜索)
  • Java面试深度剖析:从JVM到云原生的技术演进
  • 10.若依的自定义注解 Log
  • 发布“悟能”具身智能平台,商汤让机器人像人一样和现实世界交互
  • GitLab 18.2 发布几十项与 DevSecOps 有关的功能,可升级体验【一】
  • RAGFlow系列(03):把知识库通过API方式共享给Dify等外部平台使用
  • WPS 将一个PPT里面的图片和文字导入到另一个PPT中
  • CSP-J 2022_第三题逻辑表达式
  • 面试官:详细说说Kafka rebalance 的策略以及具体过程
  • 中国计算机学会(CCF)推荐学术会议-B(数据库/数据挖掘/内容检索):WSDM 2026
  • Rust并发编程中的所有权挑战与解决方案:从实际项目看Clone策略的应用
  • vue3卡片垂直无限滚动
  • Android 中 TCP 协议的实战运用
  • 【JAVA安全-Fastjson系列】Fastjson 1.2.24 反序列化漏洞分析及测试环境构建【复习回顾】
  • 安宝特案例丨户外通信机房施工革新:AR+作业流技术破解行业难题
  • 安宝特案例丨AR+AI赋能轨道交通制造:破解人工装配难题的创新实践
  • AR技术赋能工业设备维护:效率与智能的飞跃
  • keeplived实例
  • 基于Verilog的神经网络加速器设计
  • 微信小程序点击输入框时,顶部导航栏被遮挡问题如何解决?
  • 数值计算 | 图解基于龙格库塔法的微分方程计算与连续系统离散化(附Python实现)
  • 软件测试开发转型经验分享与职业发展指南
  • 基于FPGA和DDS原理的任意波形发生器(含仿真)
  • 可配置的PWM外设模块
  • Java Collections工具类
  • RocketMQ入门实战详解
  • 【MySQL学习|黑马笔记|Day1】数据库概述,SQL|通用语法、SQL分类、DDL
  • 【数据标注】详解使用 Labelimg 进行数据标注的 Conda 环境搭建与操作流程
  • 【unitrix】 6.20 非零整数特质(non_zero.rs)
  • 做了一款小而美的本地校验器