A two-way transmission system for address translation

By establishing a bidirectional transmission system between the GPU and the CPU, using preset channels to transmit address requests, mapping tables and failure information, the invalid data transmission problem caused by excessive CPU load and delay in multi-GPU scenarios is solved, and the data transmission efficiency of address translation is improved.

CN119226184BActive Publication Date: 2025-02-28沐曦集成电路(南京)有限公司
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411711607.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-11-27
Publication Date
2025-02-28
Estimated Expiration
2044-11-27

AI Technical Summary

Technical Problem

In multi-GPU scenarios, excessive load on the CPU leads to a decrease in address translation efficiency, and due to the delay between the CPU sending address failure information and the GPU receiving information, invalid data transmission may be caused.

Method used

A bidirectional transmission system is adopted, and the GPU sends address request information to the CPU through a preset path, and sends a mapping table to the GPU through the same path after the CPU receives the request. At the same time, when the mapping table fails, the CPU sends address failure information to the GPU through the preset path to stop address request and translation.

Benefits of technology

By directly acting on the address failure information of the preset path, redundant and invalid data transmission is avoided, and the timeliness of address failure information response is improved, thereby improving the data transmission efficiency in address translation scenarios.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure FT_1
    Figure FT_1
Patent Text Reader

Abstract

The present application relates to the technical field of data transmission, and in particular to a bidirectional transmission system for address translation, the system comprising: a GPU and a CPU, the GPU being used to send address request information for a target address to the CPU through a preset path, the CPU being used to send a mapping table to the GPU through a preset path after receiving the address request information, the GPU being used to perform address translation on the target address according to the mapping table after receiving the mapping table, the CPU being used to send address failure information corresponding to the target address to the GPU through a preset path after the mapping table has been sent to the GPU and failure of the mapping table is detected, the preset path being used to stop receiving address request information from the GPU after receiving the address failure information, the GPU being used to stop address translation of the target address after receiving the address failure information, thereby avoiding redundant and invalid data transmission and improving data transmission efficiency in an address translation scenario.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of data transmission, and in particular to a bidirectional transmission system for address translation. Background Art

[0002] Address translation may refer to the mapping between elements in the virtual address space and elements in the physical address space. Usually, the address translation operation is performed by the CPU. However, within a preset time period, if there are multiple GPUs that send at least one address translation request to the CPU respectively, it will cause excessive load on the CPU, thereby reducing the overall efficiency of address translation.

[0003] In response to the above problems, the existing method proposes a method in which the GPU performs address translation, where the GPU requests the mapping table required for address translation from the CPU, and then performs address translation on the GPU, thereby improving the overall efficiency of address translation. When the mapping table is updated, the CPU needs to send address invalidation information to the GPU to remind the GPU to stop address translation. However, since there is a delay between the CPU sending the address invalidation information and the GPU receiving the address invalidation information, the GPU may continue to send new address request information, resulting in invalid data transmission, thereby reducing the efficiency of data transmission.

[0004] Therefore, how to improve the data transmission efficiency in address translation scenarios has become an urgent problem to be solved. Summary of the invention

[0005] In view of the above technical problems, the technical solution adopted by the present invention is:

[0006] A bidirectional transmission system for address translation, the system comprising: a GPU and a CPU.

[0007] The GPU is used to send address request information for a target address to the CPU through a preset path.

[0008] The CPU is used for sending the mapping table including the mapping relationship corresponding to the target address to the GPU through the preset path after receiving the address request information.

[0009] The GPU is further configured to perform address translation on the target address according to the mapping table after receiving the mapping table.

[0010] The CPU is further configured to send address failure information corresponding to the target address to the GPU through the preset path after the mapping table has been sent to the GPU and failure of the mapping table is detected.

[0011] The preset path is used to stop receiving the address request information of the GPU after receiving the address failure information.

[0012] The GPU is further configured to stop address translation of the target address after receiving the address failure information.

[0013] Compared with the prior art, the present invention has obvious beneficial effects. By means of the above technical solution, the bidirectional transmission system for address translation provided by the present invention can achieve considerable technical advancement and practicality, and has wide industrial utilization value, and has at least the following beneficial effects:

[0014] The present invention provides a bidirectional transmission system for address translation, the system comprising: a GPU and a CPU, the GPU is used to send address request information for a target address to the CPU through a preset path, the CPU is used to send a mapping table containing a mapping relationship corresponding to the target address to the GPU through the preset path after receiving the address request information, the GPU is also used to perform address translation on the target address according to the mapping table after receiving the mapping table, the CPU is also used to send address failure information corresponding to the target address to the GPU through the preset path after having sent the mapping table to the GPU and detecting that the mapping table is invalid, the preset path is used to stop receiving the address request information of the GPU after receiving the address failure information, and the GPU is also used to stop address translation of the target address after receiving the address failure information.

[0015] It can be seen that in the scenario where the GPU performs address translation, the same preset path is used to transmit information between the GPU and the CPU, so that the address invalidation information issued by the CPU due to the update of the mapping table can directly act on the preset path, so that the preset path stops receiving the address request information of the GPU, avoiding redundant and invalid data transmission, improving the timeliness of the response to the address invalidation information, and thus improving the data transmission efficiency in the address translation scenario. BRIEF DESCRIPTION OF THE DRAWINGS

[0016] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.

[0017] Figure 1 A schematic diagram of the architecture of a bidirectional transmission system for address translation provided by an embodiment of the present invention. DETAILED DESCRIPTION

[0018] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative work are within the scope of protection of the present invention.

[0019] This embodiment provides a bidirectional transmission system for address translation, characterized in that the system includes: a GPU and a CPU, see Figure 1 , is a schematic diagram of the architecture of a bidirectional transmission system for address translation provided by an embodiment of the present invention;

[0020] The GPU is used to send address request information for a target address to the CPU through a preset path;

[0021] The CPU is used to send a mapping table including a mapping relationship corresponding to the target address to the GPU through the preset path after receiving the address request information;

[0022] The GPU is further configured to perform address translation on the target address according to the mapping table after receiving the mapping table;

[0023] The CPU is further configured to send address failure information corresponding to the target address to the GPU through the preset path after the mapping table has been sent to the GPU and the mapping table is detected to be invalid;

[0024] The preset path is used to stop receiving the address request information of the GPU after receiving the address failure information;

[0025] The GPU is further configured to stop address translation of the target address after receiving the address failure information.

[0026] Among them, in the prior art, there are two paths between the CPU and the GPU, address request information and mapping table are transmitted using one of the paths, and address invalidation information is transmitted using the other path, while in this embodiment, information transmission between the CPU and the GPU is achieved through a preset path, so that the address invalidation information issued by the CPU due to the update of the mapping table can directly act on the preset path, so that the preset path immediately stops receiving the address request information of the GPU after receiving the address invalidation information, thereby avoiding the delay between the CPU sending the address invalidation information and the GPU receiving the address invalidation information, and the GPU still continues to send new address request information and the CPU continues to send the mapping table to the GPU according to the new address request information, that is, avoiding redundant and invalid data transmission, improving the timeliness of the address invalidation information response, and thereby improving the data transmission efficiency in the address translation scenario.

[0027] In a specific implementation, the address request information includes a first information identifier and the target address;

[0028] The CPU is further configured to send first confirmation information corresponding to the address request information to the GPU through the preset path after receiving the address request information, where the first confirmation information includes the first information identifier.

[0029] Wherein, the preset path may include three signal lines, which are respectively an information type line, an information identification line and a data line. When the GPU sends address request information to the CPU, the signal type line may be used to transmit the type of the address request information, the type of the address request information may refer to the send type, the information identification line may be used to transmit the first information identification, and the data line may be used to transmit the target address. When the CPU sends the first confirmation information to the GPU, the signal type line may be used to transmit the type of the first confirmation information, the type of the first confirmation information may refer to the free type, and the information identification line may be used to transmit the first information identification. A group of send type information and free type information may realize the handshake between the CPU and the GPU.

[0030] Specifically, when the data line transmits the target address, it may transmit a pointer corresponding to the target address, and the pointer corresponding to the target address may point to the target address in the cache.

[0031] In a specific implementation, sending the mapping table to the GPU through the preset path includes:

[0032] Sending address feedback information to the GPU through the preset path, the address feedback information including a second information identifier and the mapping table;

[0033] The GPU is further configured to send second confirmation information corresponding to the address feedback information to the CPU through the preset path after receiving the address feedback information, where the second confirmation information includes the second information identifier.

[0034] Among them, when the CPU sends address feedback information to the GPU, the signal type line can be used to transmit the type of address feedback information, the type of address feedback information can refer to the send type, the information identification line can be used to transmit the second information identification, and the data line can be used to transmit the mapping table. When the GPU sends the second confirmation information to the CPU, the signal type line can be used to transmit the type of the second confirmation information, the type of the second confirmation information can refer to the free type, and the information identification line can be used to transmit the second information identification.

[0035] In a specific implementation manner, the address invalidation information includes a third information identifier and the target address;

[0036] The GPU is further configured to send third confirmation information corresponding to the address failure information to the CPU through the preset path after receiving the address failure information, wherein the third confirmation information includes the third information identifier.

[0037] Among them, when the CPU sends address invalidation information to the GPU, the signal type line can be used to transmit the type of the address invalidation information, the type of the address invalidation information can refer to the send type, the information identification line can be used to transmit the third information identification, the data line can be used to transmit the target address, and when the GPU sends the third confirmation information to the CPU, the signal type line can be used to transmit the type of the third confirmation information, the type of the third confirmation information can refer to the free type, and the information identification line can be used to transmit the third information identification.

[0038] In a specific implementation, the CPU is further configured to send recovery information to the GPU through the preset path after the address failure information has been sent to the GPU and the mapping table has been updated.

[0039] The recovery information may be used to notify the GPU that it may continue to initiate address request information and perform address translation.

[0040] In a specific implementation, the restoration information includes a fourth information identifier;

[0041] The GPU is further configured to send fourth confirmation information corresponding to the resumption information to the CPU through the preset path after receiving the resumption information, wherein the fourth confirmation information includes the fourth information identifier.

[0042] Among them, when the CPU sends recovery information to the GPU, the signal type line can be used to transmit the type of recovery information, the type of recovery information can refer to the send type, and the information identification line can be used to transmit the fourth information identification; when the GPU sends the fourth confirmation information to the CPU, the signal type line can be used to transmit the type of the fourth confirmation information, the type of the fourth confirmation information can refer to the free type, and the information identification line can be used to transmit the fourth information identification.

[0043] In a specific implementation, the GPU is further configured to send update request information of the target address to the CPU through the preset path after receiving the recovery information.

[0044] When the GPU still needs to perform address translation on the target address after receiving the recovery information, it can send update request information of the target address to the CPU through a preset path.

[0045] In one implementation, when the GPU needs to perform address translation on other reference addresses after receiving the recovery information, it may send address request information of other reference addresses to the CPU through a preset path.

[0046] In a specific implementation, the CPU is configured to send the updated mapping table to the GPU through the preset path after receiving the update request information.

[0047] After the CPU receives the address request information sent by the GPU after the mapping table is updated, the CPU sends the updated mapping table to the GPU through a preset path.

[0048] In this embodiment, in the scenario where the GPU performs address translation, information is transmitted between the GPU and the CPU using the same preset path, so that the address invalidation information issued by the CPU due to the update of the mapping table can directly act on the preset path, causing the preset path to stop receiving the address request information of the GPU, thereby avoiding redundant and invalid data transmission, improving the timeliness of the response to the address invalidation information, and thereby improving the data transmission efficiency in the address translation scenario.

[0049] Although some specific embodiments of the present invention have been described in detail by way of example, it will be appreciated by those skilled in the art that the above examples are for illustration only and are not intended to limit the scope of the present invention. It will also be appreciated by those skilled in the art that various modifications may be made to the embodiments without departing from the scope and spirit of the present invention. The scope of the present invention is defined by the appended claims.

Claims

1. A two-way transmission system for address translation, characterized in that: The system includes: a GPU and a CPU; The GPU is used to send address request information for a target address to the CPU through a preset path, wherein the preset path includes an information type line, an information identification line, and a data line; The CPU is used to send a mapping table including a mapping relationship corresponding to the target address to the GPU through the preset path after receiving the address request information; The GPU is further configured to perform address translation on the target address according to the mapping table after receiving the mapping table; The CPU is further configured to send address failure information corresponding to the target address to the GPU through the preset path after the mapping table has been sent to the GPU and the mapping table is detected to be invalid; The preset path is used to stop receiving the address request information of the GPU after receiving the address failure information; The GPU is further configured to stop address translation of the target address after receiving the address failure information.

2. The two-way transmission system for address translation according to claim 1, characterized in that: The address request information includes a first information identifier and the target address; The CPU is further configured to send first confirmation information corresponding to the address request information to the GPU through the preset path after receiving the address request information, where the first confirmation information includes the first information identifier.

3. The two-way transmission system for address translation according to claim 1, characterized in that: The step of sending the mapping table to the GPU through the preset path includes: Sending address feedback information to the GPU through the preset path, the address feedback information including a second information identifier and the mapping table; The GPU is further configured to send second confirmation information corresponding to the address feedback information to the CPU through the preset path after receiving the address feedback information, where the second confirmation information includes the second information identifier.

4. The two-way transmission system for address translation according to claim 1, characterized in that: The address invalidation information includes a third information identifier and the target address; The GPU is further configured to send third confirmation information corresponding to the address failure information to the CPU through the preset path after receiving the address failure information, wherein the third confirmation information includes the third information identifier.

5. The two-way transmission system for address translation according to claim 1, characterized in that: The CPU is further configured to send recovery information to the GPU through the preset path after the address failure information has been sent to the GPU and the mapping table has been updated.

6. The two-way transmission system for address translation according to claim 5, characterized in that: The restoration information includes a fourth information identifier; The GPU is further configured to send fourth confirmation information corresponding to the resumption information to the CPU through the preset path after receiving the resumption information, wherein the fourth confirmation information includes the fourth information identifier.

7. The two-way transmission system for address translation according to claim 5, characterized in that: The GPU is further configured to send update request information of the target address to the CPU through the preset path after receiving the recovery information.

8. The two-way transmission system for address translation according to claim 7, characterized in that: The CPU is used for sending the updated mapping table to the GPU through the preset path after receiving the update request information.

Citation Information

Patent Citations

  • Method for protecting data security, CPU core, CPU chip and electronic equipment

    CN113486410A

  • Data transmission method, related equipment and storage medium

    CN117539807A