一种缓存一致的控制方法、电子设备及介质与流程

文档序号:39726935发布日期:2024-10-22 13:27阅读:2来源:国知局
一种缓存一致的控制方法、电子设备及介质与流程

本发明涉及多路处理器系统,特别是涉及一种缓存一致的控制方法、电子设备及介质。


背景技术:

1、随着云计算近年来的迅速发展,规模不断增大,多路服务器的应用也变得越来越广泛。由于其具有稳定性能好,安全度高,运算效率高的特点,因此在几乎所有的生产生活领域得到了广泛应用。随着服务器应用领域的不断发展,高端服务器的应用需求已经进入了一个重要阶段。复杂的体系结构实现支持高端服务器系统实现高性能指标即高安全性、高可用性、高可靠性等的特点。例如:多处理器系统作为一种常见的架构,用于实现高性能和并行计算。

2、当前,随着计算和数据处理需求的不断增长,多个主机系统之间的高速数据交换和算力协同利用成为一项重要的挑战。在多处理器系统中,多个处理器同时访问共享内存,通常是通过常见的mesi缓存一致协议(modified、exclusive、shared、invalid,修改、独家、共享和无效)实现数据的一致性和正确性。但是mesi缓存一致协议在多路处理器系统中存在降低系统整体性能、增加系统设计和调试的复杂性、增加处理器访问的延迟和功耗、降低系统的性能稳定性、降低系统数据的实时性的问题。

3、可见,如何提供一种可以提高系统整体性能、降低系统设计和调试的复杂性、降低处理器访问的延迟和功耗、提高系统的性能稳定性和系统数据实时性的缓存一致的控制方法,是本领域技术人员亟待解决的问题。


技术实现思路

1、本发明实施例的目的是提供一种缓存一致的控制方法、电子设备及介质。可以解决现有技术中常见的mesi缓存一致协议在多路处理器系统中存在的降低系统整体性能、增加系统设计和调试的复杂性、增加处理器访问的延迟和功耗、降低系统的性能稳定性、降低系统数据的实时性的问题。

2、为解决上述技术问题,本发明实施例提供一种缓存一致的控制方法,应用于被请求端,包括:

3、接收请求端发送的目标数据对应的广播请求;

4、根据广播请求判断自身是否处于写状态;

5、若处于写状态,则向请求端发送服务器有效反馈响应,以便请求端根据服务器有效反馈响应进行目标数据的访问;

6、若处于读状态,则向请求端发送服务器无效反馈响应,以便请求端根据共享内存发送的内存反馈响应进行目标数据的访问。

7、另一方面,在若处于写状态,则向请求端发送服务器有效反馈响应之后,还包括:

8、判断广播请求是否表征请求端写入目标数据;

9、若广播请求表征请求端写入所述目标数据,则将自身状态从写状态转换为读状态,以便在向请求端发送服务器有效反馈响应之后,禁止对自身内的数据进行改写,以实现目标数据的缓存一致。

10、另一方面,还包括:

11、若未接收到请求端发送的广播请求,且自身处于写状态,判断自身处于写状态的时间是否超出第一时间阈值;

12、若自身处于写状态的时间超出第一时间阈值,则将当前自身处于写状态下的改写数据重新写入共享内存,以便共享内存将改写数据替换改写数据对应的原始数据。

13、另一方面,本发明提供的一种缓存一致的控制方法,还应用于请求端,包括:

14、待需要访问自身未存储的目标数据时,向被请求端和共享内存发送目标数据对应的广播请求;

15、接收被请求端和共享内存根据广播请求确定的反馈响应;

16、若反馈响应中包括一个有效反馈响应,则对共享内存发送的反馈响应进行访问;

17、若反馈响应中包括两个有效反馈响应,则对被请求端发送的反馈响应进行访问。

18、另一方面,当反馈响应中包括一个有效反馈响应,则有效反馈响应为内存反馈响应,其中,内存反馈响应表征共享内存存储目标数据;

19、当反馈响应中包括两个有效反馈响应,则分别为内存反馈响应和服务器有效反馈响应,其中,内存反馈响应表征共享内存存储目标数据,服务器有效反馈响应表征对应的被请求端处于写状态。

20、另一方面,在对内存反馈响应中共享内存发送的共享目标数据进行访问之后,还包括:

21、判断自身是否处于写状态;

22、若处于读状态,则将读状态转换为写状态,用于提高自身访问数据的速度;

23、相应的,在对服务器有效反馈响应中被请求端发送的服务器目标数据进行访问之后,还包括:

24、判断服务器有效反馈响应中被请求端发送的服务器目标数据和内存反馈响应中的共享内存发送的共享目标数据是否相同;

25、若服务器有效反馈响应中被请求端发送的服务器目标数据与内存反馈响应中的共享内存发送的共享目标数据不相同,则将自身访问的服务器目标数据写入共享内存中,以便共享内存将服务器目标数据替换共享内存中的共享目标数据;

26、丢弃共享反馈响应中的共享内存发送的共享目标数据。

27、另一方面,还包括:

28、若服务器有效反馈响应中被请求端发送的服务器目标数据与内存反馈响应中的共享内存发送的共享目标数据相同,则在第二时间阈值后,重新向被请求端和共享内存发送目标数据对应的广播请求。

29、另一方面,在对服务器有效反馈响应中被请求端发送的服务器目标数据进行访问之后,还包括:

30、若广播信息表征自身写入目标数据,则判断自身是否处于写状态;

31、若处于读状态,则将读状态转换为写状态,用于写入服务器目标数据。

32、另一方面,本发明还提供一种电子设备,包括:

33、存储器,用于存储计算机程序;

34、处理器,用于执行计算机程序以实现上述的缓存一致的控制方法的步骤。

35、另一方面,本发明还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述的缓存一致的控制方法的步骤。

36、另一方面,本发明还提供一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现上述的缓存一致的控制方法的步骤。

37、由上述技术方案可以看出,本发明所提供的一种缓存一致的控制方法,其应用于被请求端,包括:接收请求端发送的目标数据对应的广播请求;根据广播请求判断自身是否处于写状态;若处于写状态,则向请求端发送服务器有效反馈响应,以便请求端根据服务器有效反馈响应进行目标数据的访问;若处于读状态,则向请求端发送服务器无效反馈响应,以便请求端根据共享内存发送的内存反馈响应进行目标数据的访问。本发明中的请求端率先向被请求端和共享内存发送目标数据对应的广播请求,被请求端只需在接收广播请求之后判断自身是否处于写状态,若是,则说明被请求端存储了目标数据,并且目标数据在被请求端进行了修改,因此向请求端发送服务器有效反馈响应;若否,则说明被请求端未存储目标数据,因此向请求端发送服务器无效反馈响应。但是无论被请求端的状态如何,共享内存是存储目标数据的,因此共享内存向请求端发送内存反馈响应。在正式对响应进行访问过程中,若存在服务器有效反馈响应,则对服务器有效反馈响应进行目标数据的访问;若只存在内存反馈响应,则对内存反馈响应进行目标数据的访问。由此可见,本发明采用了只有一个写状态的缓存一致性协议,与传统的多状态缓存一致性协议相比,简化了状态管理,减少了系统实现的复杂度,系统能够更高效地进行缓存一致性维护,提高了系统的性能和可靠性。

38、另一方面,本发明所提供的一种缓存一致的控制方法,其应用于请求端,包括:待需要访问自身未存储的目标数据时,向被请求端和共享内存发送目标数据对应的广播请求;接收被请求端和共享内存根据广播请求确定的反馈响应;若反馈响应中包括一个有效反馈响应,则对共享内存发送的共享目标数据进行访问;若反馈响应中包括两个有效反馈响应,则对被请求端发送的服务器目标数据进行访问。本发明中的请求端率先向被请求端和共享内存发送目标数据对应的广播请求,请求端只需根据被请求端和共享内存的反馈响应进行分析即可。若存在服务器有效反馈响应,则此时说明当前服务器有效反馈响应对应的目标数据是最新数据,为保证数据的缓存一致则对服务器有效反馈响应进行目标数据的访问;若只存在内存反馈响应,则此时说明当前目标数据还保持原目标数据未改变,为保证数据的缓存一致则对内存反馈响应进行目标数据的访问。由此可见,本发明只对收到的反馈分析即可确定对应的被请求端的状态,与传统的多状态缓存一致性协议相比,简化了状态管理,减少了系统实现的复杂度,系统能够更高效地进行缓存一致性维护,提高了系统的性能和可靠性。

39、此外,本发明还提供了电子设备及介质,效果同上。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1