Data processing method and device, electronic device and storage medium

By using sniffing channels between peer caches to confirm the data storage situation and determine the forwarding path according to network conditions, the problem of low data forwarding efficiency between peer caches is solved, and more efficient data transmission and more stable system performance is achieved. .

CN118051685BActive Publication Date: 2025-02-18HYGON INFORMATION TECH CO LTD

Patent Information

Application Number
CN202410302101.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-03-15
Publication Date
2025-02-18
Estimated Expiration
2044-03-15

AI Technical Summary

Technical Problem

In large on-chip networks or complex computer networks, data forwarding between peer caches is not efficient, resulting in system performance degradation and affecting stability and reliability.

Method used

Sniffing information is sent to the second master through the sniffing channel to confirm whether the required data is stored, and to decide whether the data needs to be forwarded from the second master based on the return signal, taking into account the length of the transmission path and the degree of congestion.

Benefits of technology

The data forwarding mechanism is optimized, the system performance and efficiency are improved, power consumption and delay are reduced, and the system stability and reliability are enhanced.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118051685B_ABST
    Figure CN118051685B_ABST
Patent Text Reader

Abstract

Embodiments of the present disclosure provide a data processing method and device, an electronic device, and a storage medium. The data processing method includes: in response to receiving a first read request for reading first data from a first master device, sending a first sniffing information for confirming whether the second master device stores the first data to a second master device through a sniffing channel, wherein the first sniffing information has a field indicating whether the second master device needs to respond to the first sniffing information to determine whether the first data is stored. The method optimizes data forwarding by supporting a response message (e.g., ack) to the sniffing information sent by the sniffing channel, and comprehensively considering power consumption, delay, network congestion, etc. during data forwarding, thereby improving system performance and efficiency.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to a data processing method, a data processing device, an electronic device and a non-transitory storage medium. Background Art

[0002] Currently, caches with different states are gradually becoming the mainstream solution for cache consistency maintenance. However, the support for data forwarding between peer caches is not very perfect, especially in large-scale network-on-chip (NOC) networks or other complex computer networks. When the number of caches is large enough and the network scale is large enough, the efficiency of data transmission becomes particularly important because it directly affects the system's power consumption, latency, and bus bandwidth utilization. In this case, if the transmission and processing of data is not efficient enough, it may lead to a decline in system performance and even affect the stability and reliability of the entire system. Therefore, how to optimize and improve the data forwarding mechanism between peer caches is becoming increasingly important. Summary of the invention

[0003] At least one embodiment of the present disclosure provides a data processing method, comprising: in response to receiving a first read request for reading first data from a first master device, sending first sniffing information for confirming whether the second master device stores the first data to a second master device through a sniffing channel, wherein the first sniffing information includes a field indicating whether the second master device needs to respond to the first sniffing information to determine whether the first data is stored.

[0004] For example, in the data processing method provided by at least one embodiment of the present disclosure, in response to receiving a first signal returned by the second master device indicating that the second master device stores the first data, a second signal is sent to the second master device indicating whether the first data needs to be forwarded from the second master device.

[0005] For example, in the data processing method provided by at least one embodiment of the present disclosure, in response to the second signal indicating that the second master device needs to forward the first data, the second signal includes a forwarding destination address, so that the second master device sends the first data directly to the first master device, or forwards the first data to the first master device through a cache consistency node, wherein the cache consistency node is configured to maintain data consistency between multiple master devices.

[0006] For example, in the data processing method provided by at least one embodiment of the present disclosure, in response to the second signal indicating that the second master device needs to forward the first data, the second signal also includes data state conversion information, so that the first master device resets its own data state according to the data state conversion information after obtaining the first data.

[0007] For example, in the data processing method provided by at least one embodiment of the present disclosure, sending a second signal to the second master device indicating whether the first data needs to be forwarded from the second master device includes: sending a second signal to the second master device indicating that the first data does not need to be forwarded from the second master device.

[0008] For example, in the data processing method provided by at least one embodiment of the present disclosure, whether the second master device needs to forward the first data is determined based on a comparison of the length or congestion level of the data transmission path required for forwarding the first data, wherein the length or congestion level of the data transmission path required for the first data is obtained based on a comparison between multiple master devices, all of which store the first data and have received sniffing information confirming whether the first data is stored, and the multiple master devices include the second master device.

[0009] For example, in the data processing method provided by at least one embodiment of the present disclosure, in response to the fact that the data transmission path for forwarding data from the second master device to the first master device is the shortest, it is determined that the first data is forwarded from the second master device.

[0010] For example, in the data processing method provided by at least one embodiment of the present disclosure, in response to the fact that the congestion level of the data transmission path through which the second master device forwards data to the first master device is the lowest, it is determined to forward the first data from the second master device.

[0011] For example, in the data processing method provided by at least one embodiment of the present disclosure, congestion level information of the data transmission path required for the first data is obtained from a monitor arranged at each node, wherein the node includes a master device node, a cache consistency node or a routing node, and the monitor is configured to detect the congestion level of the node at the location.

[0012] For example, in the data processing method provided by at least one embodiment of the present disclosure, in response to the need for the first master device to initiate the second signal to the second master device and the need for the third master device to initiate the second sniffing information to confirm whether the second master device stores the second data, the second signal and the second sniffing information are combined and share a label and are sent to the second master device at the same time.

[0013] For example, in the data processing method provided by at least one embodiment of the present disclosure, in response to receiving the first read request to read the first data from the first master device, sniffing information for confirming whether the one or more master devices store the first data is sent to one or more master devices closest to the first master device on the data transmission path.

[0014] For example, in the data processing method provided by at least one embodiment of the present disclosure, in response to receiving the first read request to read the first data from the first master device, sniffing information for confirming whether the one or more master devices store the first data is sent to one or more master devices belonging to the same cache consistency node or the same chip as the first master device.

[0015] For example, in the data processing method provided by at least one embodiment of the present disclosure, in response to receiving a third signal from the second master device refusing to forward the first data, it is determined not to forward the first data from the second master device.

[0016] For example, in a data processing method provided by at least one embodiment of the present disclosure, in response to determining not to forward the first data from the second master device, the first data is acquired from a master device in a forwarding state.

[0017] For example, in the data processing method provided by at least one embodiment of the present disclosure, in response to determining not to forward the first data from the second master device, the first data is obtained from a master device among the sniffed master devices other than the second master device that is closest to the first master device on the data transmission path.

[0018] For example, in the data processing method provided by at least one embodiment of the present disclosure, in response to determining not to forward the first data from the second master device, the first data is obtained from the memory.

[0019] For example, in the data processing method provided by at least one embodiment of the present disclosure, in response to determining not to forward the first data from the second master device, the first data is obtained from the master device with the lowest congestion level among the sniffed master devices other than the second master device.

[0020] At least one embodiment of the present disclosure further provides an electronic device, the electronic device comprising a plurality of master devices and a cache coherence node. The plurality of master devices comprises a first master device and a second master device; the cache coherence node is configured to, in response to receiving a first read request for reading first data from the first master device, send first sniffing information to the second master device through a sniffing channel for confirming whether the second master device stores the first data, wherein the first sniffing information has a field indicating whether the second master device needs to store the first data in response to the first sniffing information.

[0021] At least one embodiment of the present disclosure further provides a data processing device, the data processing device comprising at least one memory and at least one processor. The at least one memory is configured to store computer executable instructions; and the at least one processor is configured to execute the computer executable instructions, wherein the computer executable instructions are executed by the at least one processor to implement the method described in any of the above embodiments.

[0022] At least one embodiment of the present disclosure further provides a non-transitory storage medium that non-transitorily stores computer-executable instructions, wherein when the computer-executable instructions are executed by a processor, the method described in any of the above embodiments is implemented. BRIEF DESCRIPTION OF THE DRAWINGS

[0023] In order to more clearly illustrate the technical solutions of the embodiments of the present disclosure, the drawings of the embodiments will be briefly introduced below. Obviously, the drawings in the following description only relate to some embodiments of the present disclosure, but are not intended to limit the present disclosure.

[0024] Figure 1 A schematic diagram of an on-chip network topology is shown.

[0025] Figure 2 A flowchart of a data processing method provided by at least one embodiment of the present disclosure is shown.

[0026] Figure 3 A schematic diagram of a data forwarding principle provided by at least one embodiment of the present disclosure is shown.

[0027] Figure 4 A schematic diagram showing a principle of monitoring the congestion level of a network node provided by at least one embodiment of the present disclosure.

[0028] Figure 5 A schematic diagram of a flow control unit or data packet unit (flit) compression principle provided by at least one embodiment of the present disclosure is shown.

[0029] Figure 6 A schematic diagram of the principle of refusing to forward data provided by at least one embodiment of the present disclosure is shown.

[0030] Figure 7 A schematic diagram of an electronic device provided by at least one embodiment of the present disclosure is shown.

[0031] Figure 8 A schematic diagram of a data processing device provided by at least one embodiment of the present disclosure is shown.

[0032] Fig. 9 A schematic diagram of a non-transitory storage medium provided by at least one embodiment of the present disclosure is shown. DETAILED DESCRIPTION

[0033] In order to make the purpose, technical solution and advantages of the embodiments of the present disclosure clearer, the technical solution of the embodiments of the present disclosure will be clearly and completely described below in conjunction with the drawings of the embodiments of the present disclosure. Obviously, the described embodiments are part of the embodiments of the present disclosure, rather than all of the embodiments. Based on the described embodiments of the present disclosure, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present disclosure.

[0034] Unless otherwise defined, the technical terms or scientific terms used in the present disclosure should be understood by people with ordinary skills in the field to which the present disclosure belongs. "First", "second" and similar words used in the present disclosure do not indicate any order, quantity or importance, but are only used to distinguish different components. "Include" or "comprise" and similar words mean that the elements or objects appearing before the word cover the elements or objects listed after the word and their equivalents, without excluding other elements or objects. "Connect" or "connected" and similar words are not limited to physical or mechanical connections, but may include electrical connections, whether direct or indirect. "Up", "down", "left", "right" and the like are only used to indicate relative positional relationships. When the absolute position of the described object changes, the relative positional relationship may also change accordingly.

[0035] In order to keep the following description of the embodiments of the present disclosure clear and concise, the present disclosure omits detailed descriptions of some known functions and known components.

[0036] Network on Chip (NOC) is a communication architecture based on SoC (System on Chip) that is used to connect various functional modules and processor cores inside the chip to achieve internal chip communication. NOC consists of a set of communication channels, routers and switches to transmit data and control signals inside the chip. The main purpose of NOC is to provide a high-bandwidth, low-latency and reliable communication mechanism to support the communication needs between various functional modules in multi-core processors and large-scale integrated circuits.

[0037] Multiple functional modules are connected in NOC, each of which may include at least one cache. The data in each cache may include M (Modified) state, E (Exclusive) state, S (Shared) state, I (Invalid) state, O (Owned) state and F (Forward) state (i.e., the cache state of MESIOF):

[0038] The M state indicates that the cache block exclusively owns the corresponding data, which has been modified and has not yet been written back to the memory;

[0039] The E state indicates that the cache block exclusively owns the corresponding data and the data has not been modified;

[0040] The S state indicates that the cache block shares the corresponding data with other caches;

[0041] The I state indicates that the cache block does not cache the corresponding data;

[0042] The O state indicates that the cache block has dirty data (or modified data) and the dirty data is shared by other caches;

[0043] The F state indicates a cache used to forward data among multiple caches in the S state.

[0044] It should be noted that, although the embodiment of the present disclosure shows six states of MESIOF, the embodiment of the present disclosure is not limited thereto, and the specific number of states can be flexibly set or defined according to different situations.

[0045] Figure 1 FIG. 1 shows a schematic diagram of a network on chip (NOC) topology structure. Figure 1 As shown, in the NOC topology, the system includes one or more routing nodes, each routing node includes one or more slots, and each slot is connected to one or more cache consistency nodes. Figure 1 As shown in , each slot is connected to a cache consistency node, which is connected to a main memory or a main memory and to one or more caches for maintaining data consistency in the one or more caches.

[0046] For example, Figure 1 The system shown in the figure includes two routing nodes, one routing node includes slots 0 and 1, and the other routing node includes slot 2 and other slots. Slots 0 to 2 are respectively connected to cache consistency nodes 0 to 2, cache consistency nodes 0 to 2 are respectively connected to main memory (or memory) 0 to 2, and cache consistency nodes 0 to 2 are respectively connected to caches 0 to 2, 3 to 5 and 6 to 8 to maintain data consistency between the different caches.

[0047] It should be noted that although Figure 1 Specific numbers of routing nodes, slots, cache coherence nodes, main memory, and cache are shown in FIG. 1 , but the embodiments of the present disclosure do not impose any limitation on the specific numbers of routing nodes, slots, cache coherence nodes, main memory, and cache. Figure 1The specific numbers shown in the are only illustrative for describing the technical ideas of the embodiments of the present disclosure. In practice, the numbers can be modified to any suitable values ​​according to the actual situation. In addition, although the present disclosure describes the technical solutions of the embodiments of the present disclosure with a network on a chip (NOC), this is only for better describing the technical solutions of the embodiments of the present disclosure. In fact, the technical solutions of the embodiments of the present disclosure can also be targeted at networks or interconnected structures larger than the network on a chip. For example, each cache corresponds to the storage space of any network device at a network node.

[0048] For example, Figure 1 As shown in , any one of caches 0 to 8 may correspond to one or more master devices, and a master device may include one or more processors (or processor cores). For example, when a master device needs to use data, the master device will first search from its corresponding cache (i.e., dedicated to the master device or shared with other master devices). If the required data is not found in its corresponding cache, it will go to addresses such as memory, private caches of other master devices (e.g., caches with data forwarding status F) according to the communication protocol to obtain the required data.

[0049] For example, when the cache or the host device corresponding to the cache wants to read data, there are two possible sources. For example, when there is no dirty data in the system, the cache will obtain the data from the main memory (Main Memory) where the corresponding address is located. For example, the cache can also obtain data from a peer cache in the network (NOC). For example, Figure 1 As shown in , suppose that cache 3 now wants to obtain data that is responsible for cache consistency node 1, cache 0 is in the F / O state, and caches 4, 5, and 8 are all in the S state. The current solution is to obtain data from cache 0, but since data transmission across slots may not necessarily be faster than obtaining data directly from cache consistency node 1, more sophisticated improvements are needed to the current way of obtaining data.

[0050] When a cache device in the system is in F+multi S (i.e., the system stores multiple caches in the S state and one of the multiple caches is in the data forwarding state F), if the cache device holding F (or state F) sends a command (e.g., vicblkcln) to evict the F state, no other cache device in the entire system will inherit the F state. In addition, since the communication protocol (e.g., CHI) can support directly changing the S state of clean data to the I state locally, when multiple cache devices in the system have the S state, it is difficult to directly determine whether the multiple cache devices all store data, or where the data is stored. At this time, when a new cache device initiates a read operation, it will not obtain data from the peer cache, but directly access the main memory to obtain data, which will increase data latency and increase main memory bandwidth pressure.

[0051] In a multi-slot system, in order to improve the data transmission efficiency of the system, the data can be sent to the data requester nearby when the cache read operation is initiated, because if the data transmission distance is too long, it will cause power consumption problems, bandwidth demand problems and delay problems. For example, the longer the distance and time that the data flows in the network, the greater the dynamic power consumption increase. For example, in a complex network topology, a long data transmission distance will cause more congestion. For example, if the data is not forwarded nearby, the cycle from initiating a request at the source to obtaining the data will be longer.

[0052] At least one embodiment of the present disclosure provides a data processing method, which includes: in response to receiving a first read request to read first data from a first master device, sending first sniffing information for confirming whether the second master device stores the first data to a second master device through a sniffing channel, wherein the first sniffing information includes a field indicating whether the second master device needs to store the first data in response to the first sniffing information.

[0053] In the data processing method of the above-mentioned embodiment of the present disclosure, by supporting response messages (for example, ack) to the sniffing information sent by the sniffing channel (snoopchannel), power consumption, delay, network congestion, etc. are comprehensively considered during the data forwarding process to achieve optimization of data forwarding, thereby improving the performance and efficiency of the system.

[0054] At least one embodiment of the present disclosure further provides an electronic device, which includes multiple master devices and a cache consistency node. For example, the multiple master devices include a first master device and a second master device; the cache consistency node is configured to respond to a first read request for reading first data received from the first master device, and send a first sniffing information for confirming whether the second master device stores the first data to the second master device through a sniffing channel, wherein the first sniffing information has a field indicating whether the second master device needs to store the first data in response to the first sniffing information.

[0055] The technical effect of the electronic device of the above embodiment of the present disclosure is the same as the technical effect of the above data processing method, and thus will not be described in detail.

[0056] Various embodiments of the present disclosure will be described below with reference to specific examples.

[0057] Figure 2 FIG. 1 is a flow chart of a data processing method provided by at least one embodiment of the present disclosure. Figure 2 As shown, in some embodiments of the present disclosure, the data processing method includes steps S101-S102.

[0058] Step S101: receiving a first read request for reading first data from a first master device.

[0059] Step S102, in response to receiving a first read request for reading first data from the first master device, sending first sniffing information for confirming whether the second master device stores the first data to the second master device through the sniffing channel.

[0060] For example, the first sniffing information has a field indicating whether the second master device needs to respond to the first sniffing information and whether the first data is stored.

[0061] For example, a first read request for reading first data is received from a first master device, and then first sniffing information for confirming whether the second master device stores the first data is sent to a second master device through a sniffing channel. The "first data" here refers to the data used as a description object, and the present disclosure does not limit the type and size of the data.

[0062] For example, refer again to Figure 1 The following is an illustrative description of the technical solution of the embodiment of the present disclosure by taking the first master device corresponding to cache 3 and the second master device corresponding to cache 4 as an example.

[0063] For example, when any one of the cache coherence nodes 0 to 2 (for example, cache coherence node 1) receives any first read request to read the first data from cache 3, cache coherence node 1 sends a first sniffing message to cache 4 through a sniffing channel to confirm whether cache 4 stores the first data. For example, the first sniffing message includes a field indicating whether cache 4 needs to respond to the first sniffing message to store the first data. For example, after cache 4 receives the first sniffing message from cache coherence node 1, it needs to respond to the first sniffing message, and the response information includes an indication of whether cache 4 caches the first data to be read by cache 3. It should be noted that the operations performed by the cache mentioned here may include operations performed by the master device corresponding to the cache.

[0064] Figure 3 FIG. 1 shows a schematic diagram of a data forwarding principle provided by at least one embodiment of the present disclosure. Figure 3 As shown in, in response to receiving a first read request RdShared for reading the first data from the cache 3, a first sniffing message Snoop need ack (i.e., a sniffing that needs to be confirmed) is sent to the cache 4 through the sniffing channel to confirm whether the cache 4 stores the first data. For example, the first sniffing message Snoop need ack has a field indicating whether the cache 4 needs to store the first data in response to the first sniffing information. For example, the field can occupy at least one bit. For example, if the cache 4 is not required to respond to the first sniffing information whether the first data is stored, the field can be set to a custom value (for example, 0) so that the cache 4 will not respond to the first sniffing information whether the first data is stored, so that the technical solution of the embodiment of the present disclosure can be better compatible with the existing design.

[0065] For example, in response to receiving a first signal returned by the second master device indicating that the second master device stores the first data, a second signal is sent to the second master device indicating whether the first data needs to be forwarded from the second master device.

[0066] For example, Figure 3 As shown, in response to receiving a first signal Snp hit S rsp S (i.e., a sniff hit response) returned by cache 4 indicating that cache 4 stores the first data, a second signal is sent to cache 4 indicating whether the first data needs to be forwarded from cache 4. Figure 3 As shown, the second signal can be a signal Snp ackforward+rdrsp info (i.e., sniff confirmation forwarding + response additional information) (or Snp ack forward (i.e., sniff confirmation forwarding)) indicating that cache 4 needs to forward the first data, or a signal Snp ack release (i.e., sniff confirmation release) indicating that cache 4 does not need to forward the first data.

[0067] For example, in response to the second signal indicating that the second master device needs to forward the first data, the second signal includes a forwarding destination address, so that the second master device directly sends the first data to the first master device, or forwards the first data to the first master device through a cache consistency node. For example, the cache consistency node is configured to maintain data consistency between multiple master devices.

[0068] For example, in response to the second signal (Snp ack forward+rdrsp info or Snp ack forward) indicating that cache 4 needs to forward the first data, the second signal includes a forwarding destination address (for example, the address of cache 3), so that cache 4 directly sends the first data to cache 3 according to the forwarding destination address (see Figure 3 Rdata in the cache). For example, after receiving the first data, cache 3 returns a message ack (or Req ack (i.e., request for confirmation)) to cache consistency node 1 to confirm receipt of the first data. For example, in response to the second signal (Snp ack forward+rdrsp info or Snp ack forward) indicating that cache 4 needs to forward the first data, cache 4 first sends the first data to cache consistency node 1, and cache consistency node 1 then forwards the first data received from cache 4 to cache 3. For example, in the case where the second signal sent to cache 4 indicates that cache 4 needs to forward the first data and cache 4 needs to first send the first data to cache consistency node 1 for unified processing (i.e., cache consistency node 1 then sends it to the requester or cache 3), the second information may be only Snp ack forward, and may not include rdrsp info to indicate the address of the destination cache 3 or other additional information for realizing the function of cache 4 directly sending the first data to cache 3. At this time, the system may default to sending the first data to cache consistency node 1 for unified processing first. For example, cache consistency node 1 may be configured to maintain data consistency between multiple caches.

[0069] By carrying rdrsp info in Snp ack forward, the number of data transmission times for sending data from a data forwarder (e.g., cache 4) to a data requester (e.g., cache 3) can be reduced. The data forwarder sends data directly to the data requester without transiting or forwarding through a cache consistency node, thereby reducing data delay during transmission, reducing bandwidth requirements for data transmission, and reducing power consumption required for data transmission.

[0070] For example, sending a second signal to the second master device indicating whether the first data needs to be forwarded from the second master device includes sending a second signal to the second master device indicating that the first data does not need to be forwarded from the second master device.

[0071] For example, in response to the second signal (Snp ack release) indicating that cache 4 does not need to forward the first data, cache 4 does not need to send the first data to cache 3, and does not need to make any response to the Snp ack release. Figure 3 Only the situation where cache coherence node 1 sends Snp ack release to cache 5 is shown.

[0072] For example, Figure 3 As shown in FIG. 1 , when cache coherence node 1 receives a first read request RdShared from cache 3 to read first data, it sends a request to multiple caches ( Figure 3 In the example, cache 4 and cache 5 are taken as examples) and a sniffing message Snoop need ack is sent to confirm whether the cache stores the first data. For example, in response to receiving the sniffing message Snoop need ack, cache 4 and cache 5 both return a signal Snp hit S rsp S indicating that the first data is stored to the cache consistency node 1. For example, in response to receiving a signal Snp hit S rsp S indicating that the first data is stored from cache 4 and cache 5, the cache consistency node determines to send Snp ack forward+rdrsp info or Snp ack forward to cache 4, and sends Snp ack release to cache 5.

[0073] For example, in response to receiving a first read request to read first data from a first master device, sniffing information for confirming whether one or more master devices store the first data is sent to one or more master devices closest to the first master device on a data transmission path.

[0074] For example, in response to receiving a first read request to read the first data from cache 3, cache consistency node 1 may not send sniffing information for confirming whether one or more caches store the first data to all caches in the S state, but may only send sniffing information for confirming whether one or more caches store the first data to caches that meet specific conditions.

[0075] For example, in response to receiving a first read request to read the first data from cache 3, cache consistency node 1 may send sniffing information to one or more caches closest to cache 3 on the data transmission path to confirm whether one or more caches store the first data. For example, in the case where cache consistency node 1 is not clear about which caches store the first data, cache consistency node 1 may broadcast to the slot where the requester (e.g., cache 3) is located to confirm whether one or more caches connected to or responsible for the slot store the first data. For example, routing distance judgment logic may be added to the cache consistency node, and then adapted by corresponding software to obtain the length of the data transmission path from the data forwarder (e.g., cache 4) to the data requester (e.g., cache 3). For example, it is also possible to rely on or according to the slot to determine or divide which cache is closer to the data requester on the data transmission path. The present disclosure does not impose any particular restrictions on how to measure the length of the data transmission path, as long as the length data of the data transmission path can be obtained.

[0076] For example, in response to receiving a first read request for reading first data from a first master device, sniffing information for confirming whether one or more master devices store the first data is sent to one or more master devices belonging to the same cache consistency node or the same chip as the first master device.

[0077] In response to receiving a first read request for reading first data from cache 3, cache coherence node 1 sends sniffing information to one or more caches belonging to the same cache coherence node or the same chip as cache 3 to confirm whether one or more caches store the first data.

[0078] For example, whether the second master device needs to forward the first data is determined based on a comparison of the length or congestion level of the data transmission path required for forwarding the first data. For example, the length or congestion level of the data transmission path required for the first data is obtained based on a comparison between a plurality of master devices, all of which store the first data and receive sniffing information confirming whether the first data is stored, and the plurality of master devices include the second master device.

[0079] For example, taking the second device including two caches, cache 4 and cache 5, as an example, when cache coherence node 1 confirms that cache 4 and cache 5 both cache the first data, cache coherence node 1 determines whether the second master device (e.g., cache 4 or cache 5) needs to forward the first data based on a comparison of the length or congestion level of the data transmission path required for forwarding the first data. For example, the length or congestion level of the data transmission path required for the first data is obtained based on a comparison between cache 4 and cache 5.

[0080] For example, in response to the data transmission path for forwarding data from the second master device to the first master device being the shortest, it is determined that the first data is forwarded from the second master device. For example, the cache coherence node 1 may select a shorter data transmission path for forwarding the first data from cache 4 to cache 3 and a data transmission path for forwarding the first data from cache 5 to cache 3 for data forwarding. For example, when the data transmission path for forwarding the first data from cache 4 to cache 3 is shorter than the data transmission path for forwarding the first data from cache 5 to cache 3, it is confirmed that the data is forwarded or acquired from cache 4.

[0081] For example, in response to the lowest congestion level of the data transmission path for forwarding data from the second master device to the first master device, it is determined to forward the first data from the second master device. For example, the cache coherence node 1 may select a data transmission path with a lower congestion level or no congestion problem between the congestion level of the data transmission path for forwarding the first data from cache 4 to cache 3 and the congestion level of the data transmission path for forwarding the first data from cache 5 to cache 3 for data forwarding. For example, when the congestion level of the data transmission path for forwarding the first data from cache 4 to cache 3 is less than the congestion level of the data transmission path for forwarding the first data from cache 5 to cache 3, it is confirmed to forward or obtain data from cache 4.

[0082] Need instructions is that although hot Figure 3 It is specifically shown that cache consistency node 1 sends sniffing information Snoop need ack to two caches (cache 4 and 5), but the embodiments of the present disclosure are not limited to this. In actual situations, cache consistency node 1 can send sniffing information Snoop need ack to any number of caches. In addition, although the present disclosure describes the embodiments using cache consistency node 1 as an example, it should be clear that the operations performed by cache consistency node 1 can also be applied to any other cache consistency nodes.

[0083] For example, in response to the second signal indicating that the second master device needs to forward the first data, the second signal also includes data state conversion information, so that the first master device resets its own data state according to the data state conversion information after obtaining the first data.

[0084] For example, in response to the second signal Snp ack forward+rdrsp info indicating that cache 4 needs to forward the first data, the second signal also includes data state transition information (for example, in rdrspinfo including Snp ack forward+rdrsp info), so that cache 3 resets its own data state according to the data state transition information after obtaining the first data. For example, after cache 3 obtains the first data, it sets its own data state from the I state to the S state according to the data state transition information.

[0085] Figure 4 A schematic diagram showing a principle of monitoring the congestion level of a network node provided by at least one embodiment of the present disclosure.

[0086] For example, congestion level information of a data transmission path required for the first data is obtained from a monitor set at each node, wherein the node includes a master device node, a cache consistency node or a routing node, and the monitor can be configured to detect the congestion level of the node at the location.

[0087] For example, although the nearest forwarding is the logically optimal choice, if the network near the initiator is already congested, it is also possible to consider sending data from the remote end (i.e., not the cache with S state closest to the requester). For example, in order to achieve this, it is necessary to add a detector (M, monitor) at each node to detect the request, and deal with the delay caused by sniffing and other messages in the transmission accordingly, and judge the congestion level of the corresponding node based on the delay time. For example, if the delay time to receive a response or message from a node is longer, it means that the node is more congested.

[0088] For example, Figure 4 As shown in , the system includes multiple network nodes, and the multiple network nodes include at least one of multiple master agent nodes HA (for example, cache consistency nodes), multiple cache agent nodes (CA) and multiple routing nodes (for example, routing 1 to routing 5). It should be noted that although only a few nodes are specifically mentioned here, it should be clear that this is only exemplary, and the embodiments of the present disclosure are not limited to this. Any network branch point can be regarded as a network node. One or more nodes consisting of multiple master agent nodes HA (for example, cache consistency nodes HA1-HA3), multiple cache agent nodes (for example, CA1-CA3), multiple routing nodes and / or any other type of nodes can be provided with a detector to detect the congestion level of the node corresponding to the detector. For example, if it is necessary to calculate Figure 4 The congestion level of the dotted path can be obtained through the data counted by the detector set on the dotted path. For example, the detector can monitor the delay caused by the flit in the transmission, and mark it (one-hot) when the flit is blocked in the network node for more than a certain period (cycle). In this way, the cache consistency node can know the congestion of the entire network. For example, for the location that is not counted, or the statistical result times out and becomes old, it can be assumed that the corresponding node is unobstructed (or not congested).

[0089] For example, after obtaining the data of the congestion degree of different nodes through the detector, if you want to calculate the congestion degree of data transmission from one node to another node, you can perform weighted calculation on the congestion data of all nodes on the data transmission path from the one node to the other node to obtain the numerical value of the congestion degree of the data transmission path from the one node to the other node. For example, the congestion degree value of each node is multiplied by the specific weight value of the corresponding node and then the values ​​are added together, so that the result obtained is the numerical value of the congestion degree of the data transmission path from the one node to the other node. For example, Figure 4 As shown in the figure, the numerical value of the congestion level of the data transmission path from node CA1 to CA3 can be obtained by first multiplying the four congestion level values ​​obtained by the detectors set at four different nodes from route 1 to route 4 by the preset weight values ​​corresponding to route 1 to route 4 respectively, and then adding these four values.

[0090] For example, after the detector obtains the congestion level value of each node, the congestion level value on a specific data transmission path can be predicted by data fitting. For example, if you want to predict the possible congestion level from cache proxy node CA1 to cache proxy node CA3 at some point in the future, you can collect the congestion level values ​​at different time points on the data transmission path from node CA1 to node CA3, so as to establish the horizontal and vertical coordinates with time and congestion level value (for example, the horizontal coordinate can be time or congestion level value), and then fit the change of congestion level value on the data transmission path from node CA1 to node CA3 over time into a function by data fitting. For example, the congestion level value at some point in the future can be predicted by the fitted function.

[0091] Figure 5 A schematic diagram of a flow control unit or data packet unit (flit) compression principle provided by at least one embodiment of the present disclosure is shown.

[0092] For example, in response to the need to initiate a second signal from the first master device to the second master device and the need to initiate a second sniffing information from the third master device to the second master device to confirm whether the second master device stores second data, the second signal and the second sniffing information are combined and share a label and are sent to the second master device at the same time.

[0093] For example, Figure 5As shown in, in response to the need to initiate a second signal (Snp ack forward or Snp ack forward+rdrsp info) for cache 3 to cache 4 and the need to initiate a second sniffing message (Snoop need ack) for cache 5 (here referred to as the third master device) to cache 4 to confirm whether cache 4 stores the second data, the cache consistency node 1 can combine the second signal Snp ack forward (or Snp ack forward+rdrsp info) and the second sniffing message Snoop needack and send them to cache 4 at the same time using a shared tag Tag. For example, the second data may be the same as or different from the aforementioned first data. For example, although cache 3 and cache 5 use the same tag, since they belong to steps at different stages, the system can distinguish which requester (for example, cache 3 or cache 5) causes multiple information with the same tag according to the steps at different stages. Therefore, this method can reduce network bandwidth pressure. As Figure 5 As shown in , when cache 4 does not cache the data required by cache 3 or cache 5, Snp Rsp hit 1 can be returned to cache consistency node 1 to indicate that cache 4 does not cache the data required by cache 3 or cache 5. It should be noted that although Figure 5 Only the complete process of cache 4 returning data to the requester cache 3 is shown, and the partial process of cache 4 returning data to cache 5 is omitted. However, in fact, the data request process of cache 5 for cache 4 can be similar to the data request process of cache 3 for cache 4.

[0094] Figure 6 A schematic diagram of the principle of refusing to forward data provided by at least one embodiment of the present disclosure is shown.

[0095] For example, in response to receiving a third signal from the second master device refusing to forward the first data, it is determined not to forward the first data from the second master device.

[0096] For example, in response to receiving the third signal (Snp hit S rsp S with resist Ack) indicating that cache 4 refuses to forward the first data, cache coherence node 1 determines not to forward the first data from cache 3. For example, even if cache 3 caches the first data, cache 3 may send Snp hit S rsp S with resist Ack to cache coherence node 1 based on any specified reason. For example, cache 3 may determine not to forward the first data based on a series of information such as congestion, Qos, software configuration, etc., and thus send Snp hit S rsp S with resist Ack to cache coherence node 1.

[0097] For example, in response to determining not to forward the first data from the second master device, the first data is obtained from the master device with the forwarding state. For example, because cache 4 refuses to forward the first data, cache consistency node 1 determines not to forward the first data from cache 4, but obtains the first data from a peer cache with the forwarding state (F state) other than cache 4.

[0098] For example, in response to determining not to forward the first data from the second master device, the first data is obtained from a master device that is closest to the first master device on the data transmission path among the sniffed master devices other than the second master device. For example, because cache 4 refuses to forward the first data, cache coherence node 1 determines not to forward the first data from cache 4, but obtains the first data from a cache that is closest to cache 3 on the data transmission path among the sniffed caches other than cache 4.

[0099] For example, in response to determining not to forward the first data from the second master device, the first data is obtained from the memory. For example, because cache 4 refuses to forward the first data, cache coherence node 1 determines not to forward the first data from cache 4, but directly obtains the first data from the memory.

[0100] For example, in response to determining not to forward the first data from the second master device, the first data is obtained from a master device with the lowest congestion level among the sniffed master devices other than the second master device. For example, because cache 4 refuses to forward the first data, cache coherence node 1 determines not to forward the first data from cache 4, and the cache with the lowest congestion level among the sniffed caches other than cache 4 obtains the first data.

[0101] In the data processing method of the above-mentioned embodiment of the present disclosure, by supporting response messages (for example, ack) to the sniffing information sent by the sniffing channel, power consumption, delay, network congestion, etc. are comprehensively considered during the data forwarding process to achieve optimization of data forwarding, thereby improving the performance and efficiency of the system.

[0102] Figure 7 A schematic diagram of an electronic device 70 provided by at least one embodiment of the present disclosure is shown. The electronic device 70 may include multiple master devices 701 and a cache consistency node 702. For example, the multiple master devices 701 include a first master device and a second master device. For example, the cache consistency node 702 may be configured to respond to a first read request for reading first data received from a first master device, and send a first sniffing information for confirming whether the second master device stores the first data to the second master device through a sniffing channel. For example, the first sniffing information has a field indicating whether the second master device needs to store the first data in response to the first sniffing information.

[0103] For example, the cache coherence node 702 is further configured to send a second signal to the second master device indicating whether the first data needs to be forwarded from the second master device in response to receiving a first signal returned by the second master device indicating that the second master device stores the first data.

[0104] The cache consistency node 702 is further configured to respond to a second signal indicating that the second master device needs to forward the first data, the second signal including a forwarding destination address, so that the second master device directly sends the first data to the first master device, or forwards the first data to the first master device through the cache consistency node 702. For example, the cache consistency node 702 is configured to maintain data consistency between multiple master devices 701.

[0105] The cache consistency node 702 is also configured to respond to a second signal indicating that the second master device needs to forward the first data, and the second signal also includes data state conversion information, so that the first master device resets its own data state according to the data state conversion information after obtaining the first data.

[0106] The cache coherence node 702 is further configured to send a second signal to the second master device indicating that the first data does not need to be forwarded from the second master device.

[0107] The cache coherence node 702 is further configured to determine whether the second master device needs to forward the first data based on a comparison of the length or congestion level of the data transmission path required for forwarding the first data. For example, the length or congestion level of the data transmission path required for the first data is obtained based on a comparison between multiple master devices 701, the multiple master devices 701 all store the first data and all receive sniffing information confirming whether the first data is stored, and the multiple master devices 701 include the second master device.

[0108] The cache coherence node 702 is further configured to determine to forward the first data from the second master device in response to the data transmission path for forwarding data from the second master device to the first master device being the shortest.

[0109] The cache coherence node 702 is further configured to determine to forward the first data from the second master device in response to the congestion level of the data transmission path through which the second master device forwards data to the first master device being the lowest.

[0110] The cache consistency node 702 is also configured to obtain congestion level information of the data transmission path required for the first data from a monitor set at each node. For example, the node includes a master device node, a cache consistency node 702 or a routing node, and the monitor is configured to detect the congestion level of the node at the location.

[0111] The cache consistency node 702 is also configured to respond to the need to initiate a second signal for the first master device to the second master device and the need to initiate a second sniffing information for the third master device to the second master device to confirm whether the second master device stores the second data, and combine the second signal and the second sniffing information and share a label to send them to the second master device at the same time.

[0112] The cache consistency node 702 is also configured to send sniffing information for confirming whether one or more master devices 701 store the first data in response to receiving a first read request to read the first data from the first master device.

[0113] The cache consistency node 702 is also configured to send, in response to a first read request for reading first data received from a first master device, sniffing information for confirming whether one or more master devices 701 store the first data to one or more master devices 701 belonging to the same cache consistency node 702 or the same chip as the first master device.

[0114] The cache coherence node 702 is further configured to determine not to forward the first data from the second master device in response to receiving a third signal from the second master device refusing to forward the first data.

[0115] The cache coherence node 702 is further configured to obtain the first data from the master device having the forwarding state in response to determining not to forward the first data from the second master device.

[0116] The cache coherence node 702 is further configured to obtain the first data from a master device that is closest to the first master device on a data transmission path among the sniffed master devices other than the second master device in response to determining not to forward the first data from the second master device.

[0117] The cache coherence node 702 is further configured to obtain the first data from the memory in response to determining not to forward the first data from the second master device.

[0118] The cache coherence node 702 is further configured to, in response to determining not to forward the first data from the second master device, obtain the first data from a master device with the lowest congestion level among the sniffed master devices other than the second master device.

[0119] In the electronic device of the above-mentioned embodiment of the present disclosure, by supporting response messages (for example, ack) to the sniffing information sent by the sniffing channel, power consumption, delay, network congestion, etc. are comprehensively considered during the data forwarding process to achieve optimization of data forwarding, thereby improving the performance and efficiency of the system.

[0120] At least some embodiments of the present disclosure further provide a data processing device, which includes at least one processor and at least one memory. For example, at least one memory can be configured to store computer executable instructions, and at least one processor can be configured to execute computer executable instructions. For example, when the computer executable instructions are executed by at least one processor, the data processing method provided by at least one embodiment of the present disclosure is implemented.

[0121] Figure 8 A schematic diagram of a data processing device provided by at least one embodiment of the present disclosure is shown.

[0122] like Figure 8 As shown, the data processing device 500 according to an embodiment of the present disclosure includes a processor 801 and a memory 802 , and the processor 801 and the memory 802 may be interconnected via a bus 803 .

[0123] The processor 801 can perform various actions and processes according to the program or code stored in the memory 802. Specifically, the processor 801 can be an integrated circuit chip with signal processing capabilities. For example, the above-mentioned processor 801 can be a general-purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components, and can implement or execute the various methods and steps disclosed in the embodiments of the present disclosure. The general-purpose processor can be a microprocessor or the processor can also be any conventional processor, etc., which can be an X86 architecture, an ARM architecture, a RISC-V architecture, etc.

[0124] The memory 802 is used to store computer executable instructions in a non-temporary manner, and the processor 801 is used to execute the computer executable instructions. When the computer executable instructions are executed by the processor 801, the data processing method provided by at least one embodiment of the present disclosure is implemented.

[0125] For example, memory 802 may be a volatile memory or a nonvolatile memory, or may include both volatile and nonvolatile memory. Nonvolatile memory may be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory. Volatile memory may be a random access memory (RAM), which is used as an external cache. By way of example but not limitation, many forms of RAM are available, such as static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDRSDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronously linked dynamic random access memory (SLDRAM), and direct memory bus random access memory (DRRAM). It should be noted that the memory of the method described herein is intended to include, but is not limited to, these and any other suitable types of memory.

[0126] In the data processing device of the above-mentioned embodiment of the present disclosure, by supporting response messages (for example, ack) to the sniffing information sent by the sniffing channel, power consumption, delay, network congestion, etc. are comprehensively considered during the data forwarding process to achieve optimization of data forwarding, thereby improving the performance and efficiency of the system.

[0127] At least one embodiment of the present disclosure further provides a non-transitory storage medium that non-transitorily stores computer executable instructions. For example, when the computer executable instructions are executed by a processor, the data processing method provided by at least one embodiment of the present disclosure is implemented.

[0128] Fig. 9 is a schematic diagram of a non-transitory storage medium provided by some embodiments of the present disclosure. Fig. 9 As shown, the non-transitory storage medium 900 can non-transitorily store computer executable instructions 910 , and the computer executable instructions 910 implement the data processing method provided by any embodiment of the present disclosure when executed by a computer.

[0129] Similarly, the non-transitory storage medium in the embodiments of the present disclosure may be a volatile memory or a non-volatile memory, or may include both volatile and non-volatile memory. It should be noted that the memory of the methods described herein is intended to include, but is not limited to, these and any other suitable types of memory.

[0130] The technical effect of the above-mentioned non-temporary storage medium is the same as the technical effect of the above-mentioned data processing method, which will not be repeated here.

[0131] It should be noted that the flowcharts and block diagrams in the accompanying drawings illustrate the possible architecture, functions and operations of the systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each box in the flowchart or block diagram can represent a module, a program segment, or a part of a code, and the module, program segment, or a part of the code contains at least one executable instruction for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in a different order from the order marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram and / or flowchart, and the combination of boxes in the block diagram and / or flowchart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.

[0132] In general, various example embodiments of the present disclosure may be implemented in hardware or dedicated circuits, software, firmware, logic, or any combination thereof. Certain aspects may be implemented in hardware, while other aspects may be implemented in firmware or software that may be executed by a controller, microprocessor, or other computing device. When various aspects of the embodiments of the present disclosure are illustrated or described as block diagrams, flow charts, or using some other graphical representation, it will be understood that the blocks, devices, systems, techniques, or methods described herein may be implemented in hardware, software, firmware, dedicated circuits or logic, general hardware or controllers or other computing devices, or some combination thereof as non-limiting examples.

[0133] In addition to the above exemplary description, the following points need to be explained for this disclosure:

[0134] (1) The drawings of the embodiments of the present disclosure only relate to the structures related to the embodiments of the present disclosure, and other structures may refer to the general design.

[0135] (2) For the sake of clarity, the thickness and size of layers or structures are exaggerated in the drawings used to describe the embodiments of the present disclosure. It is understood that when an element such as a layer, film, region, or substrate is referred to as being "on" or "under" another element, the element may be "directly" "on" or "under" the other element, or there may be intervening elements.

[0136] (3) In the absence of conflict, the embodiments of the present disclosure and the features therein may be combined with each other to obtain new embodiments.

[0137] The above description is only a specific implementation of the present disclosure, but the protection scope of the present disclosure is not limited thereto. The protection scope of the present disclosure shall be based on the protection scope of the claims.

Claims

1. A data processing method, comprising: In response to receiving a first read request for reading first data from a first master device, sending first sniffing information for confirming whether the second master device stores the first data to a second master device through a sniffing channel, wherein the first sniffing information includes a field indicating whether the second master device needs to respond to the first sniffing information to determine whether the first data is stored; In response to receiving a first signal returned by the second master device indicating that the second master device stores the first data, a second signal is sent to the second master device indicating whether the first data needs to be forwarded from the second master device.

2. The data processing method according to claim 1, wherein: In response to the second signal indicating that the second master device needs to forward the first data, the second signal includes a forwarding destination address, so that the second master device directly sends the first data to the first master device, or forwards the first data to the first master device through a cache coherence node, Wherein, the cache consistency node is configured to maintain data consistency among multiple master devices.

3. The data processing method according to claim 2, wherein: In response to the second signal indicating that the second master device needs to forward the first data, the second signal also includes data state conversion information, so that the first master device resets its own data state according to the data state conversion information after obtaining the first data.

4. The data processing method according to claim 1, wherein: The sending a second signal to the second master device as to whether the first data needs to be forwarded from the second master device includes: A second signal is sent to the second master device indicating that the first data does not need to be forwarded from the second master device.

5. The data processing method according to claim 1, further comprising: determining whether the second master device needs to forward the first data based on a comparison of the length or congestion level of a data transmission path required to forward the first data, The length or congestion level of the data transmission path required for the first data is obtained based on a comparison among a plurality of master devices, all of which store the first data and receive sniffing information confirming whether the first data is stored, and the plurality of master devices include the second master device.

6. The data processing method according to claim 5, further comprising: In response to the fact that the data transmission path for forwarding data from the second master device to the first master device is the shortest, it is determined that the first data is forwarded from the second master device.

7. The data processing method according to claim 5, further comprising: In response to the fact that the congestion level of the data transmission path through which the second master device forwards data to the first master device is the lowest, it is determined that the first data is forwarded from the second master device.

8. The data processing method according to claim 7, further comprising: Congestion level information of a data transmission path required for the first data is obtained from a monitor set at each node, wherein the node includes a master device node, a cache consistency node or a routing node, and the monitor is configured to detect the congestion level of the node at the location.

9. The data processing method according to claim 1, further comprising: In response to the need to initiate the second signal from the first master device to the second master device and the need to initiate the second sniffing information from the third master device to the second master device to confirm whether the second master device stores the second data, the second signal and the second sniffing information are combined and share a label and are sent to the second master device at the same time.

10. The data processing method according to claim 1, further comprising: In response to receiving the first read request to read the first data from the first master device, sniffing information for confirming whether the one or more master devices store the first data is sent to one or more master devices closest to the first master device on the data transmission path.

11. The data processing method according to claim 1, further comprising: In response to receiving the first read request for reading the first data from the first master device, sniffing information for confirming whether the one or more master devices store the first data is sent to one or more master devices belonging to the same cache consistency node or the same chip as the first master device.

12. The data processing method according to claim 1, further comprising: In response to receiving a third signal from the second master device refusing to forward the first data, it is determined not to forward the first data from the second master device.

13. The data processing method according to claim 12, further comprising: In response to determining not to forward the first data from the second master device, the first data is acquired from a master device having a forwarding state.

14. The data processing method according to claim 12, further comprising: In response to determining that the first data is not to be forwarded from the second master device, the first data is acquired from a master device that is closest to the first master device on a data transmission path among the sniffed master devices other than the second master device.

15. The data processing method according to claim 12, further comprising: In response to determining not to forward the first data from the second master device, the first data is retrieved from a memory.

16. The data processing method according to claim 12, further comprising: In response to determining not to forward the first data from the second master device, the first data is acquired from a master device with the lowest congestion level among the sniffed master devices other than the second master device.

17. An electronic device comprising: A plurality of master devices, including a first master device and a second master device; Cache coherence nodes, configured as: In response to receiving a first signal from the first master device to read the first data Read request, sent to the second master device through the sniffing channel for confirmation Whether the second master device stores the first sniffing information of the first data Information, wherein the first sniffing information has an indication of the second master device It is necessary to respond to whether the first sniffing information stores the first data The field of the data; as well as In response to receiving the indication returned by the second master device, the second master The device stores a first signal of the first data to the second master device Send whether the first data needs to be forwarded from the second master device Two signals.

18. A data processing device, comprising: at least one memory configured to store computer-executable instructions; as well as at least one processor configured to execute the computer executable instructions, Wherein, when the computer executable instructions are executed by the at least one processor, the method according to any one of claims 1-16 is implemented.

19. A non-transitory storage medium that non-transitorily stores computer-executable instructions, wherein: When the computer executable instructions are executed by a processor, the method according to any one of claims 1 to 16 is implemented.

Citation Information

Patent Citations

  • Cache module and system applied to distributed processing unit

    CN114298892A

Cited By

  • Data processing method and apparatus, electronic device, and storage medium

    EP4647943A1