首页 > 其他分享 >侦听协议与目录协议小记

侦听协议与目录协议小记

时间:2024-05-07 11:22:48浏览次数:33  
标签:协议 请求 数据 Cache 内核 侦听 目录 小记

侦听协议

MESI协议

“Read Hit”和“Write Hit”表示内核在本地缓存中读写命中并获得有效数据;“Read Miss”和“Write Miss”表示内核在本地缓存中读写缺失,未获得有效数据;“Probe Read Hit”和“Probe Write Hit”表示内核在其他内核的 Cache 中读写命中,获得有效数据的副本。

在 MESI 模型中,当内核对主存储器进行读操作时,如果数据在本地Cache 读命中,直接读取数据并从 Cache 中送回内核,Cache 行状态信息保持不变。
如果这些数据在其他内核 Cache 中读命中,Cache 行状态信息结果如表 2.2 所示。如果读缺失,即数据从主存储器中获得,则在本地 Cache 分配一个新的 Cache 行,将数据写入,Cache 行状态为 E 状态,表示该新数据与主存中数据一致,并只存在于该Cache 中。

在 MESI 模型中,当内核对一段存储器进行写操作时,如果写缺失,则在本地缓存中分配一个新的 Cache 行,将数据写入,Cache 行状态为 M 状态,表示
该新数据与主存储器中数据不一致,并只存在于该 Cache 中。如果这些数据在本地Cache 写命中,Cache 行状态信息结果如表 2.3 所示。如果这些数据在其他内核 Cache写命中时,Cache 行状态信息结果如表 2.4 所示。

Dragon协议

Xerox PARC 的研究人员提出一种 Dragon 一致性协议 [39] ,该协议采用写更新和写回策略。在 Dragon 一致性协议中,Cache 行的状态定义为 E(exclusive),SM(sharedmodified),SC(shared clean),M(modified)四种。表 2.5 为 Dragon 一致性协议中状态的含义。

目录协议

基于目录的高速缓存一致性协议采用目录结构存储 Cache 行的状态信息,并通过目录结构完成数据的一致性维护 。在目录一致性协议中,当内核对本地的 Cache发送数据请求,在 Cache 控制器中产生缺失消息,Cache 控制器把请求消息发送到目录结构,通过目录结构查找拥有该 Cache 行数据副本的内核,然后定向地发送数据请求到拥有者,最后拥有者传输请求数据到请求者,并更新目录结构中 Cache 行的状态信息 Cache 行,当 Cache 行需要无效操作时,不仅本地 Cache 控制器需要进行无效操作,而且还需要把无效信息发送到目录结构,目录结构更新该 Cache 行的最新状态。这种采用目录结构的一致性协议有效地减小了侦听协议中总线广播需要的带宽通信。但是当发生 Cache 到 Cache 的读写缺失时,需要经过三次转发数据请求,增大了 Cache缺失延迟,另一方面随着内核数量的增大,需要呈指数型的目录结构存储目录状态信息。

目录一致性协议中,如果多个内核同时发送读数据请求,由于读数据请求不会导致数据的不一致性,因此多个读请求可并发处理。如果多个内核同时发送写数据请求,由于写数据请求会导致数据的不一致性,因此目录结构不支持同时写请求的并发处理,目录结构自身可充当一个排序的角色,对同时产生的写请求按照一定的规则进行排序,使得并发的写数据请求依次完成操作,并且目录结构支持实时更新排序结果,以避免一致性协议出现协议活锁。

参考来源

[1]操开波.多核微处理器缓存一致性研究[D].西安电子科技大学[2024-05-07].

标签:协议,请求,数据,Cache,内核,侦听,目录,小记
From: https://www.cnblogs.com/icwangpu/p/18176921

相关文章

  • 475-便携式手提RapidIO协议光纤发包测试仪
    便携式手提RapidIO协议光纤发包测试仪一、平台简介   便携式手提RapidIO协议光纤发包仪,以RapidIO收发卡和X86主板为基础,构建便携式的手提设备。   RapidIO收发卡是以KU060PCIeX4的双路QSFP+光纤收发卡,支持双路RapidIOX4数据的收发设计。   ......
  • 便携式手提测试仪设计资料:474-便携式手提万兆网络协议测试仪
    便携式手提万兆网络协议测试仪一、平台简介   便携式手提万兆网络协议测试仪,以FPGA万兆卡和X86主板为基础,构建便携式的手提设备。   FPGA万兆卡是以Kintex-7XC7K325TPCIeX4的双路万兆光纤网络卡,支持万兆网络数据的收发和网络协议的定制设计。  ......
  • 基于Luckfox Pico的opencv使用UDP协议与ubuntu传输摄像头数据-小白进阶
    使用UDP传输opencv的mat数据并显示本教程适用于进阶的小白尝试先说一下背景吧,正在工作的我,突然间看到淘宝上有个很漂亮的价格还不错的linux小板子,遂买下。没错,工作太无聊以至于开始摸鱼学习~但奈何每天工作完回家就像躺着,所以板子到手都快半年了才开始研究实现了简陋的摄像头......
  • I2C协议
    I2C的时序如下图I2C总线进行数据传送时,时钟信号SCL为高电平期间,数据线SDA上的数据必须稳定;只有在SCL上的信号为低电平时,SDA上的高电平或低电平状态才允许变化。因为当SCL是高电平时,数据线SDA的变化被规定为控制命令,如上图所示的起始条件和停止条件。数据传送过程中,先传送最高......
  • 教你用Perl实现Smgp协议
    本文分享自华为云社区《华为云短信服务教你用Perl实现Smgp协议》,作者:张俭。引言&协议概述中国电信短消息网关协议(SMGP)是中国网通为实现短信业务而制定的一种通信协议,全称叫做ShortMessageGatewayProtocol,用于在短消息网关(SMGW)和服务提供商(SP)之间、短消息网关(SMGW)和短消息网关......
  • SPI协议
    CPOL就是决定SCLK这个时钟信号线,在没有数据传输的时候的电平状态。CPOL=0:空闲状态时,SCLK保持低电平CPOL=1:空闲状态时,SCLK保持高电平 CPHA就是决定数据位传输是从第一个时钟(SCLK)边沿开始,还是第二个从二个时钟(SCLK)边沿开始。CPHA=0:数据从第一个时钟(SLCK)边沿开......
  • UHF RFID 使用小记
    1,概念UHF:UltraHighFrequency;超高频。RFID:RadioFrequencyIdentification;射频识别。电子标签:即RFID标签,是RFID的俗称。PDA:PersonalDigitalAssistant;个人数字助理。发卡器:对卡进行读写操作的工具。EPC:Electronicproductcode;电子产品代码。2,原理标签进入阅读器发出的......
  • ssh远程登录协议
    ssh远程登录协议什么是sshSSH即安全外壳协议(SecureShell),是一种网络协议,用于在计算机网络上提供安全的远程登录和命令执行功能。SSH通过加密通信通道来保护数据传输,防止敏感信息在传输过程中被窃听或篡改。SSH支持多种身份验证方法,包括密码、公钥和证书等,以确保只有授权用户能够......
  • 挖矿流量分析之Stratum挖矿协议
    目录前言区块链和挖矿相关概念挖矿木马挖矿协议StratumStratum工作过程前言之前做了一个关于“挖矿行为检测”的大创训练项目,在这里记录一下我关于挖矿检测相关内容的学习。区块链和挖矿相关概念区块链首先需要了解一些关于区块链的内容。注意,区块链和挖矿是两个紧密相关但又......
  • 工业通讯协议(一)- CAN
    一:概述CAN协议,全称为ControllerAreaNetwork,是一种重要的车用网络通信协议。它由德国公司博世(Bosch)设计,首次在1986年公布,并在1991年正式发布为标准。CAN协议被设计用于允许车辆上的微控制器和设备之间无主机的通信。CAN协议的主要用途包括:车辆内部通信:CAN协议最初就是为了汽......