CN115827285B - Cross-platform communication method, system, device, equipment and medium - Google Patents
Cross-platform communication method, system, device, equipment and medium Download PDFInfo
- Publication number
- CN115827285B CN115827285B CN202310154595.5A CN202310154595A CN115827285B CN 115827285 B CN115827285 B CN 115827285B CN 202310154595 A CN202310154595 A CN 202310154595A CN 115827285 B CN115827285 B CN 115827285B
- Authority
- CN
- China
- Prior art keywords
- layer
- cross
- operation request
- platform communication
- upper layer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000004891 communication Methods 0.000 title claims abstract description 258
- 238000000034 method Methods 0.000 title claims abstract description 135
- 230000001133 acceleration Effects 0.000 claims abstract description 124
- 230000005540 biological transmission Effects 0.000 claims abstract description 91
- 230000007246 mechanism Effects 0.000 claims abstract description 40
- 230000008569 process Effects 0.000 claims description 44
- 230000006870 function Effects 0.000 claims description 41
- 238000004806 packaging method and process Methods 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 10
- 230000004044 response Effects 0.000 claims description 8
- 238000012546 transfer Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 9
- 238000012545 processing Methods 0.000 description 8
- 230000003993 interaction Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000007405 data analysis Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000002860 competitive effect Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Computer And Data Communications (AREA)
Abstract
The application relates to the technical field of communication, and discloses a cross-platform communication method, a system, a device, equipment and a medium, wherein the method comprises the following steps: the first communication layer of the control server side provides a cross-platform communication interface for a first upper layer of the server side; the cross-platform communication interface is obtained by encapsulating a PCIE driving interface of a physical transmission layer by a first communication layer; controlling a first upper layer to call a cross-platform communication interface to send an operation request to an acceleration card end based on a direct memory access mechanism of a physical transmission layer; the second communication layer of the control acceleration card end obtains the operation request from the direct memory access controller of the physical transmission layer, and sends the operation request to the second upper layer of the acceleration card end so as to respond to the operation request by utilizing the second upper layer. The method and the device realize clear data transmission for an upper layer developer, do not need to care any details of cross-platform transmission, can greatly save data transmission time and improve communication efficiency.
Description
Technical Field
The present invention relates to the field of communications technologies, and in particular, to a cross-platform communication method, system, device, equipment, and medium.
Background
The artificial intelligent acceleration card is a board card specially used for accelerating the deep learning algorithm, and the acceleration card is connected with a server through a PCIE slot to accelerate the neural network. Generally, linux is generally adopted as an operating system for an accelerator card and a server, the Linux system completes specific logic functions through threads or processes, communication can be achieved among the processes and threads through signals, message queues, shared memory and other modes, and how to achieve multi-user cross-platform communication under the Linux system is important.
At present, no open framework or scheme for cross-platform communication of an artificial intelligent acceleration board card exists, and the related schemes comprise the following two types: (1) According to the method, the system is divided according to the internal modules of the board card, each module development engineer is responsible for cross-platform communication, cross-platform data transmission is carried out through a data format agreed by the module development engineer, and data transmission is generally completed through interfaces provided by PCIE driving and an interrupt or memory traversing mode. In the mode, a developer needs to know PCIE technology to a certain extent, the technical requirement of middle layer developers on bottom layer driving is increased, and when multiple users or multiple modules are in a data acquisition state at the same time, excessive processes or threads are caused to access a certain fixed memory area at the same time so as to judge whether required data exist or not, so that system resources are unreasonably competitive, and performance is reduced; (2) The forwarding process and the management process are added at the board end to uniformly manage the data acquisition and distribution at the board end, the data can be copied into one part and filled into the message queue data structure after the data are monitored, the artificial intelligent accelerator card can frequently transfer a large amount of data, such as model data, input data and the like, the artificial intelligent accelerator card is equipment sensitive to performance, and the additional data handling reduces the board efficiency.
Accordingly, the above technical problems are to be solved by those skilled in the art.
Disclosure of Invention
In view of the above, the present invention aims to provide a cross-platform communication method, system, device, equipment and storage medium, which realize transparent data transfer for an upper layer developer, without any details concerning the cross-platform transfer, and can greatly save data transfer time and improve communication efficiency. The specific scheme is as follows:
a first aspect of the present application provides a cross-platform communication method, including:
a first communication layer of a control server side provides a cross-platform communication interface for a first upper layer of the server side; the cross-platform communication interface is obtained by packaging a PCIE driving interface of a physical transmission layer by the first communication layer;
controlling the first upper layer to call the cross-platform communication interface to send an operation request to an acceleration card end based on a direct memory access mechanism of the physical transmission layer;
and controlling a second communication layer of the acceleration card end to acquire the operation request from a direct memory access controller of the physical transmission layer, and sending the operation request to a second upper layer of the acceleration card end so as to respond to the operation request by utilizing the second upper layer.
Optionally, the first upper layer includes a first application layer and a first runtime layer of the server side;
the first communication layer of the control server side provides a cross-platform communication interface for a first upper layer of the server side, and the cross-platform communication interface comprises:
and controlling the first communication layer to send the cross-platform communication interface to the first runtime layer, and forwarding the cross-platform communication interface to the first application layer through the first runtime layer.
Optionally, the controlling the first upper layer to call the cross-platform communication interface to send an operation request to an accelerator card based on a direct memory access mechanism of the physical transport layer includes:
and controlling the first application layer to call the cross-platform communication interface so as to send the operation request to the acceleration card end based on a direct memory access mechanism of the physical transmission layer.
Optionally, the controlling the first upper layer to call the cross-platform communication interface to send an operation request to an accelerator card based on a direct memory access mechanism of the physical transport layer includes:
controlling the first upper layer to call the cross-platform communication interface to perform serialization operation on the operation request, and sending the operation request after serialization operation to the acceleration card end based on a direct memory access mechanism of the physical transmission layer;
After the second communication layer controlling the acceleration card end obtains the operation request from the direct memory access controller of the physical transmission layer, the method further comprises the following steps:
and controlling the second communication layer to perform deserialization operation on the operation request after the acquisition of the serialization operation, and sending the operation request after the deserialization operation to the second upper layer.
Optionally, the process of serializing and deserializing operations includes:
and carrying out serialization and deserialization operation on the operation request by using a flatbuffers tool.
Optionally, the second upper layer includes a second application layer and a second runtime layer of the acceleration card end;
the sending the operation request to the second upper layer of the acceleration card end comprises the following steps:
and sending the operation request to the second runtime layer, and forwarding the operation request to the second application layer through the second runtime layer.
Optionally, before the second communication layer controlling the accelerator card end obtains the operation request from the direct memory access controller of the physical transport layer, the method further includes:
controlling PCIE driving of the physical transmission layer to generate an interrupt signal;
And sending the interrupt signal to the second communication layer, and forwarding the interrupt signal to the second application layer through the second communication layer, so that the second application layer controls the second communication layer to acquire the operation request from the direct memory access controller of the physical transmission layer according to the interrupt signal.
Optionally, the responding to the operation request with the second upper layer includes:
controlling the second application layer to analyze the operation request to obtain function parameters containing target subprocess identification;
determining a target sub-process with a binding relation with the target sub-process identification; the target sub-process has a corresponding relation with the target business process running on the first upper layer for sending the operation request;
and responding to the operation request by utilizing the target subprocess.
Optionally, the target sub-process is identified as a target sub-process handle.
Optionally, the controlling the second application layer to parse the operation request includes:
controlling the second application layer to analyze the operation request to obtain an operation function type;
the responding to the operation request by the target subprocess comprises the following steps:
And controlling the second application layer to call the objective function corresponding to the operation function type from the second runtime layer, and executing the objective function at the second runtime layer.
Optionally, the cross-platform communication method further includes:
and controlling the server to send an initialization command to the acceleration card so that the acceleration card can establish the target subprocess handle and the target subprocess after receiving the initialization command, and returning the target subprocess handle to the server.
Optionally, the controlling the first upper layer to call the cross-platform communication interface to send an operation request to an accelerator card based on a direct memory access mechanism of the physical transport layer includes:
and controlling the first upper layer to call the cross-platform communication interface to send the operation request carrying the target subprocess handle to the acceleration card end based on a direct memory access mechanism of the physical transmission layer.
Optionally, after receiving the initialization command, the acceleration card creates the target sub-process handle, including:
and the acceleration card receives the initialization command and distributes the target sub-process handle in an idle state.
Optionally, after the accelerator card receives the initialization command and allocates the target sub-process handle in an idle state, the method further includes:
and the acceleration card end binds the target subprocess handle with the target subprocess to obtain the binding relation between the target subprocess handle and the target subprocess.
A second aspect of the present application provides a cross-platform communication system, including a server side of a hierarchical arrangement and an acceleration card side of the hierarchical arrangement, wherein:
the first communication layer is arranged at the server side and is used for providing a cross-platform communication interface for a first upper layer of the server side; the cross-platform communication interface is obtained by packaging a PCIE driving interface of a physical transmission layer by the first communication layer;
the first upper layer is arranged at the server end and is used for calling the cross-platform communication interface to send an operation request to the acceleration card end based on a direct memory access mechanism of the physical transmission layer;
the second communication layer is arranged at the acceleration card end and is used for acquiring the operation request from the direct memory access controller of the physical transmission layer and sending the operation request to a second upper layer of the acceleration card end;
The second upper layer is arranged at the acceleration card end and is used for responding to the operation request.
Optionally, the first upper layer includes a first application layer and a first runtime layer of the server side, where:
the first communication layer is further configured to send the cross-platform communication interface to the first runtime layer;
the first runtime layer is configured to forward the cross-platform communication interface to the first application layer.
Optionally, the second upper layer includes a second application layer and a second runtime layer of the acceleration card end, where:
the second communication layer is further configured to send the operation request to the second runtime layer;
the first runtime layer is configured to forward the operation request to the second application layer.
Optionally, the acceleration card end is further provided with a hardware module layer, which is used for providing hardware and driving support for the acceleration card end.
A third aspect of the present application provides a cross-platform communication device comprising:
the interface providing module is used for controlling a first communication layer of the server to provide a cross-platform communication interface for a first upper layer of the server; the cross-platform communication interface is obtained by packaging a PCIE driving interface of a physical transmission layer by the first communication layer;
The request sending module is used for controlling the first upper layer to call the cross-platform communication interface so as to send an operation request to an acceleration card end based on a direct memory access mechanism of the physical transmission layer;
and the response module is used for controlling the second communication layer of the acceleration card end to acquire the operation request from the direct memory access controller of the physical transmission layer, and sending the operation request to the second upper layer of the acceleration card end so as to respond to the operation request by utilizing the second upper layer.
A fourth aspect of the present application provides an electronic device comprising a processor and a memory; wherein the memory is configured to store a computer program that is loaded and executed by the processor to implement the aforementioned cross-platform communication method.
A fifth aspect of the present application provides a computer readable storage medium having stored therein computer executable instructions that, when loaded and executed by a processor, implement the aforementioned cross-platform communication method.
In the application, a first communication layer of a server side is controlled to provide a cross-platform communication interface for a first upper layer of the server side; the cross-platform communication interface is obtained by packaging a PCIE driving interface of a physical transmission layer by the first communication layer; then controlling the first upper layer to call the cross-platform communication interface to send an operation request to an acceleration card end based on a direct memory access mechanism of the physical transmission layer; and finally, controlling a second communication layer of the acceleration card end to acquire the operation request from a direct memory access controller of the physical transmission layer, and sending the operation request to a second upper layer of the acceleration card end so as to respond to the operation request by utilizing the second upper layer. Therefore, the application realizes the transparent data transmission for the upper layer developer by carrying out layered design on the server side and the acceleration card side, and when in cross-platform communication, the upper layer only needs to call the cross-platform communication interface provided by the communication layer, so that any details of the cross-platform transmission are not required to be concerned. Meanwhile, the direct memory access mechanism based on the physical transmission layer avoids extra data copying operation, greatly saves data transfer time and improves communication efficiency.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings that are required to be used in the embodiments or the description of the prior art will be briefly described below, and it is obvious that the drawings in the following description are only embodiments of the present invention, and that other drawings can be obtained according to the provided drawings without inventive effort for a person skilled in the art.
FIG. 1 is a flow chart of a cross-platform communication method provided by the present application;
FIG. 2 is a flowchart of a response method of a specific acceleration card terminal provided in the present application;
FIG. 3 is a flowchart of a specific cross-platform communication method provided in the present application;
FIG. 4 is a block diagram of a cross-platform communication system according to one embodiment of the present application;
FIG. 5 is a schematic diagram of a specific cross-platform communication interaction provided in the present application;
FIG. 6 is a schematic diagram of a cross-platform communication device according to the present application;
fig. 7 is a block diagram of a cross-platform communication electronic device provided in the present application.
Detailed Description
The following description of the embodiments of the present invention will be made clearly and completely with reference to the accompanying drawings, in which it is apparent that the embodiments described are only some embodiments of the present invention, but not all embodiments. All other embodiments, which can be made by those skilled in the art based on the embodiments of the invention without making any inventive effort, are intended to be within the scope of the invention.
The existing scheme for cross-platform communication of the artificial intelligent acceleration board card requires a developer to have a certain knowledge on PCIE technology, so that technical requirement commands of middle layer developers on bottom layer driving are increased, and on the other hand, the artificial intelligent acceleration card has frequent mass data transmission and can carry extra data, so that the board card efficiency is reduced. Aiming at the ending defect, the application provides a cross-platform communication scheme, and the server side and the acceleration card side are subjected to layered design, so that when in cross-platform communication, an upper layer only needs to call a cross-platform communication interface provided by a communication layer, and data transparent transmission is realized for an upper layer developer without any detail of the cross-platform transmission. Meanwhile, the direct memory access mechanism based on the physical transmission layer avoids extra data copying operation, greatly saves data transfer time and improves communication efficiency.
Fig. 1 is a flowchart of a cross-platform communication method provided in an embodiment of the present application. Referring to fig. 1, the cross-platform communication method includes:
s11: a first communication layer of a control server side provides a cross-platform communication interface for a first upper layer of the server side; the cross-platform communication interface is obtained by packaging a PCIE driving interface of a physical transmission layer by the first communication layer.
In this embodiment, a first communication layer of a server side is controlled to provide a cross-platform communication interface for a first upper layer of the server side, where the cross-platform communication interface is obtained by encapsulating a PCIE driving interface of a physical transport layer by the first communication layer. The cross-platform communication interface is a simpler initialization, data receiving and data transmitting function interface and the like.
In this embodiment, the server side is provided with the first communication layer and the first upper layer, where the first upper layer includes a first application layer and a first runtime layer of the server side. When the cross-platform communication interface is provided, the first communication layer is mainly controlled to send the cross-platform communication interface to the first runtime layer, and the cross-platform communication interface is forwarded to the first application layer through the first runtime layer.
S12: and controlling the first upper layer to call the cross-platform communication interface to send an operation request to an acceleration card end based on a direct memory access mechanism of the physical transmission layer.
In this embodiment, the first upper layer is controlled to call the cross-platform communication interface to send an operation request to the accelerator card based on the direct memory access mechanism of the physical transport layer. The direct memory access mechanism of the physical transmission layer, namely the DMA (Direct Memory Access) transmission mechanism of PCIE, can quickly copy data of different hardware devices, which are realized by a DMA controller, without depending on the CPU, so that the execution efficiency of the CPU is greatly improved. Specifically, the first application layer is controlled to call the cross-platform communication interface so as to send the operation request to the acceleration card end based on a direct memory access mechanism of the physical transmission layer.
S13: and controlling a second communication layer of the acceleration card end to acquire the operation request from a direct memory access controller of the physical transmission layer, and sending the operation request to a second upper layer of the acceleration card end so as to respond to the operation request by utilizing the second upper layer.
In this embodiment, the second communication layer controlling the accelerator card end obtains the operation request from the direct memory access controller of the physical transport layer, and sends the operation request to the second upper layer of the accelerator card end, so as to respond to the operation request by using the second upper layer. Similarly, the second upper layer includes a second application layer and a second runtime layer of the accelerator card end, and when the operation request is transferred, the operation request is mainly sent to the second runtime layer, and the operation request is forwarded to the second application layer through the second runtime layer. The specific process of this step is (fig. 2):
s131: and controlling PCIE driving of the physical transmission layer to generate an interrupt signal.
S132: and sending the interrupt signal to the second communication layer, and forwarding the interrupt signal to the second application layer through the second communication layer, so that the second application layer controls the second communication layer to acquire the operation request from the direct memory access controller of the physical transmission layer according to the interrupt signal.
In this embodiment, after the physical transport layer receives the operation request sent by the server layer, the PCIE driver of the physical transport layer is controlled to generate an interrupt signal, and then the interrupt signal is sent to the second communication layer, and the interrupt signal is forwarded to the second application layer through the second communication layer, so that the second application layer controls the second communication layer to obtain the operation request from the direct memory access controller of the physical transport layer according to the interrupt signal. At this time, the operation request is sent to the second runtime layer, and the operation request is forwarded to the second application layer via the second runtime layer.
S133: the second application layer is controlled to analyze the operation request to obtain function parameters and operation function types containing target subprocess identification; the target sub-process is identified as a target sub-process handle.
S134: determining a target sub-process with a binding relation with the target sub-process identification; the target sub-process has a corresponding relation with the target business process running on the first upper layer which sends the operation request.
S135: and controlling the second application layer to call the objective function corresponding to the operation function type from the second runtime layer, and executing the objective function at the second runtime layer.
In this embodiment, the second application layer is controlled to parse the operation request to obtain a function parameter and an operation function type including the target sub-process identifier. The target subprocess is identified as a target subprocess handle, and the operation request comprises function parameters and operation function types. And then determining the target sub-process with the binding relation with the target sub-process identification. The target sub-process has a corresponding relation with the target business process running on the first upper layer which sends the operation request. And finally, controlling the second application layer to call the objective function corresponding to the operation function type from the second runtime layer, and executing the objective function on the second runtime layer.
Before cross-platform communication, the target subprocess handle and the target subprocess are created through an accelerator card initialization operation, and the target subprocess handle is carried during the cross-platform communication. And controlling the first upper layer to call the cross-platform communication interface to send the operation request carrying the target subprocess handle to the acceleration card end based on a direct memory access mechanism of the physical transmission layer. That is, the handle is used by the subsequent access request of the business process to the card terminal, so that continuity of operation of the card terminal is realized by the handle mode, for example, the card terminal process configures model information first, then input data is designated, and the processes are independent of each other, so that the operation of other processes is invalid to the current process due to the processing of different processes. Specifically, the server side is controlled to send an initialization command to the acceleration card side, so that the acceleration card side creates the target subprocess handle and the target subprocess after receiving the initialization command, and returns the target subprocess handle to the server side. And when the target subprocess handle is created, the acceleration card receives the initialization command and distributes the target subprocess handle in an idle state. And simultaneously, the acceleration card end binds the target subprocess handle with the target subprocess to obtain the binding relation between the target subprocess handle and the target subprocess.
As can be seen, in the embodiment of the present application, a first communication layer at a server side is controlled to provide a cross-platform communication interface to a first upper layer at the server side; the cross-platform communication interface is obtained by packaging a PCIE driving interface of a physical transmission layer by the first communication layer; then controlling the first upper layer to call the cross-platform communication interface to send an operation request to an acceleration card end based on a direct memory access mechanism of the physical transmission layer; and finally, controlling a second communication layer of the acceleration card end to acquire the operation request from a direct memory access controller of the physical transmission layer, and sending the operation request to a second upper layer of the acceleration card end so as to respond to the operation request by utilizing the second upper layer. According to the embodiment of the application, the server end and the acceleration card end are designed in a layered mode, when in cross-platform communication, an upper layer only needs to call the cross-platform communication interface provided by the communication layer, and data transparent transmission is achieved for an upper layer developer without any detail of the cross-platform transmission. Meanwhile, the direct memory access mechanism based on the physical transmission layer avoids extra data copying operation, greatly saves data transfer time and improves communication efficiency.
Fig. 3 is a flowchart of a specific cross-platform communication method according to an embodiment of the present application. Referring to fig. 3, the cross-platform communication method includes:
s21: a first communication layer of a control server side provides a cross-platform communication interface for a first upper layer of the server side; the cross-platform communication interface is obtained by packaging a PCIE driving interface of a physical transmission layer by the first communication layer.
In this embodiment, for the specific process of step S21, reference may be made to the corresponding content disclosed in the foregoing embodiment, and no further description is given here.
S22: and controlling the first upper layer to call the cross-platform communication interface to perform serialization operation on the operation request, and sending the operation request after serialization operation to an acceleration card end based on a direct memory access mechanism of the physical transmission layer.
The accelerator card needs to be compatible with more Linux system platforms, such as a common 32bit/64bit Linux system, which requires simple data transfer to occur because of the difference in bit width, resulting in parsing failure. For example, the request data structure contains long type, the type occupies 32bit under 32bit Linux system, and occupies 64bit under 64bit Linux system, which causes the difference of the analysis of the transmitted and received data, and further causes the data error, the serialization operation realizes the analysis consistency of the cross-platform data by uniformly defining the bit width length of the transmission data, for example, long type data is agreed to 64bit, and the 32bit system needs to use 64bit data type to receive the data, thus solving the problem caused by the platform difference in the way of agreed data length.
Therefore, the present embodiment overcomes the problem of inconsistent data bit width caused by the difference of Linux systems through the serialization operation and the deserialization operation. Specifically, the first upper layer is controlled to call the cross-platform communication interface to perform serialization operation on the operation request, and the operation request after serialization operation is sent to an acceleration card end based on a direct memory access mechanism of the physical transmission layer.
S23: and controlling a second communication layer of the acceleration card end to acquire the operation request from a direct memory access controller of the physical transmission layer.
In this embodiment, regarding the specific process of step S23, reference may be made to the corresponding content disclosed in the foregoing embodiment, and no further description is given here.
S24: and controlling the second communication layer to perform deserialization operation on the operation request after the acquisition of the serialization operation, and sending the operation request after the deserialization operation to a second upper layer of the acceleration card end, wherein the second upper layer of the acceleration card end.
In this embodiment, the second communication layer is controlled to perform an anti-serialization operation on the operation request after the obtained serialization operation, and the operation request after the anti-serialization operation is sent to a second upper layer of the acceleration card end, where the second upper layer of the acceleration card end is provided. Specifically, the flatbuffers tool may be used to perform serialization and deserialization operations on the operation request, and the tools of the serialization and deserialization operations are not limited in this embodiment.
As can be seen, in the embodiment of the present application, a first communication layer at a server side is controlled to provide a cross-platform communication interface to a first upper layer at the server side; the cross-platform communication interface is obtained by packaging a PCIE driving interface of a physical transmission layer by the first communication layer; then controlling the first upper layer to call the cross-platform communication interface to perform serialization operation on the operation request, and sending the operation request after serialization operation to an acceleration card end based on a direct memory access mechanism of the physical transmission layer; then controlling a second communication layer of the acceleration card end to acquire the operation request from a direct memory access controller of the physical transmission layer; and finally, controlling the second communication layer to perform deserialization operation on the operation request after the acquisition of the serialization operation, and sending the operation request after the deserialization operation to a second upper layer of the acceleration card end, wherein the second upper layer of the acceleration card end. The embodiment of the application performs serialization and deserialization operations on the transmitted data so as to be compatible with different systems and solve the problem of data analysis errors caused by system differences.
Fig. 4 is a frame diagram of a specific cross-platform communication system according to an embodiment of the present application. Referring to fig. 4, the cross-platform communication system includes a server side with a layered arrangement and an acceleration card side with a layered arrangement, wherein:
The first communication layer L1 is arranged at the server side and is used for providing a cross-platform communication interface for a first upper layer of the server side; the cross-platform communication interface is obtained by packaging a PCIE driving interface of a physical transmission layer by the first communication layer L1; the first upper layer L2 is arranged at the server end and is used for calling the cross-platform communication interface to send an operation request to the acceleration card end based on a direct memory access mechanism of the physical transmission layer L3; the second communication layer L4 is configured to obtain the operation request from the direct memory access controller of the physical transport layer L3, and send the operation request to the second upper layer L5 of the accelerator card; the second upper layer L5 is disposed at the accelerator card end, and is configured to respond to the operation request.
The first upper layer L2 includes a first application layer L21 and a first runtime layer L22 of the server side, where: the first communication layer L1 is further configured to send the cross-platform communication interface to the first runtime layer L22; the first runtime layer L22 is configured to forward the cross-platform communication interface to the first application layer L21. The second upper layer L5 includes a second application layer L51 and a second runtime layer L52 of the acceleration card end, where: the second communication layer L4 is further configured to send the operation request to the second runtime layer L52; the second runtime layer L52 is configured to forward the operation request to the second application layer L51. The acceleration card end is also provided with a hardware module layer L6 for providing hardware and driving support for the acceleration card end.
The frame diagram of fig. 4 is divided into a server-side portion on the left side and an acceleration card-side portion on the right side. The first communication layer L1 and the first upper layer L2 (the first application layer L21 and the first runtime layer L22) are server-side software parts. The L1 layer provides a cross-platform communication interface for the L22 layer upwards, and the inside of the layer for realizing the transparent transmission of the L22 layer and the board card is mainly realized: unified management and control PCIE driving interfaces are packaged into simpler initializing, data receiving and data transmitting function interfaces for the L22 layer to be used, and transparent transmission of the L22 layer and the L52 layer is realized, so that cross-platform transmission details of the relationship are not needed; and carrying out serialization and deserialization operations on the transmitted data so as to be compatible with different systems and solve the data analysis errors caused by platform differences. The L21 layer is a service program of a user, the function realized by the L22 layer is to provide an interface used by the L21 layer upwards so as to use board card resources to carry out the service program, the interface of the L1 layer is called downwards to realize cross-platform transmission of a service layer request, and the L21 layer and the L4 layer together complete processing of L21 layer software logic.
The physical transport layer L3 is PCIE physical interface devices of the server and the acceleration card end and corresponding drivers thereof. And realizing cross-platform data transfer. When the board card end or the server end receives the data, the PCIE driver can generate an interrupt to inform the upper layer so that the upper layer can carry out subsequent operation, and the PCIE also supports a DMA data transmission mode to complete efficient data transmission.
The second communication layer L4 and the second upper layer L5 (the second application layer L51 and the second runtime layer L52) are software parts of the acceleration card end, and the hardware module layer L6 is each module and its driver inside the acceleration card end. The L4 layer has the same function as the L1 layer, L51 is a service process of the acceleration card end, the process senses that the acceleration card end has data received by receiving an interrupt signal sent by the L3 layer, the service process deserializes the data and then acquires handle information, the handle marks which subprocess the data is submitted to for execution, namely, later request data is acquired from a data receiving memory area, and the request is executed. The L52 layer is used for receiving the access data sent by the server end and responding to the data, if the returned data is returned, the returned data is placed in the memory area sent by the acceleration card end, the PCIE driver can generate interruption at the server end at the same time, and the relevant process of the server end receives the data, so that the above operation is a cross-platform transmission process.
Taking the scenario of training or reasoning a neural network by using an accelerator card as an example, a processing scheme for implementing data transmission and service request by using the cross-platform communication framework of the embodiment is described in detail below:
Firstly, a service process of a service end needs to initialize an acceleration card, namely, an access acceleration card end executes initialization operation, because the operation does not acquire a handle from the acceleration card end, the operation needed by the service process is known through a function, the service process of the acceleration card end is detected to be a sub-process after the board card initialization operation, an unused handle number handle is allocated to mark the sub-process, the handle is returned to the service process, and then the service process performs data interaction based on the handle. And during each interaction, the server side provides the handle and the corresponding function name and parameters, the acceleration card side recognizes the handle and transmits the following request data to the corresponding process for processing, and the acceleration card side returns the data to the sending memory after finishing processing and obtains the data. The specific interaction process is shown in fig. 5.
In the above procedure, the server-side initializing board operation sequences the operation in the L1 layer of fig. 4, where the sequence is generally implemented using a flatbuffers technique, and the flatbuffers sequence includes a function type and a function parameter, for example, an initializing operation, where the function is an initializing device, and the parameter is a handle. After the serialization is completed, the data is sent by a PCIE driver, the PCIE places the data in a shared memory based on a DMA data transmission mode so as to be directly accessed and acquired by an acceleration card end, and meanwhile, an interrupt is triggered at the acceleration card end so as to inform that the data is to be acquired. The acceleration card end service process receives the interrupt, then receives the memory, namely the shared memory, acquires data, and judges that the function is board card initialization after deserialization, then the service process creates a subprocess, distributes an idle handle to bind with the subprocess, returns the handle to the server end, and the returned data is the same as the serial sending operation of the server end. After the operation is finished, the server business process and the acceleration card end processing operation can be bound one by one, and the full-flow data transfer from the business process to the board card processing process is finished through the acceleration card end service process according to the request handle assignment. Business operations, such as delivering model data, configuring model parameters, issuing inference execution commands, etc., after a business process are performed based on the above flows.
Referring to fig. 6, the embodiment of the application further correspondingly discloses a cross-platform communication device, which includes:
an interface providing module 11, configured to control a first communication layer at a server side to provide a cross-platform communication interface to a first upper layer at the server side; the cross-platform communication interface is obtained by packaging a PCIE driving interface of a physical transmission layer by the first communication layer;
a request sending module 12, configured to control the first upper layer to invoke the cross-platform communication interface to send an operation request to an accelerator card end based on a direct memory access mechanism of the physical transport layer;
and the response module 13 is configured to control the second communication layer of the accelerator card end to obtain the operation request from the direct memory access controller of the physical transport layer, and send the operation request to the second upper layer of the accelerator card end, so as to respond to the operation request by using the second upper layer.
As can be seen, in the embodiment of the present application, a first communication layer at a server side is controlled to provide a cross-platform communication interface to a first upper layer at the server side; the cross-platform communication interface is obtained by packaging a PCIE driving interface of a physical transmission layer by the first communication layer; then controlling the first upper layer to call the cross-platform communication interface to send an operation request to an acceleration card end based on a direct memory access mechanism of the physical transmission layer; and finally, controlling a second communication layer of the acceleration card end to acquire the operation request from a direct memory access controller of the physical transmission layer, and sending the operation request to a second upper layer of the acceleration card end so as to respond to the operation request by utilizing the second upper layer. According to the embodiment of the application, the server end and the acceleration card end are designed in a layered mode, when in cross-platform communication, an upper layer only needs to call the cross-platform communication interface provided by the communication layer, and data transparent transmission is achieved for an upper layer developer without any detail of the cross-platform transmission. Meanwhile, the direct memory access mechanism based on the physical transmission layer avoids extra data copying operation, greatly saves data transfer time and improves communication efficiency.
In some embodiments, the first upper layer includes a first application layer and a first runtime layer of the server, and the interface providing module 11 specifically includes:
a first sending unit, configured to control the first communication layer to send the cross-platform communication interface to the first runtime layer;
and the second sending unit is used for forwarding the cross-platform communication interface to the first application layer through the first runtime layer.
In some embodiments, the request sending module 12 is specifically configured to control the first application layer to make a call to the cross-platform communications interface to send the operation request to the accelerator card end based on a direct memory access mechanism of the physical transport layer.
In some embodiments, the request sending module 12 is specifically further configured to control the serializing operation module, which is configured to control the first upper layer to call the cross-platform communication interface to perform a serializing operation on the operation request, and send the operation request after the serializing operation to the accelerator card based on a direct memory access mechanism of the physical transport layer.
In some embodiments, the second upper layer includes a second application layer and a second runtime layer of the accelerator card, and the response module 13 is specifically configured to send the operation request to the second runtime layer, and forward the operation request to the second application layer via the second runtime layer.
In some embodiments, the cross-platform communication device further comprises:
the deserialization operation module is used for controlling the second communication layer to perform deserialization operation on the operation request after the acquisition of the serialization operation, and sending the operation request after the deserialization operation to the second upper layer;
the interrupt signal generation module is used for controlling PCIE driving of the physical transmission layer to generate an interrupt signal;
an interrupt signal sending module, configured to send the interrupt signal to the second communication layer, and forward the interrupt signal to the second application layer via the second communication layer, so that the second application layer controls the second communication layer to obtain the operation request from a direct memory access controller of the physical transport layer according to the interrupt signal;
and the initialization module is used for controlling the server to send an initialization command to the acceleration card end so that the acceleration card end can establish the target subprocess handle and the target subprocess after receiving the initialization command and return the target subprocess handle to the server end.
In some embodiments, the response module 13 specifically further includes:
The analysis unit is used for controlling the second application layer to analyze the operation request to obtain function parameters containing target subprocess identification;
the determining unit is used for determining a target sub-process with a binding relationship with the target sub-process identification; the target sub-process has a corresponding relation with the target business process running on the first upper layer for sending the operation request;
and the response unit is used for responding to the operation request by utilizing the target subprocess.
In some particular embodiments, the target sub-process in the cross-platform communication device is identified as a target sub-process handle.
In some embodiments, the parsing unit is further configured to control the second application layer to parse the operation request to obtain an operation function type.
In some specific embodiments, the response unit in the cross-platform communication device specifically includes:
a function calling subunit, configured to control the second application layer to call, from the second runtime layer, an objective function corresponding to the operation function type;
and the execution subunit is used for executing the objective function at the second runtime layer.
In some embodiments, the request sending module 12 is specifically further configured to control the first upper layer to make a call to the cross-platform communication interface to send the operation request carrying the target sub-process handle to the accelerator card end based on a direct memory access mechanism of the physical transport layer.
In some embodiments, the initialization module specifically includes:
the handle creation unit is used for distributing the target subprocess handle in an idle state after the acceleration card receives the initialization command;
and the binding unit is used for binding the target subprocess handle with the target subprocess by the acceleration card end to obtain the binding relationship between the target subprocess handle and the target subprocess.
Further, the embodiment of the application also provides electronic equipment. Fig. 7 is a block diagram of an electronic device 20, according to an exemplary embodiment, and the contents of the diagram should not be construed as limiting the scope of use of the present application in any way.
Fig. 7 is a schematic structural diagram of an electronic device 20 according to an embodiment of the present application. The electronic device 20 may specifically include: at least one processor 21, at least one memory 22, a power supply 23, a communication interface 24, an input output interface 25, and a communication bus 26. Wherein the memory 22 is configured to store a computer program that is loaded and executed by the processor 21 to implement the relevant steps in the cross-platform communication method disclosed in any of the foregoing embodiments.
In this embodiment, the power supply 23 is configured to provide an operating voltage for each hardware device on the electronic device 20; the communication interface 24 can create a data transmission channel between the electronic device 20 and an external device, and the communication protocol to be followed is any communication protocol applicable to the technical solution of the present application, which is not specifically limited herein; the input/output interface 25 is used for acquiring external input data or outputting external output data, and the specific interface type thereof may be selected according to the specific application requirement, which is not limited herein.
The memory 22 may be a carrier for storing resources, such as a read-only memory, a random access memory, a magnetic disk, or an optical disk, and the resources stored thereon may include an operating system 221, a computer program 222, data 223, and the like, and the storage may be temporary storage or permanent storage.
The operating system 221 is used for managing and controlling various hardware devices on the electronic device 20 and the computer program 222, so as to implement the operation and processing of the processor 21 on the mass data 223 in the memory 22, which may be Windows Server, netware, unix, linux, etc. The computer program 222 may further comprise a computer program capable of performing other specific tasks in addition to the computer program capable of performing the cross-platform communication method performed by the electronic device 20 as disclosed in any of the previous embodiments. The data 223 may include an operation request collected by the electronic device 20.
Further, the embodiment of the application also discloses a storage medium, and the storage medium stores a computer program, and when the computer program is loaded and executed by a processor, the steps of the cross-platform communication method disclosed in any of the previous embodiments are realized.
In this specification, each embodiment is described in a progressive manner, and each embodiment is mainly described in a different point from other embodiments, so that the same or similar parts between the embodiments are referred to each other. For the device disclosed in the embodiment, since it corresponds to the method disclosed in the embodiment, the description is relatively simple, and the relevant points refer to the description of the method section.
Finally, it is further noted that relational terms such as first and second, and the like are used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Moreover, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one …" does not exclude the presence of other like elements in a process, method, article, or apparatus that comprises the element.
The cross-platform communication method, system, device, equipment and medium provided by the invention are described in detail, and specific examples are applied to illustrate the principle and implementation of the invention, and the description of the above examples is only used for helping to understand the method and core idea of the invention; meanwhile, as those skilled in the art will have variations in the specific embodiments and application scope in accordance with the ideas of the present invention, the present description should not be construed as limiting the present invention in view of the above.
Claims (20)
1. A method of cross-platform communication, comprising:
a first communication layer of a control server side provides a cross-platform communication interface for a first upper layer of the server side; the cross-platform communication interface is obtained by packaging a PCIE driving interface of a physical transmission layer by the first communication layer;
controlling the first upper layer to call the cross-platform communication interface to send an operation request to an acceleration card end based on a direct memory access mechanism of the physical transmission layer;
the second communication layer of the acceleration card end is controlled to acquire the operation request from the direct memory access controller of the physical transmission layer, and the operation request is sent to the second upper layer of the acceleration card end so as to respond to the operation request by utilizing the second upper layer; the second upper layer comprises a second application layer and a second runtime layer of the acceleration card end;
The responding to the operation request with the second upper layer includes:
controlling the second application layer to analyze the operation request to obtain function parameters containing target subprocess identification;
determining a target sub-process with a binding relation with the target sub-process identification; the target sub-process has a corresponding relation with the target business process running on the first upper layer for sending the operation request; the target subprocess identification and the target subprocess are created by initializing an acceleration card end before cross-platform communication;
and responding to the operation request by utilizing the target subprocess.
2. The method of claim 1, wherein the first upper layer comprises a first application layer and a first runtime layer of the server side;
the first communication layer of the control server side provides a cross-platform communication interface for a first upper layer of the server side, and the cross-platform communication interface comprises:
and controlling the first communication layer to send the cross-platform communication interface to the first runtime layer, and forwarding the cross-platform communication interface to the first application layer through the first runtime layer.
3. The method according to claim 2, wherein controlling the first upper layer to invoke the cross-platform communication interface to send an operation request to an accelerator card based on a direct memory access mechanism of the physical transport layer comprises:
and controlling the first application layer to call the cross-platform communication interface so as to send the operation request to the acceleration card end based on a direct memory access mechanism of the physical transmission layer.
4. The method according to claim 1, wherein controlling the first upper layer to invoke the cross-platform communication interface to send an operation request to an accelerator card based on a direct memory access mechanism of the physical transport layer comprises:
controlling the first upper layer to call the cross-platform communication interface to perform serialization operation on the operation request, and sending the operation request after serialization operation to the acceleration card end based on a direct memory access mechanism of the physical transmission layer;
after the second communication layer controlling the acceleration card end obtains the operation request from the direct memory access controller of the physical transmission layer, the method further comprises the following steps:
And controlling the second communication layer to perform deserialization operation on the operation request after the acquisition of the serialization operation, and sending the operation request after the deserialization operation to the second upper layer.
5. The method of cross-platform communication according to claim 4, wherein the process of serializing and deserializing operations comprises:
and carrying out serialization and deserialization operation on the operation request by using a flatbuffers tool.
6. The cross-platform communication method according to claim 1, wherein the second upper layer comprises a second application layer and a second runtime layer of the accelerator card side;
the sending the operation request to the second upper layer of the acceleration card end comprises the following steps:
and sending the operation request to the second runtime layer, and forwarding the operation request to the second application layer through the second runtime layer.
7. The method according to claim 6, wherein before the second communication layer controlling the accelerator card obtains the operation request from the direct memory access controller of the physical transport layer, the method further comprises:
controlling PCIE driving of the physical transmission layer to generate an interrupt signal;
And sending the interrupt signal to the second communication layer, and forwarding the interrupt signal to the second application layer through the second communication layer, so that the second application layer controls the second communication layer to acquire the operation request from the direct memory access controller of the physical transmission layer according to the interrupt signal.
8. The cross-platform communication method of claim 1, wherein the target sub-process is identified as a target sub-process handle.
9. The method of cross-platform communication according to claim 8, wherein the controlling the second application layer to parse the operation request comprises:
controlling the second application layer to analyze the operation request to obtain an operation function type;
the responding to the operation request by the target subprocess comprises the following steps:
and controlling the second application layer to call the objective function corresponding to the operation function type from the second runtime layer, and executing the objective function at the second runtime layer.
10. The cross-platform communication method as recited in claim 8, further comprising:
and controlling the server to send an initialization command to the acceleration card so that the acceleration card can establish the target subprocess handle and the target subprocess after receiving the initialization command, and returning the target subprocess handle to the server.
11. The method according to claim 10, wherein controlling the first upper layer to invoke the cross-platform communication interface to send an operation request to an accelerator card based on a direct memory access mechanism of the physical transport layer comprises:
and controlling the first upper layer to call the cross-platform communication interface to send the operation request carrying the target subprocess handle to the acceleration card end based on a direct memory access mechanism of the physical transmission layer.
12. The cross-platform communication method as claimed in claim 10, wherein the acceleration card creates the target sub-process handle after receiving the initialization command, comprising:
and the acceleration card receives the initialization command and distributes the target sub-process handle in an idle state.
13. The method according to claim 12, wherein after the acceleration card receives the initialization command and allocates the target sub-process handle in an idle state, the method further comprises:
and the acceleration card end binds the target subprocess handle with the target subprocess to obtain the binding relation between the target subprocess handle and the target subprocess.
14. The cross-platform communication system is characterized by comprising a server side and an acceleration card side, wherein the server side and the acceleration card side are arranged in a layered mode, and the acceleration card side is arranged in a layered mode, wherein:
the first communication layer is arranged at the server side and is used for providing a cross-platform communication interface for a first upper layer of the server side; the cross-platform communication interface is obtained by packaging a PCIE driving interface of a physical transmission layer by the first communication layer;
the first upper layer is arranged at the server end and is used for calling the cross-platform communication interface to send an operation request to the acceleration card end based on a direct memory access mechanism of the physical transmission layer;
the second communication layer is arranged at the acceleration card end and is used for acquiring the operation request from the direct memory access controller of the physical transmission layer and sending the operation request to a second upper layer of the acceleration card end; the second upper layer comprises a second application layer and a second runtime layer of the acceleration card end;
the second upper layer is arranged at the acceleration card end and is used for responding to the operation request;
responding to the operation request, including:
controlling the second application layer to analyze the operation request to obtain function parameters containing target subprocess identification;
Determining a target sub-process with a binding relation with the target sub-process identification; the target sub-process has a corresponding relation with the target business process running on the first upper layer for sending the operation request; the target subprocess identification and the target subprocess are created by initializing an acceleration card end before cross-platform communication;
and responding to the operation request by utilizing the target subprocess.
15. The cross-platform communication system of claim 14, wherein the first upper layer comprises a first application layer and a first runtime layer of the server side, wherein:
the first communication layer is further configured to send the cross-platform communication interface to the first runtime layer;
the first runtime layer is configured to forward the cross-platform communication interface to the first application layer.
16. The cross-platform communication system of claim 14, wherein the second upper layer comprises a second application layer and a second runtime layer of the accelerator card side, wherein:
the second communication layer is further configured to send the operation request to the second runtime layer;
the second runtime layer is configured to forward the operation request to the second application layer.
17. The cross-platform communication system according to claim 16, wherein the accelerator card side is further provided with a hardware module layer for providing hardware and driving support for the accelerator card side.
18. A cross-platform communication device, comprising:
the interface providing module is used for controlling a first communication layer of the server to provide a cross-platform communication interface for a first upper layer of the server; the cross-platform communication interface is obtained by packaging a PCIE driving interface of a physical transmission layer by the first communication layer;
the request sending module is used for controlling the first upper layer to call the cross-platform communication interface so as to send an operation request to an acceleration card end based on a direct memory access mechanism of the physical transmission layer;
the response module is used for controlling a second communication layer of the acceleration card end to acquire the operation request from a direct memory access controller of the physical transmission layer and sending the operation request to a second upper layer of the acceleration card end so as to respond to the operation request by utilizing the second upper layer; the second upper layer comprises a second application layer and a second runtime layer of the acceleration card end;
The cross-platform communication device is further configured to:
controlling the second application layer to analyze the operation request to obtain function parameters containing target subprocess identification;
determining a target sub-process with a binding relation with the target sub-process identification; the target sub-process has a corresponding relation with the target business process running on the first upper layer for sending the operation request; the target subprocess identification and the target subprocess are created by initializing an acceleration card end before cross-platform communication;
and responding to the operation request by utilizing the target subprocess.
19. An electronic device comprising a processor and a memory; wherein the memory is for storing a computer program to be loaded and executed by the processor to implement the cross-platform communication method of any one of claims 1 to 13.
20. A computer readable storage medium storing computer executable instructions which when loaded and executed by a processor implement a cross-platform communication method according to any one of claims 1 to 13.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310154595.5A CN115827285B (en) | 2023-02-23 | 2023-02-23 | Cross-platform communication method, system, device, equipment and medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310154595.5A CN115827285B (en) | 2023-02-23 | 2023-02-23 | Cross-platform communication method, system, device, equipment and medium |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115827285A CN115827285A (en) | 2023-03-21 |
CN115827285B true CN115827285B (en) | 2023-05-23 |
Family
ID=85522136
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310154595.5A Active CN115827285B (en) | 2023-02-23 | 2023-02-23 | Cross-platform communication method, system, device, equipment and medium |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115827285B (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117648211B (en) * | 2024-01-29 | 2024-05-24 | 山东云海国创云计算装备产业创新中心有限公司 | Runtime unified interface, server and calling method of artificial intelligent framework |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115374043A (en) * | 2022-09-22 | 2022-11-22 | 成都乐创自动化技术股份有限公司 | Communication protocol data interaction method based on PCIE |
-
2023
- 2023-02-23 CN CN202310154595.5A patent/CN115827285B/en active Active
Also Published As
Publication number | Publication date |
---|---|
CN115827285A (en) | 2023-03-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112416840B (en) | Remote mapping method, device, equipment and storage medium for computing resources | |
CN110620712B (en) | Method for realizing real-time EtherCAT master station of Window platform | |
US4855905A (en) | Multiprotocol I/O communications controller unit including emulated I/O controllers and tables translation of common commands and device addresses | |
CN101197812B (en) | System and method for implementing page invocation | |
CN115827285B (en) | Cross-platform communication method, system, device, equipment and medium | |
RU2226710C2 (en) | Ieee device driver for adapter | |
US11948021B2 (en) | Method for inter-core communication, processor, inter-core communication system and computer readable storage medium | |
US11989568B2 (en) | Method to execute a mode-transition in a multi-mode computer system | |
CN115827269B (en) | Inter-core communication channel construction method, device, storage medium and laser radar | |
US6052729A (en) | Event-reaction communication protocol in an object oriented processor array | |
CN113867889A (en) | Distributed real-time simulation platform | |
US5606671A (en) | Serial port using non-maskable interrupt terminal of a microprocessor | |
CN105487403A (en) | Establishment of motion control system based on CAN and simulation modeling method | |
CN112835598A (en) | Automobile ECU (electronic control Unit) flashing method and system and computer readable storage medium | |
CN116643854A (en) | Service arrangement method and device, flow controller and task processor | |
CN113848752A (en) | Distributed real-time simulation method | |
CN110430110B (en) | On-site bus gateway and protocol conversion method thereof | |
CN116450109A (en) | Modbus communication library adaptation method under MATLAB and CCS combined development mode | |
CN115048187A (en) | Operator-based pvc file importing method, device and storage medium | |
CN114567445A (en) | Signature verification data transmission method, device, equipment and medium | |
CN111371799A (en) | Method, device and equipment for controlling data transmission and reception of MCTP (Multi-channel media processing protocol) controller | |
CN118672789B (en) | GPU equipment task execution method, device, equipment and storage medium | |
CN115509146B (en) | Distributed communication resource integration method for flight maintenance simulator | |
US7529268B1 (en) | Multi-point electronic control system protocol | |
KR0168947B1 (en) | Method for booting node without disk in real-time distributing system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |