The present application relates to the field of electronic technologies. In particular, the present application relates to a central processing unit (CPU) interconnect apparatus and system. The present application also relates to a CPU interconnect control method and control apparatus.
In quick path interconnect (QPI) technology, central processing units (CPUs) in multiple nodes are interconnected, so that the multiple nodes that originally work independently can be combined into an entity (for example, forming a partition), and the entity formed by means of combination serves as an execution body to undertake original work of all the nodes. This increases data bearing capacity and processing capability of all the nodes.
In the related art, quantity of terminals of a CPU is limited, and in actual application, it is generally impossible to connect, in a partition, every CPU to other CPUs in an one-to-one manner. Therefore, during a topology creation, when a CPU is to be connected to other CPUs, the CPU is connected to several selected CPUs among all CPUs. Because there are many ways for connecting one CPU to several CPUs among all CPUs, for interconnection of CPUs in multiple nodes, multiple topology structures may be created according to different selection manners. However, after the topology creation is complete, the topology structure is fixed, and therefore, requirements for diversification of a system may not be met.
Embodiments of the present application provide a CPU interconnect apparatus and system, and a CPU interconnect control method and control apparatus.
According to a first aspect, an embodiment of the present application provides a CPU interconnect apparatus. The CPU interconnect apparatus includes at least one switching circuit. Each switching circuit includes two gating units and one first intermediate line. Each gating unit includes a first terminal and a second terminal. The first terminal is connected to the second terminal when the gating unit is in a first state. The first terminal is disconnected from the second terminal when the gating unit is in a second state. The two first terminals of each switching circuit are respectively configured to connect to two CPUs in a first node. The two second terminals of each switching circuit are respectively connected to two ends of the first intermediate line, or the two second terminals of each switching circuit are respectively configured to connect to two CPUs in a second node.
In an implementation manner of this embodiment of the present application, the gating unit further includes a third terminal. The first terminal is disconnected from the third terminal when the gating unit is in the first state. The first terminal is connected to the third terminal when the gating unit is in the second state. The two second terminals of each switching circuit are respectively connected to the two ends of the first intermediate line. The two third terminals of each switching circuit are respectively configured to connect to two CPUs in the second node.
In another implementation manner of this embodiment of the present application, the apparatus includes a second intermediate line, and a third terminal of the switching circuit is connected by using the second intermediate line to a third terminal of a switching circuit to which a CPU in the second node is connected.
In another implementation manner of this embodiment of the present application, a third terminal of the switching circuit is connected by using a processing unit in an NC to a third terminal of a switching circuit to which a CPU in the second node is connected.
In another implementation manner of this embodiment of the present application, the gating unit is a switch circuit, an electronic switch, a gate, a selector, or an allocator.
According to a second aspect, an embodiment of the present application provides a CPU interconnect system, including multiple nodes, where the multiple nodes include a first node and a second node, each node includes multiple directly-connected CPUs, and the CPU interconnect system further includes the CPU interconnect apparatus described above.
According to a third aspect, an embodiment of the present application provides a CPU interconnect control method applicable to a CPU interconnect system. The CPU interconnect system includes multiple nodes. The multiple nodes include a first node and a second node. Each node includes multiple directly-connected CPUs. The CPU interconnect system further includes a CPU interconnect apparatus. The CPU interconnect apparatus includes at least one switching circuit. Each switching circuit includes two gating units and one first intermediate line. Each gating unit includes a first terminal and a second terminal. The two first terminals of each switching circuit are respectively configured to connect to two CPUs in the first node. The two second terminals of each switching circuit are respectively connected to two ends of the first intermediate line, or the two second terminals of each switching circuit are respectively configured to connect to two CPUs in the second node. The method includes:
obtaining a topology change indication signal;
determining a status of the gating unit according to the topology change indication signal, where the status includes a first state and a second state; and
when the status of the gating unit is the first state, controlling the first terminal of the gating unit to connect to the second terminal of the gating unit, and when the status of the gating unit is the second state, controlling the first terminal to disconnect from the second terminal.
In an implementation manner of this embodiment of the present application, the gating unit further includes a third terminal. The two second terminals of each switching circuit are respectively connected to the two ends of the first intermediate line. The two third terminals of each switching circuit are respectively configured to connect to two CPUs in the second node. The method further includes:
when the status of the gating unit is the first state, controlling the first terminal to disconnect from the third terminal, and when the status of the gating unit is the second state, controlling the first terminal to connect to the third terminal.
In another implementation manner of this embodiment of the present application, the obtaining a topology change indication signal includes:
receiving the topology change indication signal entered by a user, where the topology change indication signal includes the topology change indication information, the topology change indication information includes a changed quantity of CPUs in a system partition or a changed system application scenario, and the system application scenario is an online analytical processing scenario or an online transaction processing scenario.
In another implementation manner of this embodiment of the present application, the obtaining a topology change indication signal includes:
obtaining system monitoring information, where the system monitoring information includes at least one of CPU load or a CPU latency; and
generating the topology change indication signal according to the system monitoring information, where the topology change indication signal includes topology change indication information, and the topology change indication information includes at least one of a CPU with excessively high load or a CPU with an excessively long latency.
In another implementation manner of this embodiment of the present application, the determining a status of the gating unit according to the topology change indication signal includes:
determining a changed topology of the CPU interconnect system according to the topology change indication signal; and
determining the status of the gating unit according to the changed topology of the CPU interconnect system.
In another implementation manner of this embodiment of the present application, the determining a changed topology of the CPU interconnect system according to the topology change indication signal includes:
obtaining a correspondence between the topology change indication signal and a topology; and
determining the changed topology of the CPU interconnect system according to the correspondence between the topology change indication signal and a topology, where the changed topology of the CPU interconnect system corresponds to the topology change indication signal.
In another implementation manner of this embodiment of the present application, the determining a changed topology of the CPU interconnect system according to the topology change indication signal includes:
determining a topology change according to the topology change indication signal, where the topology change includes that a line between two CPUs is connected or that a line between two CPUs is disconnected; and
determining the changed topology of the CPU interconnect system according to the topology change and a topology that is of the CPU interconnect system and is before a change.
In another implementation manner of this embodiment of the present application, the determining a topology change according to the topology change indication signal includes:
when the topology change indication signal includes a CPU with excessively high load or a CPU with an excessively long latency, determining the CPU with excessively high load or with an excessively long latency; and
changing a connection between the determined CPU and a CPU in the second node to a connection between CPUs in the first node, where the determined CPU is located in the first node.
In another implementation manner of this embodiment of the present application, the determining a changed topology of the CPU interconnect system includes:
determining connection sets C1, C2, and C3, where the connection set C1 includes a direct connection between two CPUs, the connection set C2 includes a first intermediate line, a second intermediate line, and a connection between a CPU and a gating unit or a connection between a CPU and a processing unit, and the connection set C3 includes a pseudo-direct connection, where the pseudo-direct connection is a connection established between two CPUs by using the first intermediate line or the second intermediate line.
In another implementation manner of this embodiment of the present application, the determining the status of the gating unit according to the changed topology of the CPU interconnect system includes:
obtaining the connection sets C2 and C3 in the changed topology of the CPU interconnect system;
determining, according to the connection sets C2 and C3, a first intermediate line or a second intermediate line to which each gating unit is connected; and
determining the status of the gating according to the first intermediate line or the second intermediate line to which each gating unit is connected.
According to a fourth aspect, an embodiment of the present application provides a CPU interconnect control apparatus applicable to a CPU interconnect system. The CPU interconnect system includes multiple nodes. The multiple nodes include a first node and a second node. Each node includes multiple directly-connected CPUs. The CPU interconnect system further includes a CPU interconnect apparatus. The CPU interconnect apparatus includes at least one switching circuit. Each switching circuit includes two gating units and one first intermediate line. Each gating unit includes a first terminal and a second terminal. The two first terminals of each switching circuit are respectively configured to connect to two CPUs in the first node. The two second terminals of each switching circuit are respectively connected to two ends of the first intermediate line, or the two second terminals of each switching circuit are respectively configured to connect to two CPUs in the second node. The apparatus includes:
an obtaining module, configured to obtain a topology change indication signal;
a determining module, configured to determine a status of the gating unit according to the topology change indication signal, where the status includes a first state and a second state; and
a control module, configured to: when the status of the gating unit is the first state, control the first terminal of the gating unit to connect to the second terminal of the gating unit, and when the status of the gating unit is the second state, control the first terminal to disconnect from the second terminal.
In an implementation manner of this embodiment of the present application, the gating unit further includes a third terminal. The two second terminals of each switching circuit are respectively connected to the two ends of the first intermediate line. The two third terminals of each switching circuit are respectively configured to connect to two CPUs in the second node. The control module is further configured to:
when the status of the gating unit is the first state, control the first terminal to disconnect from the third terminal, and when the status of the gating unit is the second state, control the first terminal to connect to the third terminal.
In another implementation manner of this embodiment of the present application, the obtaining module is specifically configured to:
receive the topology change indication signal entered by a user, where the topology change indication signal includes the topology change indication information, the topology change indication information includes a changed quantity of CPUs in a system partition or a changed system application scenario, and the system application scenario is an online analytical processing scenario or an online transaction processing scenario.
In another implementation manner of this embodiment of the present application, the obtaining module includes:
a first obtaining submodule, configured to obtain system monitoring information, where the system monitoring information includes at least one of CPU load or a CPU latency; and
a generation submodule, configured to generate the topology change indication signal according to the system monitoring information, where the topology change indication signal includes topology change indication information, and the topology change indication information includes at least one of a CPU with excessively high load or a CPU with an excessively long latency.
In another implementation manner of this embodiment of the present application, the determining module includes:
a second obtaining submodule, configured to determine a changed topology of the CPU interconnect system according to the topology change indication signal; and
a first determining submodule, configured to determine the status of the gating unit according to the changed topology of the CPU interconnect system.
In another implementation manner of this embodiment of the present application, the second obtaining submodule is specifically configured to:
obtain a correspondence between the topology change indication signal and a topology; and
determine the changed topology of the CPU interconnect system according to the correspondence between the topology change indication signal and a topology, where the changed topology of the CPU interconnect system corresponds to the topology change indication signal.
In another implementation manner of this embodiment of the present application, the second obtaining submodule is specifically configured to:
determine a topology change according to the topology change indication signal, where the topology change includes that a line between two CPUs is connected or that a line between two CPUs is disconnected; and
determine the changed topology of the CPU interconnect system according to the topology change and a topology that is of the CPU interconnect system and is before a change.
In another implementation manner of this embodiment of the present application, the second obtaining submodule is specifically configured to:
when the topology change indication signal includes a CPU with excessively high load or a CPU with an excessively long latency, determine the CPU with excessively high load or with an excessively long latency; and
change a connection between the determined CPU and a CPU in the second node to a connection between CPUs in the first node, where the determined CPU is located in the first node.
In another implementation manner of this embodiment of the present application, the second obtaining submodule is specifically configured to:
determine connection sets C1, C2, and C3, where the connection set C1 includes a direct connection between two CPUs, the connection set C2 includes a first intermediate line, a second intermediate line, and a connection between a CPU and a gating unit or a connection between a CPU and a processing unit, and the connection set C3 includes a pseudo-direct connection, where the pseudo-direct connection is a connection established between two CPUs by using the first intermediate line or the second intermediate line.
In another implementation manner of this embodiment of the present application, the first determining submodule is specifically configured to:
obtain the connection sets C2 and C3 in the changed topology of the CPU interconnect system;
determine, according to the connection sets C2 and C3, a first intermediate line or a second intermediate line to which each gating unit is connected; and
determine the status of the gating according to the first intermediate line or the second intermediate line to which each gating unit is connected.
The technical solutions provided in the embodiments of the present application have the following advantageous effects:
When two gating units in a CPU interconnect apparatus are in a first state, first terminals are connected to second terminals, and the two second terminals are connected by using a first intermediate line, so that CPU interconnection is implemented in a first node. Alternatively, the two second terminals are respectively configured to connect to two CPUs in a second node, so that CPU interconnection is implemented between the first node and the second node. However, when the two gating units are in a second state, the first terminals are disconnected from the second terminals. Therefore, by switching between the first state and the second state, CPU interconnection and CPU disconnection of intra-node or inter-node can be implemented. Therefore, a topology of a CPU interconnect system meets different feature and scenario requirements, and processing performance of CPUs in the CPU interconnect system is improved.
The following briefly describes the accompanying drawings used in describing the embodiments.
The following describes the embodiments of the present application in detail with reference to the accompanying drawings.
A schematic diagram of a CPU interconnect apparatus according to an embodiment of the present application is shown in
In
An embodiment of the present application further provides yet another CPU interconnect apparatus. In comparison with the apparatus provided in
An embodiment of the present application further provides another CPU interconnect apparatus. In comparison with the apparatus provided in
With reference to the gating unit 110 schematically shown in
In this embodiment of the present application, when two gating units in a CPU interconnect apparatus in the CPU interconnect system are in a first state, each of the first terminals is connected to a second terminal, and the two second terminals are connected with each other by using a first intermediate line, so that a CPU interconnection is established in a first node. Alternatively, the two second terminals are respectively connected to two CPUs in a second node, so that the CPU interconnection is established between the first node and the second node. When the two gating units are in a second state, the first terminals are disconnected from the second terminals. Therefore, by switching between the first state and the second state, intra-node or inter-node CPU interconnection can be established. Therefore, a topology of the CPU interconnect system meets different feature and scenario requirements, and processing performance of CPUs in the CPU interconnect system is improved.
An embodiment of the present application further provides another CPU interconnect system. In comparison with the CPU interconnect system provided in
The following uses an example to describe a CPU interconnect system provided in an embodiment of the present application.
Specifically, the following describes an internal structure of an NC. The NC 0 is used as an example. Specifically, as shown in
The line a2 is the second intermediate line. A third terminal of the gating unit A1 in the switching circuit is connected by using the second intermediate line a2 to a third terminal of a switching circuit to which the CPU 5 in the second node is connected.
It should be noted that, the quantity of CPUs and the quantity of other components in the foregoing application scenario are only examples, and are not limited in the present application.
Step 101: Obtain a topology change indication signal.
The topology change indication signal may be entered by a user, or may be automatically generated by the system.
Step 102: Determine a status of the gating unit according to the topology change indication signal, where the status includes a first state and a second state.
Step 103: When the status of the gating unit is the first state, control the first terminal of the gating unit to connect to the second terminal of the gating unit, and when the status of the gating unit is the second state, control the first terminal to disconnect from the second terminal.
In the present application, a status of a gating unit is determined according to an obtained topology change indication signal. The status includes a first state and a second state. When the status of the gating unit is the first state, a first terminal of the gating unit is controlled to connect to a second terminal of the gating unit, and when the status of the gating unit is the second state, the first terminal is controlled to disconnect from the second terminal. Therefore, a path between CPUs is selected intelligently according to a topology change indication, a topology of a CPU interconnect system meets a current requirement, and processing performance of CPUs in the CPU interconnect system is improved.
Step 201: Obtain a topology change indication signal, where the topology change indication signal is used to instruct to make a topology change to the CPU interconnect system.
In an implementation manner of this embodiment of the present application, the obtaining a topology change indication signal includes:
receiving the topology change indication signal entered by a user, where the topology change indication signal includes topology change indication information, and the topology change indication information includes a changed quantity (for example, 4) of CPUs in a system partition or a changed system application scenario. Certainly, the topology change indication information is not limited to the form enumerated above, for example, the topology change indication information may further directly indicate that an intra-node connection or an inter-node connection is preferred.
In another implementation manner of this embodiment of the present application, the obtaining a topology change indication signal includes:
obtaining system monitoring information, where the system monitoring information includes at least one of CPU load or a CPU latency; and
generating the topology change indication signal according to the system monitoring information, where the topology change indication signal includes topology change indication information, and the topology change indication information includes at least one of a CPU with excessively high load or a CPU with an excessively long latency.
The topology change indication signal may be generated according to the system monitoring information. For example, load in the system monitoring information is compared with a preset load threshold, or a latency in the system monitoring information is compared with a preset latency threshold. The topology change indication signal is generated when the load in the system monitoring information is greater than the preset load threshold or the latency is greater than the preset latency threshold. The system monitoring information may be obtained by using an existing performance detection apparatus or circuit. Details are not described herein.
Step 202: Determine a status of a gating unit according to the topology change indication signal, where the status includes a first state and a second state.
Specifically, step 202 may include:
determining a changed topology of the CPU interconnect system according to the topology change indication signal; and
determining the status of the gating unit according to the changed topology of the CPU interconnect system.
In an implementation manner of this embodiment of the present application, the following manner may be used to determine the changed topology of the CPU interconnect system according to the topology change indication signal:
Step 1: Obtain a correspondence between the topology change indication signal and a topology.
For a system, layout of components such as a CPU is fixed. Therefore, a corresponding topology structure may be designed in advance according to the topology change indication signal. Specifically, the correspondence between the topology change indication signal and a topology includes but is not limited to: a correspondence between a change of a quantity of CPUs in the system partition and a topology, a correspondence between a system application scenario and a topology, a correspondence between excessively high load and a topology, and a correspondence between an excessively long latency and a topology.
The following describes the correspondence between the topology change indication and a topology by using an example.
For example, the correspondence between the change indication of a quantity of CPUs in the system partition and a topology may be set in the following manner.
Step 2: Determine the changed topology of the CPU interconnect system according to the correspondence between the topology change indication signal and a topology, where the changed topology of the CPU interconnect system corresponds to the topology change indication signal.
In another implementation manner of this embodiment of the present application, the following manner may be used to determine the changed topology of the CPU interconnect system according to the topology change indication signal:
Step 1: Determine a topology change according to the topology change indication signal, where the topology change includes that a line between two CPUs is connected or that a line between two CPUs is disconnected.
Step 1 may include: when the topology change indication signal includes a CPU with excessively high load or a CPU with an excessively long latency, determining the CPU with excessively high load or with an excessively long latency; and changing a connection between the determined CPU and a CPU in a second node to a connection between CPUs in a first node, where the determined CPU is located in the first node.
Step 2: Determine the changed topology of the CPU interconnect system according to the topology change and a topology that is of the CPU interconnect system and is before a change.
The topology that is of the CPU interconnect system and is before a change may be obtained before step 201, or may be obtained before step 1. Therefore, in this implementation manner, step 202 may further include: obtaining the topology that is of the CPU interconnect system and is before a change.
The following describes the topology change by using an example.
In the foregoing solution, the topology is indicated by using a diagram. However, for a processor or a controller, to reduce processing complexity of the processor or the controller, the topology may be indicated in the following connection set manner. Specifically, in the foregoing two implementation manners, the determining a changed topology of the CPU interconnect system includes:
determining connection sets C1, C2, and C3, where the connection set C1 includes a direct connection between two CPUs, the connection set C2 includes a first intermediate line, a second intermediate line, and a connection between a CPU and a gating unit or a connection between a CPU and a processing unit, and the connection set C3 includes a pseudo-direct connection, where the pseudo-direct connection is a connection established between two CPUs by using the first intermediate line or the second intermediate line.
Specifically, the connection set C1 is a direct connection between two CPUs, and may be indicated by using two CPUs, for example, (CPU 0 and CPU 1). For a multi-node system, a node number may be added before a CPU, for example, (node 1 CPU 0 and node 2 CPU 1). The connection set C2 includes a first or second intermediate line, and a connection between a CPU and a gating unit, or a connection between a CPU and a node connector, and may be indicated by using gating units at two ends of the first or second intermediate line or may be indicated by using CPUs and gating units at two ends of the line, for example, (A1 and A2), or (CPU 0 and A1). Likewise, for a multi-node system, a node number may be added before a CPU and a gating unit. The connection set C3 includes a pseudo-direct connection, and may be indicated by using two CPUs connected by the pseudo-direct connection and two intermediate gating units, for example, (CPU 0, A1, A2, and CPU 1). Likewise, for a multi-node system, a node number may be added before a CPU and a gating unit. In this embodiment of the present application, the pseudo-direct connection only requires signal or data forwarding at a hardware layer or a physical layer, and does not require data processing at layer 2 or above, such as data receiving, data verification, data parsing, data switching, data reconstitution, or data routing.
In the foregoing step, the determining the changed topology of the CPU interconnect system includes determining the connection sets C1, C2, and C3.
In this embodiment of the present application, the determining the status of the gating unit according to the changed topology of the CPU interconnect system includes:
obtaining the connection sets C2 and C3 in the changed topology of the CPU interconnect system;
determining, according to the connection sets C2 and C3, a first intermediate line or a second intermediate line to which each gating unit is connected; and
determining the status of the gating according to the first intermediate line or the second intermediate line to which each gating unit is connected.
Step 203: When the status of the gating unit is the first state, control a first terminal of the gating unit to connect to a second terminal of the gating unit, and control the first terminal to disconnect from a third terminal; when the status of the gating unit is the second state, control the first terminal to disconnect from the second terminal, and control the first terminal connect to the third terminal.
The gating unit further includes the third terminal. Two second terminals of each switching circuit are respectively connected to two ends of the first intermediate line, and two third terminals of each switching circuit are respectively configured to connect to two CPUs in the second node.
In specific control, a corresponding control signal is determined according to the status of the gating unit, and the determined control signal is sent to the gating unit.
Specifically, the control signal may include a binary number 0 or 1. In this embodiment of the present application, the control signal may be a single signal such as 0 or 1, or may be a combination of multiple signals. In addition, the control signal may also be a signal obtained after an operation (for example, a NOT operation) is performed on a single signal or a combination.
The CPU interconnect control method provided in the present application is mainly applied to various scenarios in which a CPU connection needs to be adjusted. An adjustment of a CPU interconnect topology greatly improves CPU interconnect performance. For example, when a CPU has a long latency or high load, an inter-node CPU connection is added, and a hop count of data transmission between inter-node CPUs is reduced. Therefore, an amount of transmitted data is reduced, and processing performance of the CPUs is improved to a great extent.
an obtaining module 301, configured to obtain a topology change indication signal;
a determining module 302, configured to determine a status of the gating unit according to the topology change indication signal, where the status includes a first state and a second state; and
a control module 303, configured to: when the status of the gating unit is the first state, control the first terminal of the gating unit to connect to the second terminal of the gating unit, and when the status of the gating unit is the second state, control the first terminal to disconnect from the second terminal.
In the present application, a status of a gating unit is determined according to an obtained topology change indication signal. The status includes a first state and a second state. When the status of the gating unit is the first state, a first terminal of the gating unit is controlled to connect to a second terminal of the gating unit, and when the status of the gating unit is the second state, the first terminal is controlled to disconnect from the second terminal. Therefore, a path between CPUs is selected intelligently according to a topology change indication, a topology of a CPU interconnect system meets a current requirement, and processing performance of CPUs in the CPU interconnect system is improved.
an obtaining module 401, configured to obtain a topology change indication signal;
a determining module 402, configured to determine a status of a gating unit according to the topology change indication signal, where the status includes a first state and a second state; and
a control module 403, configured to: when the status of the gating unit is the first state, control a first terminal of the gating unit to connect to a second terminal of the gating unit, and when the status of the gating unit is the second state, control the first terminal to disconnect from the second terminal.
Further, the gating unit further includes a third terminal. Two second terminals of each switching circuit are respectively connected to two ends of a first intermediate line, and two third terminals of each switching circuit are respectively configured to connect to two CPUs in a second node. The control module 403 is further configured to:
when the status of the gating unit is the first state, control the first terminal to disconnect from the third terminal, and when the status of the gating unit is the second state, control the first terminal to connect to the third terminal.
In an implementation manner, the obtaining module 401 is specifically configured to:
receive the topology change indication signal entered by a user, where the topology change indication signal includes topology change indication information, and the topology change indication information includes a changed quantity of CPUs in a system partition or a changed system application scenario.
In another implementation manner, the obtaining module 401 includes:
a first obtaining submodule 4011, configured to obtain system monitoring information, where the system monitoring information includes at least one of CPU load or a CPU latency; and
a generation submodule 4012, configured to generate the topology change indication signal according to the system monitoring information, where the topology change indication signal includes topology change indication information, and the topology change indication information includes at least one of a CPU with excessively high load or a CPU with excessively long latency.
In an implementation manner of this embodiment of the present application, the determining module 402 includes:
a second obtaining submodule 4021, configured to determine a changed topology of the CPU interconnect system according to the topology change indication signal; and
a first determining submodule 4022, configured to determine the status of the gating unit according to the changed topology of the CPU interconnect system.
In an implementation manner of this embodiment of the present application, the second obtaining submodule 4021 is specifically configured to:
obtain a correspondence between the topology change indication signal and a topology; and
determine the changed topology of the CPU interconnect system according to the correspondence between the topology change indication signal and a topology, where the changed topology of the CPU interconnect system corresponds to the topology change indication signal.
In another implementation manner of this embodiment of the present application, the second obtaining submodule 4021 is specifically configured to:
determine a topology change according to the topology change indication signal, where the topology change includes that a line between two CPUs is connected or that a line between two CPUs is disconnected; and
determine the changed topology of the CPU interconnect system according to the topology change and a topology that is of the CPU interconnect system and is before a change.
The topology that is of the CPU interconnect system and is before a change may be obtained in advance, or may be obtained by the determining module 402. Therefore, in this implementation manner, the determining module 402 may further include the second obtaining submodule 4021, configured to obtain the topology that is of the CPU interconnect system and is before a change.
Specifically, the second obtaining submodule 4021 is configured to:
when the topology change indication signal includes a CPU with excessively high load or a CPU with an excessively long latency, determine the CPU with excessively high load or with an excessively long latency; and
change a connection between the determined CPU and a CPU in the second node to a connection between CPUs in a first node, where the determined CPU is located in the first node.
In this embodiment of the present application, the second obtaining submodule 4021 is specifically configured to:
determine connection sets C1, C2, and C3, where the connection set C1 includes a direct connection between two CPUs, the connection set C2 includes a first intermediate line, a second intermediate line, and a connection between a CPU and a gating unit or a connection between a CPU and a processing unit, and the connection set C3 includes a pseudo-direct connection, where the pseudo-direct connection is a connection established between two CPUs by using the first intermediate line or the second intermediate line.
Further, the first determining submodule 4022 is specifically configured to:
obtain the connection sets C2 and C3 in the changed topology of the CPU interconnect system;
determine, according to the connection sets C2 and C3, a first intermediate line or a second intermediate line to which each gating unit is connected; and
determine the status of the gating according to the first intermediate line or the second intermediate line to which each gating unit is connected.
For the apparatus in the foregoing embodiment, specific manners of executing operations by modules are described in detail in the embodiments related to the method, and details are not described herein again.
It should be noted that, when CPUs are interconnected by the CPU interconnect control apparatus provided in the foregoing embodiment, only division of the foregoing function modules is used as an example for description. In actual application, the foregoing functions can be allocated to different modules for completion according to a requirement, that is, an inner structure of a device is divided into different function modules to complete all or some of the functions described above. In addition, the CPU interconnect control apparatus and the CPU interconnect control method provided in the foregoing embodiments belong to a same conception. For a specific implementation process thereof, refer to the method embodiment. Details are not described herein again.
A person of ordinary skill in the art may understand that all or some of the steps of the embodiments may be implemented by hardware or a program instructing related hardware. The program may be stored in a computer-readable storage medium. The storage medium may be a read-only memory, a magnetic disk, or an optical disc.
Number | Date | Country | Kind |
---|---|---|---|
201510526313.5 | Aug 2015 | CN | national |
This application is a continuation of International Application No. PCT/CN2016/076267, filed on Mar. 14, 2016, which claims priority to Chinese Patent Application No. 201510526313.5, filed on Aug. 25, 2015. The disclosures of the aforementioned applications are hereby incorporated by reference in their entireties.
Number | Date | Country | |
---|---|---|---|
Parent | PCT/CN2016/076267 | Mar 2016 | US |
Child | 15903032 | US |