【技术实现步骤摘要】
【国外来华专利技术】一种数据读取方法、装置及多核处理器
本申请涉及数据处理
,尤其涉及一种数据读取方法、装置及多核处理器。
技术介绍
为了提升处理器的性能,越来越多的处理器采用了多处理器核架构。在采用多处理器核架构的处理器中,通常每个处理器核都配置有对应的缓存代理(cacheagent,CA),处理器核从对应的CA中快速读写数据,并可以由本地代理(homeagent,HA)管理多个CA对数据的读写权限。比如,CA1可以向HA发送独占读取请求,以向HA请求对目标数据的独占权限(读写权限的一种)。HA接收到CA1的独占读取请求,根据CA1的独占读取请求向CA1提供目标数据,并指示其它CA无效所缓存的目标数据,从而使CA1获取对目标数据的独占权限。然而,由于不同CA可以独立地向同一个HA发送读取请求,致使CA在数据读取过程中可能会出现读取请求冲突的情况。例如,HA接收到CA1发送的独占读取请求,并根据该独占读取请求向CA1提供目标数据,以及指示其它CA无效所缓存的目标数据。之后,HA又接收到CA2发送的独占读取请求,HA根据该独占读取请求指示CA1向CA2提供目标数据,以及指示CA1无效所缓存的目标数据。由于CA1与HA之间有可能出现报文乱序等现象,使得CA1在发送了独占读取请求之后,有可能在接收到目标数据之前先接收到HA指示CA1无效该目标数据的请求,此时CA1处便发生了读取请求冲突。
技术实现思路
本申请提供一种数据读取方法、装置及多核处理器,用以提供一种读取请求冲突的处理机制。第一方面,本申请实施例提供一种数据 ...
【技术保护点】
一种数据读取方法,其特征在于,包括:/n第一缓存代理CA向本地代理HA发送第一独占读取请求,所述第一独占读取请求用于指示所述HA将目标数据的状态更新为所述第一CA独占状态;/n所述第一CA在接收到第一独占读取请求的第一独占读取应答前,若接收到所述HA发送的第一侦听请求,并根据所述第一侦听请求确定所述目标数据的状态为所述第一CA独占状态,则挂起所述第一侦听请求;/n所述第一CA接收到第一独占读取应答后,根据所述第一侦听请求更新对所述目标数据的读写权限,并向所述HA发送第一侦听应答。/n
【技术特征摘要】
【国外来华专利技术】一种数据读取方法,其特征在于,包括:
第一缓存代理CA向本地代理HA发送第一独占读取请求,所述第一独占读取请求用于指示所述HA将目标数据的状态更新为所述第一CA独占状态;
所述第一CA在接收到第一独占读取请求的第一独占读取应答前,若接收到所述HA发送的第一侦听请求,并根据所述第一侦听请求确定所述目标数据的状态为所述第一CA独占状态,则挂起所述第一侦听请求;
所述第一CA接收到第一独占读取应答后,根据所述第一侦听请求更新对所述目标数据的读写权限,并向所述HA发送第一侦听应答。
如权利要求1所述的方法,其特征在于,所述第一CA根据所述第一侦听请求更新对所述目标数据的读写权限,包括:
若所述第一侦听请求为独占侦听请求,则所述第一CA将对所述目标数据的读写权限更新为无效权限;
若所述第一侦听请求为共享侦听请求,则所述第一CA将对所述目标数据的读写权限更新为共享权限;
若所述第一侦听请求为无效侦听请求,则所述第一CA将对所述目标数据的读写权限更新为独占权限。
一种数据读取方法,其特征在于,包括:
本地代理HA接收第一缓存代理CA发送的第一独占读取请求;
所述HA根据所述第一独占请求将所述目标数据的状态更新为所述第一CA独占状态;
所述HA若接收到第二CA的第二读取请求,则根据所述目标数据的状态向所述第一CA发送第一侦听请求;所述第一侦听请求用于指示所述第一CA若根据所述第一侦听请求确定所述目标数据的状态为所述第一CA独占状态,则挂起所述第一侦听请求,以及,接收到所述第一独占读取应答后,根据所述第一侦听请求更新对所述目标数据的读写权限;
所述HA接收所述第一CA根据所述第一侦听请求返回的第一侦听应答,并更新所述目标数据的状态;
所述HA向所述第二CA发送第二读取应答。
如权利要求3所述的方法,其特征在于,所述HA更新所述目标数据的状态,包括:
若所述第二读取请求为独占读取请求,则所述HA将所述目标数据的状态更新为所述第二CA独占状态;
若所述第二读取请求为共享读取请求,则所述HA将所述目标数据的状态更新为所述第一CA和所述第二CA共享状态;
若所述第二读取请求为无效读取请求,则所述HA将所述目标数据的状态更新为所述第一CA独占状态。
一种数据读取方法,其特征在于,包括:
第一缓存代理CA向本地代理HA发送第一共享读取请求,所述第一共享读取请求用于指示所述HA将目标数据的状态更新为所述第一CA共享状态;
所述第一CA在接收到第一共享读取请求的第一共享读取应答前,若接收到所述HA发送的第三独占侦听请求,则将对所述目标数据的读写权限更新为无效权限,并向所述HA发送第三独占侦听应答;
所述第一CA接收到所述第一共享读取应答后,向所述HA发送第二共享读取请求,所述第二共享读取请求用于指示所述HA将所述目标数据的状态更新为所述第一CA共享状态。
一种数据读取方法,其特征在于,包括:
本地代理HA接收第一缓存代理CA发送的第一共享读取请求;
所述HA根据所述第一共享读取请求将所述目标数据的状态更新为所述第一CA共享状态,并向所述第一CA发送第一共享读取应答;
所述HA接收第二CA发送的第三独占读取请求,并根据所述目标数据的状态向所述第一CA发送第三独占侦听请求;所述第三独占侦听请求用于指示所述第一CA将对所述目标数据的读写权限更新为无效权限;
所述HA在接收到所述第一CA发送的第三独占侦听请求的第三独占侦听应答后,向所述第二CA发送第三独占读取应答,并将所述目标数据的状态更新为所述第二CA独占状态;
所述HA在接收到所述第一CA发送的第二共享读取请求后,向所述第二CA发送第二共享侦听请求;在接收到所述第二CA发送的所述第二共享侦听请求的第二共享侦听应答后,将所述目标数据的状态更新为所述第一CA和所述第二CA共享状态,并向所述第一CA发送第二共享读取请求的第二共享读取应答。
如权利要求6所述的方法,其特征在于,所述第三独占读取应答用于指示所述第二CA向所述HA返回所述第三独占读取应答的确收应答;
所述HA向所述第二CA发送第二共享侦听请求之前,还包括:
所述HA接收到所述第二CA发送的所述第三独占读取应答的确收应答。
一种装置,其特征在于,包括:请求模块、挂起模块和权限模块;
所述请求模块,用于向本地代理HA发送第一独占读取请求,所述第一独占读取请求用于指示所述HA将目标数据的状态更新为所述装置独占状态;
所述权限模块,用于在接收到第一独占读...
【专利技术属性】
技术研发人员:程永波,贺成洪,孙威,
申请(专利权)人:华为技术有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。