【技术实现步骤摘要】
一种多核处理器系统的缓存一致性的验证方法及装置
[0001]本申请涉及多核处理器功能验证
,尤其涉及一种多核处理器系统的缓存一致性的验证方法、装置、电子设备及可读存储介质。
技术介绍
[0002]计算机物理内存通常使用DRAM(Dynamic Random Access Memory),它成本一般但是速度也一般。中央处理器(CPU)的处理速度受制于计算机物理内存的存取速度,为了提高存取速度,在两者之间引入了Cache(高速缓冲存储器)作为二者沟通的桥梁。
[0003]多核处理器的Cache和存储系统使用固定大小的数据块来进行交互,这个数据块被称为Cacheline(缓存行)。Cacheline会存放内存在Cache中缓存的数据,同时记录当前数据的状态。
[0004]多核处理器通过缓存一致性(Cache
‑
coherency)协议来管理Cacheline的状态,从而避免数据丢失或者数据一致性问题。缓存一致性是片上多核处理器存储系统的重要特性,它规定了并行程序执行结果的正确性,限定了多核处 ...
【技术保护点】
【技术特征摘要】
1.一种多核处理器系统的缓存一致性的验证方法,其特征在于,所述多核处理器系统包括两个以上处理器核心,每个处理器核心各自具有第一级缓存和第二级缓存,各处理器核心共同具有第三级缓存;其中,所述缓存一致性的验证方法,包括:监测第一处理器核心的第一缓存接收或发送的第一请求;其中,所述第一请求包括所述第一请求所要操作的数据所在的内存地址和命令类型;监测针对所述第一请求的第一响应信息;其中,所述第一响应信息包括所述第一缓存中的第一缓存行的当前状态;所述第一缓存行为所述第一请求所要操作的数据所在的缓存行;根据所述内存地址,从预设的内存地址与缓存行状态之间的对应关系中,确定所述第一缓存行的状态;基于所述第一缓存行的状态、所述命令类型以及预设的基于缓存一致性协议的状态转移规则,预测所述第一缓存行的状态,得到所述第一缓存行的预测状态;所述预设的基于缓存一致性协议的状态转移规则与所述多核处理器系统中使用的缓存一致性状态转移规则一致;将所述缓存行的当前状态与所述预测状态比对,确定所述第一缓存是否符合缓存一致性。2.根据权利要求1所述的方法,其特征在于,所述监测第一处理器核心的第一缓存接收或发送的第一请求,包括:监测第一处理器核心的第一缓存接收或发送的取指请求、探测请求和/或剔除请求。3.根据权利要求1所述的方法,其特征在于,所述第一缓存为第二级缓存;所述监测第一处理器核心的第一缓存接收或发送的第一请求,包括:监测第一处理器核心的第二级缓与存取指单元、第一级数据缓存或第三级缓存之间的请求。4.根据权利要求1所述的方法,其特征在于,所述预设的内存地址与缓存行状态之间的对应关系,包括:多个预设的内存地址与缓存行状态之间的对应关系;各预设的内存地址与缓存行状态之间的对应关系与各处理器核心一一对应;在监测第一处理器核心的第一缓存接收或发送的第一请求之后,根据所述内存地址,从预设的内存地址与缓存行状态之间的对应关系中,确定所述第一缓存行的状态之前,所述方法还包括:对所述第一请求进行标记,以使标记后的第一请求包括第一处理器核心信息;根据标记后的第一请求包括的第一处理器核心信息,从多个预设的内存地址与缓存行状态之间的对应关系中,确定与第一处理器核心对应的第一预设的内存地址与缓存行状态之间的对应关系;所述根据所述内存地址,从预设的内存地址与缓存行状态之间的对应关系中,确定所述第一缓存行的状态,包括:根据所述内存地址,从第一预设的内存地址与缓存行状态之间的对应关系,确定所述第一缓存行的状态。5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述缓存行的当前状态与所述预测状态一致的情况下,使用所述内存地址,以及所述缓存行的当前状态,对预设的内存地址与缓存行状态信息之间的对应关系进行更新。6.一种多核处理器系统的缓存一致性的验证装置,其特征在于,所述多核处理器系统包括两个以上处理器核心,每个处理器核心各自具有第一级缓存和第二级缓存,各处理器核心共同具有第三级缓存;其中,所述缓存一致性的验证装置,包括:第一监测模块,用于监测第一处理器核心的第一缓存接收或发送的第一请求;其中,所述第一请求包括所述第一请求所要操作的数据所在的内存地址和命...
【专利技术属性】
技术研发人员:马擎堃,张克松,陈元,
申请(专利权)人:海光信息技术股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。