Communication method and apparatus
Patent Information
- Application Number
- CN202510340044.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-20
- Publication Date
- 2026-09-22
AI Technical Summary
在第一部分的模型的预测推理时长较长且上行传输速率高的情况下,选择第一部分的模型更少的部署方式作为目标部署方式;然而,这样可能会导致传输时延发生变化,或者第二部分的模型的预测推理时长更长等,从而导致模型推理的时长更长,影响目标部署方式的准确性,而目标部署方式不准确会导致推理任务的处理效率低
[0082]第十二方面,提供一种计算机程序产品,包括计算机程序,当所述计算机程序被执行时使得上述第一方面至第四方面以及第一方面至第四方面中任一种可能实现方式中的通信方法被实现。
Smart Images

Figure CN122802947A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of communications, and more specifically, to a communication method and apparatus. Background Technology
[0002] With the development of communication technology, the tasks processed by a single device are becoming increasingly complex, and the amount of input data is growing larger. However, the processing capacity of a single device is limited, necessitating the deployment of tasks across multiple devices for collaborative processing to improve efficiency. Since different devices have varying computing power, different task deployment methods will affect processing efficiency. Therefore, it is necessary to determine a target deployment method from among various options to maximize task processing efficiency.
[0003] Taking large-scale model inference tasks as an example, related technologies divide the model into two parts. The first part of the model is deployed on the terminal device, and the second part is deployed on the network device. The target deployment method is determined based on the prediction and inference time and uplink transmission rate of the first part of the model. If the prediction and inference time of the first part of the model is long and the uplink transmission rate is high, the deployment method with fewer first-part models is chosen as the target deployment method. However, this may lead to changes in transmission latency, or the prediction and inference time of the second part of the model may be even longer, resulting in a longer model inference time and affecting the accuracy of the target deployment method. An inaccurate target deployment method will lead to low processing efficiency of the inference task. Summary of the Invention
[0004] This application provides a communication method and apparatus, wherein a first communication device transmits the amount of input data for a first task, enabling other communication devices to determine the predicted duration for a second communication device to process a subtask of the first task based on the amount of input data for the first task, thereby determining the target deployment method. This improves the accuracy of determining the target deployment method and thus improves the processing efficiency of the first task.
[0005] In a first aspect, a communication method is provided, which can be applied to a first communication device, such as being executed by the first communication device. The first communication device can be a terminal device or a module (e.g., a circuit, chip, chip system, or processor) in the terminal device, or it can be a logic node, logic module, or software that can realize all or part of the functions of the terminal device.
[0006] The method includes: sending a data volume of input data for a first task, the data volume being used to determine a first predictive processing duration, the first predictive processing duration being a predicted processing duration for a subtask of the first task to be executed by a second communication device; and receiving a target deployment mode for the first task, the target deployment mode being used to instruct that at least one subtask of the first task be deployed on at least one target communication device.
[0007] Based on the above technical solution, since the first communication device sends out the amount of input data for the first task, the communication device that receives the amount of input data can determine the first prediction processing time based on the amount of input data for the first task, and then determine the target deployment method, which can improve the accuracy of the target deployment method and thus improve the processing efficiency of the first task.
[0008] In conjunction with the first aspect, in some implementations of the first aspect, the at least one target communication device includes the first communication device and / or the second communication device; the method includes: if the at least one target communication device includes the second communication device, then sending a target deployment method to the second communication device; and / or, if the at least one target communication device includes the first communication device, then deploying a subtask of the first task according to the target deployment method.
[0009] Based on the above technical solution, if the target deployment method includes deploying sub-tasks of the first task on the second communication device, the first communication device needs to inform the second communication device of the target deployment method, so that the second communication device can deploy the sub-tasks of the first task according to the target deployment method, and then process the sub-tasks of the first task. If the target deployment method includes deploying sub-tasks of the first task on the second communication device, the first communication device directly deploys the sub-tasks of the first task according to the target deployment method. This can improve the flexibility of the first and second communication devices in coordinating the processing of the first task.
[0010] In conjunction with the first aspect, in some implementations of the first aspect, the target deployment method includes any one of the following: deploying the first subtask of the first task on the first communication device, and deploying the second subtask of the first task on the second communication device; deploying all subtasks of the first task on the first communication device; or deploying all subtasks of the first task on the second communication device.
[0011] Based on the above technical solution, the target deployment method is to deploy it on at least one of the first communication device and the second communication device, which can increase the diversity of target deployment methods.
[0012] In conjunction with the first aspect, in some implementations of the first aspect, the target deployment method includes deploying a subtask on the second communication device. The method includes: acquiring intermediate input data based on input data of the first task; and sending the intermediate input data and the target deployment method to the second communication device, wherein the intermediate input data is the input data of the subtask deployed on the second communication device.
[0013] Based on the above technical solution, after the first communication device obtains the input data of the first task, it can inform the second communication device of the sub-tasks that the second communication device needs to deploy and their input data, so that the second communication device can process the sub-tasks according to the target deployment method.
[0014] In conjunction with the first aspect, in some implementations of the first aspect, the target deployment method includes deploying a first subtask of the first task on a first communication device and deploying a second subtask of the first task on a second communication device, wherein the first subtask and the second subtask are serial subtasks, and the execution order of the first subtask is first; the method further includes: processing the first subtask based on the input data of the first task to obtain the processing result of the first subtask, wherein the processing result of the first subtask is intermediate input data; and sending the processing result of the first subtask and the target deployment method to the second communication device.
[0015] Based on the above technical solution, when the first subtask and the second subtask are serial subtasks and the first subtask is executed first, the first communication device can cooperate with the second communication device to process the first task.
[0016] Optionally, the first communication device may also compress the processing result of the first subtask before sending it, which can reduce the amount of data sent and reduce transmission delay.
[0017] In conjunction with the first aspect, in some implementations of the first aspect, the target deployment method includes deploying a first subtask of the first task on a first communication device and deploying a second subtask of the first task on a second communication device, wherein the first subtask and the second subtask are serial subtasks, with the second subtask being executed first, and the input data of the first task being the input data of the second subtask; the method further includes: determining the transmission method corresponding to the target deployment method as the target transmission method according to the correspondence between the target deployment method and the transmission method; and sending the input data of the first task and the target deployment method to the second communication device based on the target transmission method.
[0018] Optionally, the method further includes: receiving the processing result of a second subtask from a second communication device, wherein the first communication device uses the processing result of the second subtask as input data for the first subtask, processes the first subtask, and obtains the processing result of the first task.
[0019] Based on the above technical solution, the first communication device can flexibly select the target transmission method to send the input data and target deployment method of the first task, thereby improving the information transmission effect.
[0020] In conjunction with the first aspect, in some implementations of the first aspect, the target deployment method includes deploying all sub-tasks of the first task on the second communication device, and the method further includes sending the input data of the first task and the target deployment method to the second communication device.
[0021] Based on the above technical solution, all sub-tasks of the first task are deployed in the second communication device. The first communication device needs to send all the input data of the first task to the second communication device, which will then process the first task, thereby realizing the processing of the first task.
[0022] In conjunction with the first aspect, in some implementations of the first aspect, the target deployment method includes deploying all sub-tasks of the first task on the second communication device. The method further includes: determining the transmission method corresponding to the target deployment method as the target transmission method according to the correspondence between the target deployment method and the transmission method; and sending the input data of the first task and the target deployment method based on the target transmission method.
[0023] Based on the above technical solution, the first communication device can flexibly select the target deployment method to send all the input data of the first task to the second communication device, thereby improving the information transmission effect.
[0024] In conjunction with the first aspect, in some implementations of the first aspect, the method further includes: compressing the intermediate input data to obtain compressed input data for the first task; and sending the compressed input data for the first task and the target deployment method based on the target transmission method.
[0025] Based on the above technical solution, the first communication device can reduce the amount of data sent and reduce transmission delay by compressing the intermediate input data before sending it to the second communication device.
[0026] Optionally, the intermediate input data includes the input data of the first task. Optionally, the intermediate input data includes the processing result of the first subtask.
[0027] Based on the above technical solution, the first communication device compresses the intermediate input data before sending it to the second communication device, which can reduce the amount of data sent and reduce transmission delay.
[0028] In conjunction with the first aspect, in some implementations of the first aspect, the method further includes: compressing the input data of the first task based on the first compression algorithm to obtain compressed input data of the first task; and sending the compressed input data of the first task, the identifier of the first compression algorithm, and the target deployment method based on the target transmission method.
[0029] Based on the above technical solution, the first communication device can flexibly select compression algorithms to compress the input data of the first task, thereby improving the flexibility of compression processing.
[0030] In conjunction with the first aspect, in some implementations of the first aspect, the method further includes: determining a second predicted processing time for at least one candidate deployment method based on the amount of input data and at least one candidate deployment method, wherein the second predicted processing time is the predicted processing time for a subtask of the first task processed by the first communication device; and sending the second predicted processing time for at least one candidate deployment method.
[0031] Based on the above technical solution, the first communication device determines the target deployment mode based on the first prediction processing time of at least one candidate deployment mode and the second prediction processing time of at least one candidate deployment mode, which can improve the accuracy of the target deployment mode.
[0032] In conjunction with the first aspect, in some implementations of the first aspect, at least one candidate deployment method includes a second candidate deployment method, the second candidate deployment method including deploying a third subtask of the first task on the first communication device, the method further includes: determining a second prediction processing duration for at least one candidate deployment method based on the amount of input data, the complexity of the third subtask of at least one candidate deployment method, and the computing resource information of the first communication device; the computing resource information includes at least one of the following: the number of image processors (GPUs), the number of floating-point operations per second (FLOPS) performed by the GPUs, and the GPU utilization rate; and sending the second prediction processing duration of the first deployment method.
[0033] Based on the above technical solution, the first communication device can determine the second prediction processing time according to the computing resource information of the first communication device, which can improve the accuracy of the target deployment method.
[0034] In conjunction with the first aspect, in some implementations of the first aspect, the target deployment method is one of at least one candidate deployment method. This can improve the efficiency of determining the target deployment method.
[0035] Secondly, a communication method is provided, which can be applied to a third communication device, such as being executed by the third communication device, which can be a network device or a module (e.g., a circuit, chip, chip system or processor) in the network device, or a logical node, logical module or software that can realize all or part of the functions of the network device.
[0036] The method includes: obtaining a first predicted processing time for at least one candidate deployment mode, the first predicted processing time being a predicted processing time for a subtask of a first task executed by a second communication device; and sending a target deployment mode for the first task based on the first predicted processing time of the at least one candidate deployment mode, the target deployment mode being used to indicate that at least one subtask of the first task is deployed on at least one target communication device.
[0037] The beneficial effects of the method provided in the second aspect, which corresponds to the method on the third communication device side in the first aspect, can be referred to the first aspect.
[0038] In conjunction with the second aspect, in some implementations of the second aspect, at least one target communication device includes a first communication device and / or a second communication device.
[0039] In conjunction with the second aspect, in some implementations of the first aspect, the target deployment method includes any one of the following: deploying the first subtask of the first task on the first communication device, and deploying the second subtask of the first task on the second communication device; deploying all subtasks of the first task on the first communication device; or deploying all subtasks of the first task on the second communication device.
[0040] In conjunction with the second aspect, in some implementations of the second aspect, the method further includes: receiving and sending the processing result of the first subtask and the target deployment method, wherein the processing result of the first subtask is used as the input data of the second subtask.
[0041] Optionally, receiving and sending the processing result and target deployment method of the first sub-task includes: receiving the processing result and target deployment method of the first sub-task from the first communication device, and sending the processing result and target deployment method of the first sub-task to the second communication device through the fourth communication device.
[0042] Optionally, receiving and sending the processing result and target deployment method of the first sub-task includes: receiving the processing result and target deployment method of the first sub-task from the fifth communication device, and directly sending the processing result and target deployment method of the first sub-task to the second communication device.
[0043] In conjunction with the second aspect, in some implementations of the second aspect, the method further includes: receiving and sending the input data of the first task and the target deployment method.
[0044] In conjunction with the second aspect, in some implementations of the second aspect, the method further includes: receiving and sending compressed input data of the first task and the target deployment method, wherein the compressed input data of the first task is the compressed input data of the first task.
[0045] In conjunction with the second aspect, in some implementations of the second aspect, the method further includes: receiving and sending compressed input data of the first task, an identifier of the first compression algorithm, and a target deployment method, wherein the compressed input data is the input data of the first task after compression processing based on the first compression algorithm.
[0046] In conjunction with the second aspect, in some implementations of the second aspect, the method further includes: receiving and sending the amount of input data for the first task, the amount of input data being used to determine the first prediction processing duration of at least one candidate deployment mode; and receiving the first prediction processing duration of at least one candidate deployment mode.
[0047] Based on the above technical solution, after the third communication device receives the amount of input data for the first task, it sends it out. Other communication devices determine the first prediction duration based on the amount of input data for the first task and then return the first prediction processing duration, which can reduce the resource requirements for the third communication device to determine the first prediction duration.
[0048] In conjunction with the second aspect, in some implementations of the second aspect, the method further includes: receiving the amount of input data for the first task; and determining a first prediction processing duration for at least one candidate deployment method based on the amount of input data.
[0049] Based on the above technical solution, the third communication device can directly determine the first prediction processing time based on the amount of input data, which can reduce the transmission delay of the third communication device in transmitting the amount of input data and improve the efficiency of obtaining the first prediction processing time.
[0050] In conjunction with the second aspect, in some implementations of the second aspect, the method further includes: receiving a first prediction processing duration for at least one candidate deployment mode.
[0051] Based on the above technical solution, the third communication device can obtain the first prediction processing time of at least one candidate deployment mode from other communication devices, thereby reducing the resource requirements for the third communication device to determine the first prediction processing time of at least one candidate deployment mode.
[0052] In conjunction with the second aspect, in some implementations of the second aspect, the method further includes: determining the target deployment method based on a first prediction processing time of at least one candidate deployment method; and sending the target deployment method.
[0053] In conjunction with the second aspect, in some implementations of the second aspect, the method further includes: determining a target deployment mode based on a first predicted processing time of at least one candidate deployment mode and a second predicted processing time of at least one candidate deployment mode, wherein the second predicted processing time is the predicted processing time of a subtask of the first task performed by the first communication device.
[0054] Based on the above technical solution, the third communication device provides a method for determining the target deployment method based on a first prediction processing time of at least one candidate deployment method and a second prediction processing time of at least one candidate deployment method, which can improve the efficiency and accuracy of the target deployment method.
[0055] Optionally, the third communication device may determine the total predicted processing time of at least one candidate deployment mode based on the first predicted processing time of at least one candidate deployment mode and the second predicted processing time of at least one candidate deployment mode, wherein the total predicted processing time is the predicted processing time of the first task being processed; and determine the one with the shortest total predicted processing time among the at least one deployment mode as the target deployment mode.
[0056] Based on the above technical solution, the third communication device first determines the predicted total processing time of at least one candidate deployment method, and then determines the target deployment method based on the predicted total processing time, which can improve the accuracy of the target deployment method.
[0057] In conjunction with the second aspect, in some implementations of the second aspect, the method further includes: determining the target deployment mode based on the first prediction processing time of at least one candidate deployment mode, the second prediction processing time of at least one candidate deployment mode, the transmission rate of the input data of the first task between the first communication device and the second communication device, and the data volume of the input data of the first task.
[0058] Optionally, the third communication device may determine the total predicted processing time of at least one deployment mode based on the first predicted processing time of at least one candidate deployment mode, the second predicted processing time of at least one candidate deployment mode, the transmission rate of the input data of the first task between the first communication device and the second communication device, and the amount of data of the input data of the first task; and then determine the target deployment mode based on the total predicted processing time of at least one deployment mode.
[0059] Based on the above technical solution, since the transmission rate between the first communication device and the second communication device is taken into account, the time delay in the input transmission process is also taken into account, which can improve the accuracy of determining the predicted total processing time.
[0060] Optionally, the first communication device is implemented as a terminal device, the third communication device is implemented as a base station, the transmission rate between the first communication device and the second communication device includes the transmission rate between the first communication device and the third communication device, and the transmission rate between the first communication device and the third communication device includes the uplink transmission rate; the method further includes: the third communication device determining the target deployment mode based on the first predicted processing time of at least one candidate deployment mode, the second predicted processing time of at least one candidate deployment mode, the uplink transmission rate, and the amount of data of the input data of the first task.
[0061] In conjunction with the second aspect, in some implementations of the second aspect, the method further includes: receiving a second prediction processing duration for at least one candidate deployment mode.
[0062] In conjunction with the second aspect, in some implementations of the second aspect, at least one candidate deployment method includes a first candidate deployment method, which includes deploying the fourth subtask of the first task on the second communication device. The method further includes: determining a first prediction processing time for at least one candidate deployment method based on the amount of input data of the first task, the complexity of the fourth subtask, and the computing resource information of the second communication device; the computing resource information includes at least one: the number of image processors (GPUs), the number of floating-point operations per second (FLOPS) performed by the GPUs, and the utilization rate of the GPUs.
[0063] Based on the above technical solution, since the computational resource information of the second communication device and the task complexity of the sub-tasks of the first task deployed by the second communication device are taken into account, the accuracy of the first prediction processing time can be improved.
[0064] Thirdly, a communication method is provided, which can be applied to a fourth communication device, such as being executed by the fourth communication device, which can be a network device or a module (e.g., a circuit, chip, chip system, or processor) in a network device, or a logical node, logical module, or software that can implement all or part of the functions of the network device.
[0065] The method includes: receiving the amount of input data for a first task, the amount of input data for the first task being used to determine a first prediction processing duration, the first prediction processing duration being a prediction processing duration for a subtask of the first task executed by a second communication device; and sending the first prediction processing duration of at least one candidate deployment mode based on the amount of input data for the first task, the first prediction processing duration being a prediction processing duration for a subtask of the first task executed by the second communication device.
[0066] The beneficial effects of the method provided in the third aspect, which corresponds to the method on the fourth communication device side in the second aspect, can be referred to the third aspect.
[0067] In conjunction with the third aspect, in some implementations of the third aspect, the method further includes: determining a first prediction processing duration for at least one candidate deployment method based on the amount of data in the input data of the first task; and sending the first prediction processing duration for at least one candidate deployment method.
[0068] In conjunction with the third aspect, in some implementations of the third aspect, the at least one candidate deployment method includes deploying the fourth subtask of the first task on the second communication device. The method further includes: determining the first prediction processing time of the at least one candidate deployment method based on the amount of input data of the first task, the complexity of the fourth subtask of the at least one candidate deployment method, and the computing resource information of the second communication device; the computing resource information includes at least one: the number of image processors (GPUs), the number of floating-point operations per second (FLOPS) performed by the GPUs, and the utilization rate of the GPUs.
[0069] Fourthly, a communication method is provided, which can be applied to a second communication device, such as being executed by the second communication device. The second communication device can be a network device or a cloud platform, or a module (e.g., a circuit, chip, chip system, or processor) in the network device or cloud platform. It can also be a logical node, logical module, or software that can realize all or part of the functions of the network device, or a logical node, logical module, or software that can realize all or part of the functions of the cloud platform.
[0070] The method includes: receiving a target deployment mode for a first task, an identifier of a first compression algorithm, and compressed input data for the first task, wherein the first compression algorithm corresponds to the compressed input data, and the target deployment mode indicates that all subtasks of the first task should be deployed on a second communication device; decompressing the compressed input data based on the first compression algorithm to obtain input data for the first task; and sending the processing result of the first task based on the input data and the target deployment mode.
[0071] The beneficial effects of the method on the second communication device side corresponding to the method in the fourth aspect can be referred to the first aspect.
[0072] In conjunction with the fourth aspect, in some implementations of the fourth aspect, the target deployment method is used to indicate that at least one subtask of the first task is deployed on at least one target communication device, the at least one target communication device including the first communication device and / or the second communication device.
[0073] In conjunction with the fourth aspect, in some implementations of the fourth aspect, the target deployment method includes any one of the following: deploying the first subtask of the first task on the first communication device, and deploying the second subtask of the first task on the second communication device; or, deploying all subtasks of the first task on the second communication device.
[0074] Fifthly, a communication device is provided, which can be the first communication device described in the first aspect. The communication device includes: an acquisition module for acquiring the amount of input data of a first task; a transmission module for transmitting the amount of input data of the first task, wherein the amount of input data is used to determine a first prediction processing duration, the first prediction processing duration being a prediction processing duration for a second communication device to execute a subtask of the first task; and a receiving module for receiving a target deployment mode of the first task, wherein the target deployment mode is used to instruct at least one subtask of the first task to be deployed on at least one target communication device.
[0075] In a sixth aspect, a communication device is provided, which can be the third communication device described in the second aspect. The communication device includes: a receiving module, configured to acquire a first predicted processing time of at least one candidate deployment mode, wherein the first predicted processing time is a predicted processing time of a subtask of a first task executed by a second communication device; and a sending module, configured to send a target deployment mode of the first task according to the first predicted processing time of the at least one candidate deployment mode, wherein the target deployment mode is used to indicate that at least one subtask of the first task is deployed on at least one target communication device.
[0076] A seventh aspect provides a communication device, which can be the fourth communication device described in the third aspect. The communication device includes: a receiving module for receiving a data amount of input data for a first task, the data amount of which is used to determine a first prediction processing duration, the first prediction processing duration being a prediction processing duration for a subtask of the first task executed by a second communication device; and a sending module for sending, based on the data amount, a first prediction processing duration for at least one candidate deployment mode, the first prediction processing duration being a prediction processing duration for a subtask of the first task executed by the second communication device.
[0077] Eighthly, a communication device is provided, which can be the second communication device described in the fourth aspect. The communication device includes: a receiving module, configured to receive a target deployment mode of a first task, an identifier of a first compression algorithm, and compressed input data of the first task, wherein the first compression algorithm corresponds to the compressed input data, and the target deployment mode indicates that all subtasks of the first task are deployed on the second communication device; a decompression module, configured to decompress the compressed input data using the first compression algorithm to obtain input data of the first task; and a sending module, configured to send the processing result of the first task based on the input data of the first task and the target deployment mode.
[0078] A ninth aspect provides a communication device comprising: a processor and a memory, the memory for storing instructions, and the processor for implementing methods as described in the first to fourth aspects and any possible implementation thereof. Optionally, the communication device further includes an interface circuit for receiving signals from other communication devices and transmitting them to the processor, or for sending signals from the processor to other communication devices.
[0079] In a tenth aspect, a communication system is provided, including a third communication device for performing the method as described in the second aspect and a second communication device for performing the method as described in the third aspect.
[0080] In conjunction with the tenth aspect, in some implementations of the tenth aspect, the communication system further includes a first communication device for performing the method as described in the first aspect.
[0081] Eleventhly, a computer-readable storage medium is provided, the computer-readable medium storing a computer program; when the computer program is run on a computer, the methods in the first to fourth aspects and any possible implementations of the first to fourth aspects are executed.
[0082] In a twelfth aspect, a computer program product is provided, comprising a computer program that, when executed, causes the communication method described in the first to fourth aspects and any possible implementation thereof to be implemented.
[0083] The solutions provided in aspects five through twelfth above are used to implement or cooperate with the implementation of any one of the methods provided in aspects one through four above, and therefore can achieve the same or corresponding beneficial effects as any one of aspects one through four, which will not be elaborated here. Attached Figure Description
[0084] Figure 1 A schematic diagram of the communication architecture used in the embodiments of this application;
[0085] Figure 2 A schematic diagram illustrating a communication process provided in an embodiment of this application;
[0086] Figure 3 This is a schematic diagram of a communication method provided in an embodiment of this application;
[0087] Figure 4 This is a schematic diagram of another communication method provided in an embodiment of this application;
[0088] Figure 5 This is a schematic diagram of another communication method provided in an embodiment of this application;
[0089] Figure 6 This is a schematic diagram of another communication method provided in an embodiment of this application;
[0090] Figure 7 This is a schematic diagram of another communication method provided in an embodiment of this application;
[0091] Figure 8 This is a schematic diagram of another communication method provided in an embodiment of this application;
[0092] Figure 9 This is a schematic diagram of another communication method provided in an embodiment of this application;
[0093] Figure 10 This is a schematic diagram of another communication method provided in an embodiment of this application;
[0094] Figure 11 This is a schematic diagram of another communication method provided in an embodiment of this application;
[0095] Figure 12 This is a schematic diagram of another communication method provided in an embodiment of this application;
[0096] Figure 13 This is a schematic diagram of another communication method provided in an embodiment of this application;
[0097] Figure 14 This is a schematic diagram of another communication method provided in an embodiment of this application;
[0098] Figure 15 This is a schematic diagram of a communication device provided in an embodiment of this application;
[0099] Figure 16 This is a schematic diagram of a communication device provided in an embodiment of this application;
[0100] Figure 17 This is a schematic diagram of a communication device provided in an embodiment of this application;
[0101] Figure 18 This is a schematic diagram of a communication device provided in an embodiment of this application;
[0102] Figure 19 This is a schematic diagram of another communication device provided in an embodiment of this application. Detailed Implementation
[0103] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.
[0104] The terms "first," "second," and similar terms used in this article do not indicate any order, quantity, or importance, but are merely used to distinguish different components. Similarly, "one" or similar terms do not indicate a quantity limitation, but rather indicate the existence of at least one.
[0105] In the embodiments of this application, the terms "exemplary" or "for example" are used to indicate examples, illustrations, or descriptions. Any embodiment or design described as "exemplary" or "for example" in the embodiments of this application should not be construed as being more preferred or advantageous than other embodiments or design solutions. Specifically, the use of terms such as "exemplary" or "for example" is intended to present the relevant concepts in a specific manner. In the description of the embodiments of this application, unless otherwise stated, "multiple" means two or more.
[0106] The embodiments of this application can be applied to various communication systems, such as wireless local area network (WLAN), narrowband Internet of Things (NB-IoT), global system for mobile communications (GSM), enhanced data rate for GSM evolution (EDGE), wideband code division multiple access (WCDMA), code division multiple access 2000 (CDMA2000), time division-synchronization code division multiple access (TD-SCDMA), long term evolution (LTE), universal mobile telecommunication system (UMTS), worldwide interoperability for microwave access (WiMAX), satellite communication systems, 5th generation (5G) communication systems, and future communication network systems.
[0107] The terminal device involved in the embodiments of this application can be a device with wireless transceiver capabilities, specifically referring to a subscriber unit, user equipment (UE), access terminal, cellular phone, user station, mobile station (MS), customer-premises equipment (CPE), remote station, remote terminal, mobile device, user terminal, wireless communication device, user agent, or user device. The terminal device can also be a satellite phone, cellular phone, smartphone, wireless data card, personal digital assistant (PDA) computer, tablet computer, wireless modem, laptop computer, machine-type communication (MTC) device, and wireless terminal in self-driving vehicles, etc. Terminal devices can also be cordless phones, session initiation protocol (SIP) phones, wireless local loop (WLL) stations, personal digital assistants (PDAs), handheld devices with wireless communication capabilities, in-vehicle devices, wearable devices, computing devices or other processing devices connected to a wireless modem, communication devices mounted on high-altitude aircraft, drones, robots, point-of-sale (POS) machines, terminals in device-to-device (D2D) communication, terminals in vehicle-to-everything (V2X) communication, virtual reality (VR) terminal devices, augmented reality (AR) terminal devices, wireless terminals in industrial control, wireless terminals in self-driving, wireless terminals in remote medical care, wireless terminals in smart grids, wireless terminals in transportation safety, wireless terminals in smart cities, and wireless terminals in smart homes. Wireless terminals in the home (or terminal equipment in future communication networks), etc. Among these, user equipment includes vehicle user equipment.With the rise of the Internet of Things (IoT) technology, an increasing number of devices that previously lacked communication capabilities—such as, but not limited to, home appliances, vehicles, tools, service equipment, and service facilities—are acquiring wireless communication functionality by being equipped with wireless communication units. This allows them to access wireless communication networks and be remotely controlled. Because these devices are equipped with wireless communication units and thus possess wireless communication capabilities, they also fall under the category of wireless communication devices. This application does not impose any limitations.
[0108] In this embodiment, the device for implementing the functions of the terminal device can be the terminal device itself; or it can be a device capable of supporting the terminal device in implementing the functions, such as a chip system. This device can be installed in the terminal device or used in conjunction with the terminal device. In this embodiment, the chip system can be composed of chips, or it can include chips and other discrete components.
[0109] The network devices involved in this application embodiment are devices in a wireless network, such as radio access network (RAN) nodes that connect terminal devices to the wireless network. Network devices can be nodes in the RAN, also known as base stations, or RAN nodes (or devices). Network devices can be base transceiver stations (BTS) in GSM or CDMA networks, Node Bs (NBs) in WCDMA, evolved Node Bs (eNBs or eNodeBs) in LTE, or next-generation node Bs (gNBs) in 5G networks; network devices can be base stations in future evolved public land mobile networks (PLMNs), or access devices in the 3rd generation partnership project (3GPP); network devices can also be radio controllers in cloud radio access network (CRAN) scenarios. Optionally, the network devices in this application embodiment may include various forms of base stations, such as: relay stations, access points, devices that implement base station functions in communication systems evolved after 5G, mobile switching centers, home evolved NodeBs (HNBs), baseband units (BBUs), devices that perform base station functions in device-to-device (D2D) communication, access points (APs), wireless relay nodes, wireless backhaul nodes, transmission points (TPs), or transmission and reception points (TRPs) in wireless fidelity (WIFI) systems, devices that perform base station functions in vehicle-to-everything (V2X) and machine-to-machine (M2M) communication, and may also include centralized units (CUs) and distributed units (DUs) in CRAN systems, and network devices in non-terrestrial network (NTN) communication systems.The network device in this application embodiment can also be a gNB or transmission point in new radio (NR), one or a group (including multiple) of antenna panels of a base station in NR, or a network node constituting a gNB or transmission point. Alternatively, the network device can be an in-vehicle device, a wearable device, or a network device in a future communication network, or a network device in a future evolved PLMN network, or a network device deployed on a satellite. This application embodiment does not limit this. Furthermore, based on the size of the service coverage area provided, base stations can be divided into macro base stations for providing macro cells, micro base stations for providing pico cells, and femto base stations for providing femto cells. With the continuous evolution of wireless communication technology, future base stations may also adopt other names.
[0110] In this embodiment, the device for implementing the functions of the network device can be the network device itself; or it can be a device capable of supporting the network device in implementing the functions, such as a chip system. This device can be installed in the network device or used in conjunction with the network device.
[0111] To facilitate understanding of the methods provided in the embodiments of this application, the system architecture of the methods provided in the embodiments of this application will be described below. It is understood that the system architecture described in the embodiments of this application is for the purpose of more clearly illustrating the solutions of the embodiments of this application and does not constitute a limitation on the solutions provided in the embodiments of this application.
[0112] Figure 1 This is a schematic diagram of the architecture of the communication system 1000 used in an embodiment of this application. Figure 1 As shown, the communication system includes RAN 100 and core network 200. Optionally, the communication system 1000 may also include Internet 300. RAN 100 includes at least one RAN node (e.g., Figure 1 110a and 110b, collectively referred to as 110, may also include at least one terminal device (such as...). Figure 1 RAN 100, denoted as RAN 120a-120j, is collectively referred to as RAN 120. RAN 100 may also include other RAN nodes, such as wireless relay equipment and / or wireless backhaul equipment. Figure 1(Not shown in the image). Terminal device 120 is wirelessly connected to RAN node 110, and RAN node 110 is wirelessly or wired connected to core network 200. The core network equipment in core network 200 and RAN node 110 in RAN 100 can be independent physical devices, or they can be the same physical device integrating the logical functions of core network equipment and RAN nodes. Terminal devices and RAN nodes can be interconnected via wired or wireless means. Figure 1 This is just an illustration; the communication system may also include other network devices, such as wireless repeaters and wireless backhaul devices. Figure 1 It is not shown in the middle.
[0113] RAN 100 can be a 3GPP-related cellular system, such as a 4G, 5G mobile communication system, or a future-oriented evolution system. RAN 100 can also be an open access network (open RAN, O-RAN, or ORAN), CRAN, or a Wi-Fi system. RAN 100 can also be a communication system that integrates two or more of the above systems.
[0114] RAN node 110, sometimes also referred to as access network equipment, RAN entity, or access node, constitutes part of the communication system and is used to help terminals achieve wireless access. Multiple RAN nodes 110 in the communication system 1000 can be of the same type or different types. In some scenarios, the roles of RAN node 110 and terminal device 120 are relative, for example... Figure 1 Network element 120i can be a helicopter or a drone, and it can be configured as a mobile base station. For terminal device 120j accessing RAN 100 via network element 120i, network element 120i is a base station; however, for base station 110a, network element 120i is a terminal device. RAN node 110 and terminal device 120 are sometimes referred to as communication devices, for example... Figure 1 Network elements 110a and 110b can be understood as communication devices with base station functions, while network elements 120a-120j can be understood as communication devices with terminal functions.
[0115] Figure 1 The communication between each network device and each terminal device in the communication system shown can also be represented in another form. Figure 2This is a schematic diagram illustrating the structure for communication between a terminal device and a network device. The terminal device 10 includes a processor 101, a memory 102, and a transceiver 103. The transceiver 103 includes a transmitter 1031, a receiver 1032, and an antenna 1033. The network device 20 also includes a processor 201, a memory 202, and a transceiver 203. The transceiver 203 includes a transmitter 2031, a receiver 2032, and an antenna 2033. The receiver 1032 can be used to receive information through the antenna 1033, and the transmitter 1031 can be used to send information to the network device 20 through the antenna 1033. The transmitter 2031 can be used to send information to the terminal device 10 through the antenna 2033, and the receiver 2032 can be used to receive information sent by the terminal device 10 through the antenna 2033.
[0116] Figure 3 This is an example diagram of an O-RAN system, which may include... Figure 3 Other components besides those shown. For example... Figure 3 As shown, network devices are also called access network devices. Access network devices (such as eNBs, gNBs, or next-generation access network devices) communicate with the core network (CN) via backhaul links and with terminal devices via air interfaces.
[0117] Specifically, the baseband unit (BBU) in the access network equipment communicates with the core network via a backhaul link, and the radio unit (RU) in the access network equipment communicates with at least one terminal device via an air interface. The BBU communicates with at least one RU via a fronthaul link. The BBU and RU may or may not be co-located.
[0118] The BBU includes at least one control unit (CU) and at least one DU, which can communicate via at least one midhaul link.
[0119] There is an interface between the DU and RU. Depending on the functions of the DU and RU, and / or the different switching methods, the interface between the DU and RU can be a common public radio interface (CPRI) or an enhanced common public radio interface (eCPRI).
[0120] Figure 4 A flowchart of a communication method is shown, such as... Figure 4 As shown, the method includes: S110-S120.
[0121] S110, the first communication device sends the amount of input data of the first task to the third communication device. The amount of input data is used to determine the first prediction processing duration. The first prediction processing duration is the prediction processing duration of the sub-task of the first task executed by the second communication device.
[0122] In this embodiment, the first task is to process input data. Different processing results can be obtained based on different input data. The first task includes at least one sub-task, which can be deployed on at least one communication device. The at least one communication device includes a first communication device and / or a second communication device. Exemplarily, the first communication device can be a UE; the second communication device can be a network device or a cloud platform; the third communication device can be a network device, such as a gNB or an artificial intelligence control function (AICF) node. The AICF is a network function node (NF) that provides AI inference service control, responsible for monitoring the operating status of Far-edge Intelligent Nodes (FEINs), and can also be used for FEIN registration, discovery, and load balancing control. Optionally, the AICF and FEIN can be nodes in the RAN or independent network elements of the CN.
[0123] In one possible implementation, the first communication device is configured with an application program to receive processing instructions for a first task, which indicate the input data for the first task; the first communication device obtains the amount of input data for the first task based on the processing instructions for the first task.
[0124] In one possible implementation, the processing instruction for the first task also indicates the amount of input data for the first task, and the first communication device directly obtains the amount of data indicated by the processing instruction for the first task.
[0125] In one possible implementation, the first communication device acquires the input data of the first task indicated by the processing instruction of the first task, and determines the amount of data based on the input data of the first task.
[0126] In one possible implementation, the processing instruction of the first task indicates the processing object of the first task, the first communication device obtains the processing object of the first task and performs conversion processing to obtain the input data of the first task, and determines the data volume based on the input data of the first task.
[0127] For example, the first task is a model inference task, where the processing object is the inference object. The inference object is converted into input data, which is then input into the model to obtain the inference result, i.e., the processing result of the first task. As another example, the first task is a business data analysis task, where the input data is the business data to be analyzed, and the processing result of the first task is the analysis result of the business data.
[0128] It should be noted that the type of input obtained from the conversion varies depending on the type of object being processed in the first task. If the object being processed is an image, the input data is image data; image data includes resolution information and color channel information, used to determine the amount of image data. For example, an RGB color image with a resolution of 1920×1080, where each pixel consists of 3 bytes (representing the red, green, and blue color channels respectively), can be represented as 1920×1080×3. If the object being processed is audio, the input data is audio data; audio data includes sampling rate information, sampling longitude information, number of channels information, and duration information, used to determine the amount of audio data. For example, an audio clip with a sampling rate of 44.1kHz, a sampling precision of 16 bits, and stereo, can be represented as 44100×16×2 data per second. If the object being processed is video, the input data is video data; video data includes image information and frame rate, used to determine the amount of time-frequency data. For example, a 1080P video with a frame rate of 25 frames per second has a data size of 1080P × 25.
[0129] In this embodiment, the first communication device can directly send the amount of input data for the first task to the third communication device; alternatively, it can send the amount of input data for the first task to the fifth communication device, which then sends the amount of input data for the first task to the third communication device. This can be configured as needed, and this embodiment does not impose any limitations. The third communication device is different from the second communication device, and the fifth communication device is any communication device other than the first, second, and third communication devices.
[0130] In one possible implementation, the first communication device sends the amount of input data for the first task via a first request. In another possible implementation, the first request carries the amount of input data and an identifier for the first task. In yet another possible implementation, different requests correspond to different tasks, and the first request is the request corresponding to the first task, carrying the amount of input data.
[0131] In this embodiment, at least one subtask of the first task can be deployed on at least one communication device, which includes a first communication device and / or a second communication device. In one possible implementation, the subtask executed by the second communication device is all the subtasks of the first task, and the first prediction processing time is the prediction processing time of the second communication device executing all the subtasks. In another possible implementation, the subtask executed by the second communication device is a target subtask among the at least one subtask. The target subtask can be one or more of the most complex subtasks, or one or more of the least complex subtasks; this can be set according to actual needs, and this embodiment does not impose any limitations. It should be noted that different deployment methods of the at least one subtask on the target communication device result in different first prediction processing times. The amount of input data for the first task is used to determine the first prediction processing time for any deployment method.
[0132] In this embodiment, the first prediction processing time is used to determine the target deployment method of the first task. The target deployment method is used to indicate that at least one sub-task of the first task is deployed on at least one target communication device, and the at least one target communication device includes a first communication device and / or a second communication device. The target deployment method includes any one of the following: deploying the first sub-task of the first task on the first communication device and deploying the second sub-task of the first task on the second communication device; deploying all sub-tasks of the first task on the first communication device; or deploying all sub-tasks of the first task on the second communication device.
[0133] For example, the first task includes four subtasks, namely subtask 1 through subtask 4. The target deployment method can instruct that subtask 1 be deployed on the first communication device, subtask 2 on the second communication device, and subtasks 3 through 4 on other target communication devices. Alternatively, the target deployment method can instruct that subtask 1 be deployed on the first communication device, and subtasks 2 through 4 on the second communication device. Another possible deployment method is to instruct that all subtasks 1 through 4 be deployed on the first communication device. Finally, the target deployment method can instruct that all subtasks 1 through 4 be deployed on the second communication device.
[0134] If the second communication device executes multiple subtasks, the first prediction processing time is determined based on the execution method of the multiple subtasks and their respective prediction processing times. When the multiple subtasks are executed in parallel, the first prediction processing time is the longest among the predicted processing times of the multiple subtasks; when the multiple subtasks are executed serially, the first prediction processing time is the sum of the predicted processing times of the multiple subtasks; when the multiple subtasks are executed in a mixed manner of serial and parallel execution, the first prediction processing time is the sum of the parallel prediction time and the serial prediction time, where the parallel prediction processing time is the longest among the predicted processing times of the parallel subtasks, and the serial prediction processing time is the sum of the predicted processing times of the serial subtasks.
[0135] In one possible implementation, the first task includes at least one candidate deployment method, and the amount of input data for the first task is used to determine a first prediction processing duration for the at least one candidate deployment method. Each of the at least one candidate deployment method is used to indicate the deployment of at least one sub-task of the first task on a target communication device, the target communication device including a first communication device and / or a second communication device. The at least one candidate deployment method includes at least one of the following: a first deployment method includes deploying a third sub-task of the first task on the first communication device and a fourth sub-task of the first task on the second communication device; a second deployment method includes deploying all sub-tasks of the first task on the first communication device; a third deployment method includes deploying all sub-tasks of the first task on the second communication device. In the second deployment method, all sub-tasks of the first task are third sub-tasks, and in the third deployment method, all sub-tasks are fourth sub-tasks.
[0136] In one possible implementation, the first deployment method includes multiple candidate deployment methods. For example, the first task includes subtasks 1-4; the first candidate deployment method in the first deployment method includes: deploying subtask 1 on the first communication device, deploying subtask 2 on the second communication device, and deploying subtasks 3-4 on other target communication devices. The second candidate deployment method in the first deployment method includes: deploying subtasks 1-2 on the first communication device, and deploying subtasks 3-4 on the second communication device. The third candidate deployment method in the first deployment method includes: deploying subtasks 1-2 on the first communication device, and deploying subtasks 3-4 on the second communication device.
[0137] In one possible implementation, the first communication device can acquire at least one subtask of the first task and determine at least one candidate deployment method for the first task based on the at least one subtask. In another possible implementation, the first communication device receives and saves at least one candidate deployment method for the first task.
[0138] S120, the third communication device acquires the first prediction processing time for at least one candidate deployment mode.
[0139] In this embodiment, after receiving the amount of input data for the first task, the third communication device can send the amount of input data for the first task to the fourth communication device. The fourth communication device determines the first prediction processing duration based on the amount of input data for the first task and then feeds back the first prediction processing duration to the third communication device. For example, the third communication device can be a gNB, and the fourth communication device can be a Far-edge Intelligent Node (FEIN). The FEIN can be a node within the RAN or an independent network element of the CN. Alternatively, the third communication device can directly determine the first prediction processing duration based on the amount of input data for the first task. For example, the third communication device can be an AICF or a gNB.
[0140] Optionally, the implementation of obtaining the first prediction processing time in S120 includes: S1201-S1203, such as... Figure 5 As shown.
[0141] S1201, the third communication device sends the amount of input data for the first task to the fourth communication transposition.
[0142] In this embodiment, the third communication device can send the amount of input data for the first task via a first request. In one possible implementation, the first request carries the amount of input data and an identifier of the first task. In another possible implementation, different requests correspond to different tasks, and the first request is the request corresponding to the first task, carrying the amount of input data.
[0143] S1202, the fourth communication device determines the first prediction processing time of at least one candidate deployment mode based on the amount of data in the input data of the first task.
[0144] In this embodiment, there is a positive correlation between the amount of input data for the first task and the first prediction processing time of the first task, and this positive correlation is characterized by a positive correlation coefficient. In one possible implementation, the positive correlation coefficient is a preset constant, which can be set according to actual needs, such as different preset constants for different tasks. In another possible implementation, the positive correlation coefficient is positively correlated with the complexity of the sub-tasks deployed on the second communication device; the higher the complexity of the sub-tasks deployed on the second communication device, the larger the positive correlation coefficient. In yet another possible implementation, the positive correlation coefficient is related to the computing resource information of the second communication device; the stronger the computing power of the communication device as represented by the computing resource information, the larger the positive correlation coefficient. The computing resource information includes, but is not limited to, the number of image processors (GPUs), the number of floating-point operations per second (FLOPS) performed by the GPUs, and the GPU utilization rate.
[0145] In this embodiment, task complexity refers to the logical complexity of the task flow, which is represented by the number of branches, conditional judgments, and loops that recur in the task. Higher logical complexity results in higher task complexity, greater computational load, and longer processing time. Taking the first task as a model inference task as an example, the model includes multiple layers, each containing at least one instance parameter. The output of each layer serves as the input to the next layer; therefore, the more layers the model has, the greater the task complexity. The number of instance parameters differs depending on the type of layer and can be determined based on the specific situation. For example, the number of instance parameters in a fully connected layer is determined by the number of input and output neurons; the number of instance parameters in a convolutional layer is determined by the kernel size, the number of input channels, and the number of output channels. For any given layer, a larger number of instance parameters results in greater computational load and higher task complexity.
[0146] In one possible implementation, the second communication device determines the complexity of a subtask deployed on the second communication device and sends the complexity to the fourth communication device. In another possible implementation, the second and / or fourth communication devices store the complexity of subtasks on the second communication device in multiple deployment modes, and the fourth communication device obtains the complexity of a subtask on the second communication device in any of the multiple deployment modes when it needs to calculate the complexity of a subtask on the second communication device in any of the multiple deployment modes.
[0147] In this embodiment, the computing resource information of the second communication device may change, and the fourth communication device can obtain the computing resource information of the second communication device from the second communication device. In one possible implementation, the fourth communication device requests computing resource information from the second communication device at preset time intervals; alternatively, the second communication device sends its own computing resource information to the fourth communication device at preset time intervals. The preset time interval is set according to actual needs and is not limited in this embodiment. In another possible implementation, the fourth communication device and the second communication device share the second communication device's computing resource information in real time.
[0148] In this embodiment of the application, the fourth communication device determines the first prediction processing time based on the amount of data of the input data of the first task and at least one of the following: the complexity of the sub-task deployed on the second communication device and the computing resource information of the second communication device.
[0149] In one possible implementation, the fourth communication device determines a first prediction processing duration for at least one candidate deployment mode based on the amount of data in the input data of the first task.
[0150] In one possible implementation, at least one candidate deployment method includes a first candidate deployment method, which includes deploying a fourth subtask on a second communication device. That is, the first candidate deployment method includes a first deployment method and a third deployment method. The second communication device has a subtask of the first task deployed on it. At this time, the fourth communication device determines the first prediction processing time of the at least one candidate deployment method based on the amount of input data of the first task, the complexity of the fourth subtask of the at least one candidate deployment method, and the computing resource information of the second communication device.
[0151] The fourth communication device determines the first prediction processing time of the candidate deployment method based on the amount of input data of the first task and the complexity of the fourth sub-task of any candidate deployment method, thereby obtaining the first prediction processing time of at least one candidate deployment method.
[0152] In one possible implementation, the fourth communication device determines the first prediction processing time of the candidate deployment method based on the amount of input data of the first task, the complexity of the fourth subtask of any candidate deployment method, and the computing resource information of the second communication device, thereby obtaining the first prediction processing time of at least one candidate deployment method.
[0153] In one possible implementation, the fourth subtask includes multiple subtasks, and the first prediction processing time is the prediction processing time of the second communication device executing the multiple fourth subtasks. The fourth communication device determines the first prediction processing time of the fourth subtask of the first candidate deployment method based on the data volume of the input data of the first task, the complexity of any fourth subtask of the first candidate deployment method among at least one candidate deployment method, and the computing resource information of the second communication device, thus obtaining multiple first prediction processing times for the first candidate deployment method; and determines the first prediction processing time of the first candidate deployment method based on the multiple first prediction processing times. In one possible implementation, the multiple fourth subtasks are parallel subtasks, and the fourth communication device uses the longest of the multiple first prediction processing times of the first candidate deployment method as the first prediction processing time of the first candidate deployment method. In one possible implementation, the multiple fourth subtasks are serial subtasks, and the fourth communication device uses the sum of the multiple first prediction processing times of the first candidate deployment method as the first prediction processing time of the first candidate deployment method.
[0154] For example, the first task includes three subtasks, namely subtask 1 to subtask 3. Deployment mode 1 among multiple candidate deployment modes indicates that subtask 1 is deployed on the first communication device, and subtasks 2 to 3 are deployed on the second communication device, and subtask 1 and subtask 2 are parallel subtasks. That is, subtask 2 and subtask 3 are the fourth subtasks. The fourth communication device determines the first prediction processing time of subtask 2 of the first candidate deployment mode based on the amount of input data of the first task, the complexity of subtask 2, and the computing resource information of the second communication device. It also determines the first prediction processing time of subtask 3 of the first candidate deployment mode based on the amount of input data of the first task, the complexity of subtask 3, and the computing resource information of the second communication device. The longer of the first prediction processing time of subtask 2 and the first prediction processing time of subtask 3 is taken as the first prediction processing time under deployment mode 1.
[0155] In one possible implementation, the fourth communication device determines the first prediction processing duration T1 of the fourth subtask according to formula (1).
[0156]
[0157] Where M is the amount of input data for the first task, C1 is the task complexity of the fourth subtask, N1 is the number of GPUs in the second communication device, FLOPS1 and FLOPS are the FLOPS of the GPUs in the second communication device, and U1 is the utilization rate of the GPUs in the second communication device.
[0158] S1203, the fourth communication device sends the first prediction processing duration to the third communication device.
[0159] After determining the first prediction processing time, the fourth communication device feeds back the first prediction processing time to the third communication device.
[0160] exist Figure 4 On this basis, Figure 6 A flowchart illustrating a communication method is shown. For example... Figure 6 As shown, the implementation of the amount of data in S110 where the first communication device sends the input data of the first task to the third communication device includes: S1101-S1102. Correspondingly, the implementation of S120 may include S1204.
[0161] S1101, the amount of input data for the first task sent by the first communication device to the fifth communication device.
[0162] S1102, the amount of input data for the first task sent by the fifth communication device to the third communication device.
[0163] In this embodiment, the first communication device can send the amount of input data for the first task to the third communication device via the fifth communication device. Exemplarily, the first communication device is a UE, the fifth communication device is a gNB, and the third communication device can be another communication device connected to the gNB. Optionally, the third communication device can be an AICF (AI Component Communication Controller).
[0164] The method of transmitting the input data of the first task in S1101 and S1102 is the same as the method of transmitting the input data of the first task from the third communication device to the fourth communication transposition in S1201, and will not be repeated here.
[0165] S1204, the third communication device determines the first prediction processing duration based on the amount of data in the input data of the first task.
[0166] The implementation of S1204 can refer to the implementation of the fourth communication device determining the first prediction processing duration based on the amount of input data of the first task in S1302, which will not be repeated here.
[0167] Optionally, the first communication device may also send the amount of input data for the first task to the seventh communication device; the seventh communication device determines the first prediction processing time of at least one candidate deployment method based on the amount of input data for the first task, and then sends the first prediction processing time of at least one candidate deployment method to the third communication device. The method by which the seventh communication device determines the first prediction processing time of at least one candidate deployment method based on the amount of input data for the first task can be similar to the method by which the fourth communication device determines at least one candidate deployment method based on the amount of input data for the first task, and will not be elaborated further here.
[0168] S130, the third communication device sends the target deployment mode of the first task to the first communication device based on the first predicted processing time of at least one candidate deployment mode.
[0169] In this embodiment, after obtaining the first predicted processing time of at least one candidate deployment method, the third communication device can determine the target deployment method of the first task based on the at least one candidate deployment method, and then send the target deployment method of the first task to the first communication device; or, the third communication device can send the first predicted processing time of at least one candidate deployment method to the fourth or fifth communication device, and the fourth or fifth communication device can determine the target deployment method of the first task based on the at least one candidate deployment method, send the target deployment method of the first task to the third communication device, and then the third communication device can send the target deployment method of the first task to the fifth communication device.
[0170] Optionally, the implementation of S130, such as Figure 5 As shown, it includes: S1301-S1302.
[0171] S1301, the third communication device determines the target deployment mode based on the first prediction processing time of at least one candidate deployment mode.
[0172] In one possible implementation, at least one candidate deployment method includes an initial candidate deployment method. In another possible implementation, the third communication device first determines a first predicted processing time for the initial deployment method. If the first predicted processing time exceeds a time threshold, the initial deployment method is adjusted to obtain an updated deployment method. The first predicted processing time of the updated deployment method is shortened. The adjustment method includes, but is not limited to, reducing the number of subtasks deployed on the second communication device. If the first predicted processing time of the updated deployment method is less than or equal to the time threshold, the updated deployment method is adopted as the target deployment method. If the first predicted processing time of the updated deployment method is less than or greater than the time threshold, the deployment method is adjusted until the first predicted processing time of the updated deployment method is less than or equal to the time threshold. The time threshold can be set according to actual needs, and this embodiment does not impose any limitations. In one possible implementation, the third communication device determines a first predicted processing time for the initial deployment mode and obtains a second predicted processing time for the initial deployment mode. Based on the first and second predicted processing times, it determines the total predicted processing time for the initial deployment mode to execute the first task. The second predicted processing time is the predicted processing time for a subtask of the first task executed by the first communication device. If the total predicted processing time of the initial deployment mode exceeds a total time threshold, the third communication device updates the initial deployment mode according to a preset first update method to obtain an updated deployment mode. The preset first update method is an update method that reduces the total predicted processing time. This process continues until the total predicted processing time of the deployment modes updated for a first preset number of consecutive times is less than the total time threshold. The last updated deployment mode is then used as the target deployment mode. Alternatively, the deployment mode with the shortest total predicted processing time is selected from the deployment modes updated for a first preset number of consecutive times as the target deployment mode. The initial deployment mode, the total time threshold, and the first preset number of times can all be set according to actual needs, and this embodiment does not impose any limitations.
[0173] For example, if the predicted total processing time of the initial deployment method is 1.23s and the total processing time threshold is 1, then the deployment method needs to be updated. If the predicted total processing time of the updated deployment method is 0.97s and the first preset number of updates is 1, then the updated deployment method can be used as the target deployment method. If the predicted total processing time of the updated deployment method is 0.97s and the first preset number of updates is 3, then a second update is performed. If the predicted total processing time of the second updated deployment method is 0.98s, then a third update is performed. If the predicted total processing time of the third updated deployment method is 0.96s, then the third updated deployment method can be used as the target deployment method.
[0174] In one possible implementation, the subtasks deployed on the first communication device and the subtasks deployed on the second communication device are parallel subtasks, and the third communication device can use the longest of the first prediction processing time and the second prediction processing time as the total prediction processing time.
[0175] In one possible implementation, the subtasks deployed on the first communication device and the subtasks deployed on the second communication device are serial subtasks, and the third communication device can use the sum of the first prediction processing time and the second prediction processing time as the total prediction processing time.
[0176] It should be noted that at least one candidate deployment method includes the second deployment method, that is, deploying all subtasks of the first task on the first communication device; the second predicted processing time of the second deployment method is the predicted total processing time of the second deployment method. At least one candidate deployment method includes the third deployment method, that is, deploying all subtasks of the first task on the second communication device; the first predicted processing time of the third deployment method is the predicted total processing time of the second deployment method.
[0177] In one possible implementation, the first prediction processing time includes the first prediction processing time of at least one candidate deployment mode, and the third communication device determines the deployment mode corresponding to the first prediction processing time within the first time range as the target deployment mode; the first time range can be set according to actual needs, and this application embodiment does not limit it.
[0178] Optionally, the implementation of the third communication device in S1301 determining the target deployment method based on the first prediction processing time, such as... Figure 7 or Figure 8 As shown, it includes:
[0179] S13011, the third communication device determines the target deployment mode based on the first prediction processing time of at least one candidate deployment mode and the second prediction processing time of at least one candidate deployment mode.
[0180] In one possible implementation, the third communication device determines the total predicted processing time for each candidate deployment mode to perform the first task based on the first and second predicted processing times of each candidate deployment mode, thereby obtaining the total predicted processing time of at least one candidate deployment mode; and determines the target deployment mode based on the total predicted processing time of at least one candidate deployment mode.
[0181] In one possible implementation, the third communication device determines a first target deployment method from at least one candidate deployment method, and determines a second target deployment method from the first target deployment method. The first target deployment method has a first prediction processing time less than a first target threshold, and the second target deployment method has a second prediction processing time less than a second target threshold. The first and second target thresholds are set according to actual needs, and this application embodiment does not impose any limitations. Then, the third communication device determines the target deployment method from the second target deployment methods. The third communication device can choose the second target deployment method with the shortest total prediction processing time as the target deployment method, or it can choose any one of the second target deployment methods as the target deployment method; this can be set as needed, and this application embodiment does not impose any limitations.
[0182] The method by which the third communication device obtains the second prediction processing time of at least one candidate deployment mode includes: obtaining the computing resource information of the first communication device from the first communication device, and determining the second prediction processing time of at least one candidate deployment mode based on the computing resource information of the first communication device, the amount of data of the input data of the first task, and the complexity of the third sub-task; or, obtaining the second prediction processing time of at least one candidate deployment mode determined by the first communication device from the first communication device.
[0183] Optionally, if S1301 is implemented through S13011, then in the case where at least one candidate deployment method includes a second candidate deployment method, and the second candidate deployment method includes deploying the third subtask on the second communication device, that is, the second candidate deployment method includes the first deployment method and the second deployment method, and the first communication device has a subtask of the first task deployed thereon, the implementation prior to S110 includes S109, such as... Figure 7 and Figure 8 As shown. S109, the first communication device determines the second prediction processing time of at least one candidate deployment mode based on the data volume of the input data of the first task, the first prediction processing time of the third sub-task of at least one candidate deployment mode, and the computing resource information of the first communication device.
[0184] The first communication device determines the second prediction processing time of the candidate deployment method based on the amount of input data of the first task and the complexity of the third subtask of any candidate deployment method, thereby obtaining the second prediction processing time of at least one candidate deployment method.
[0185] In one possible implementation, the first communication device determines the second prediction processing time of the candidate deployment method based on the amount of input data of the first task, the complexity of the third subtask of any candidate deployment method, and the computing resource information of the first communication device, thereby obtaining the second prediction processing time of at least one candidate deployment method.
[0186] In one possible implementation, the third subtask includes multiple subtasks, and the second prediction processing time is the prediction processing time of the first communication device executing the multiple third subtasks. The first communication device determines the first prediction processing time of the fourth subtask of the first candidate deployment method based on the data volume of the input data of the first task, the complexity of any third subtask of the first candidate deployment method in at least one candidate deployment method, and the computing resource information of the second communication device, thus obtaining multiple second prediction processing times of the first candidate deployment method; and determines the second prediction processing time of the first candidate deployment method based on the multiple second prediction processing times of the first candidate deployment method. In one possible implementation, the multiple third subtasks are parallel subtasks, and the first communication device uses the longest of the multiple second prediction processing times of the first candidate deployment method as the second prediction processing time of the first candidate deployment method. In one possible implementation, the multiple third subtasks are serial subtasks, and the first communication device uses the sum of the multiple second prediction processing times of the first candidate deployment method as the second prediction processing time of the first candidate deployment method.
[0187] In one possible implementation, the first communication device determines the second prediction processing duration T2 of the third subtask according to formula (2).
[0188]
[0189] Where C2 is the task complexity of the third subtask, N2 is the number of GPUs in the first communication device, FLOPS2 is the FLOPS of the GPUs in the first communication device, and U2 is the utilization rate of the GPUs in the first communication device.
[0190] Optional, Figure 5 In S110, the implementation of the amount of data sent from the first communication device to the third communication device is as follows: Figure 7 As shown, it includes:
[0191] S1103, the first communication device sends the amount of input data and the second prediction processing time of at least one candidate deployment mode to the third communication device.
[0192] After the first communication device determines the second prediction processing time of at least one candidate deployment mode, it sends the second prediction processing time of at least one candidate deployment mode and the amount of input data to the third communication device together. This can reduce the resource requirements of the first communication device for sending information and improve the information transmission efficiency.
[0193] Optional, Figure 6 S1101 is implemented through S11011, and S1102 is implemented through S11021, as follows: Figure 8 As shown, it includes:
[0194] S11011, the first communication device sends the amount of input data for the first task and the second prediction processing time for at least one candidate deployment mode to the fifth communication device.
[0195] S11021, the fifth communication device sends the amount of input data for the first task and the second prediction processing time for at least one candidate deployment mode to the third communication device.
[0196] In this embodiment of the application, the first communication device can send at least one candidate deployment method along with the amount of input data of the first task to the third communication device through the fifth communication device, which can reduce the resource requirements of the first communication device for sending information and improve the information transmission efficiency.
[0197] In one possible implementation, the third communication device determines the total predicted processing time based on a first predicted processing time for at least one candidate deployment mode, a second predicted processing time for at least one candidate deployment mode, the transmission rate of the input data of the first task between the first and second communication devices, and the data volume of the input data of the first task. The transmission rate between the first and second communication devices and the data volume of the input data of the first task are used to determine the transmission time between the first and second communication devices.
[0198] In one possible implementation, the third and fourth subtasks of any deployment method are parallel subtasks, and the total prediction processing time of the deployment method includes the longer of the first and second prediction processing times of the deployment method, plus the sum of the transmission time between the first and second communication devices.
[0199] In one possible implementation, the third and fourth subtasks of any deployment method are parallel subtasks, and the total predicted processing time of the deployment method includes: the transmission time between the first and second communication devices, and the sum of the first predicted processing time T1 and the second predicted processing time T2 of the deployment method.
[0200]
[0201] Where R is the transmission rate of the input data for the first task between the first communication device and the second communication device. The transmission duration between the first communication device and the second communication device.
[0202] In one possible implementation, the transmission duration between the first and second communication devices depends primarily on the wireless communication between them. For example, if the first and third communication devices communicate wirelessly, and the second and third communication devices communicate via wired connection, then the transmission duration between the first and second communication devices is determined by the transmission rate between them.
[0203] For example, the first communication device is a UE, the third communication device is a gNB, and the transmission rate between the first communication device and the third communication device is the uplink transmission rate.
[0204] In one possible implementation, at least one candidate deployment method includes a second method, in which all sub-tasks of the first task are deployed on the first communication device; in this case, the predicted total processing time does not take into account the transmission time between the first and second communication devices, as well as the first predicted processing time, and the predicted total processing time is entirely determined by the second predicted processing time.
[0205] In one possible implementation, at least one candidate deployment method includes a third deployment method, which is to deploy all sub-tasks of the first task on the second communication device; in this case, the predicted total processing time does not take into account the second predicted processing time, and the predicted total processing time is determined by the transmission time between the first communication device and the second communication device and the first predicted processing time.
[0206] S1302, the third communication device sends the target deployment method of the first task to the first communication device.
[0207] In this embodiment of the application, the third communication device can directly send the target deployment method of the first task to the first communication device, or it can send the target deployment method of the first task to the first communication device through the fifth communication device.
[0208] Optionally, if the amount of input data for the first task received by the third communication device comes from the fifth communication device, then the implementation of S1302 is as follows: Figure 6 and Figure 8 As shown, it may include: S13021-S13022.
[0209] S13021, The third communication device sends the target deployment method to the fifth communication device.
[0210] S13022, the fifth communication device sends the target deployment method to the first communication device.
[0211] In one possible implementation, the target deployment method includes deploying all subtasks of the first task on the first communication device. The implementation after S1302 includes: deploying all subtasks of the first task on the first communication device, processing all subtasks of the first task based on the input data of the first task, and obtaining the processing result of the first task.
[0212] In one possible implementation, the target deployment method includes deploying a first subtask of the first task on a first communication device, and deploying a second subtask of the first task on a second communication device. The first communication device deploys the first subtask, processes the first subtask based on the input data of the first task, and obtains a processing result for the first subtask. The first communication device then sends the target deployment method to the second communication device, which processes the second subtask based on the input data of the first task and obtains a processing result for the second subtask. The processing result of the first task can be determined based on the processing results of the first and second subtasks.
[0213] In one possible implementation, the first communication device further acquires data indication information of the input data of the first task, the data indication information being used to indicate the input data of the subtasks of the first task within the input data of the first task. Based on the data indication information, the first communication device determines the input data of the subtasks of the first task from the input data of the first task. In one possible implementation, the first communication device sends the input data of the second subtask and the target deployment method together to the second communication device. In another possible implementation, the first communication device sends the data indication information, the input data of the first task, and the target deployment method together to the second communication device, and the second communication device determines the input data of the second subtask from the input data of the first task based on the data indication information.
[0214] In one possible implementation, the target deployment method further indicates the execution method of the first and second subtasks. The execution method includes: the first and second subtasks being parallel subtasks; or, the first and second subtasks being serial subtasks.
[0215] In one possible implementation, the execution mode indicates that the first subtask and the second subtask are parallel subtasks, and the data indication information needs to indicate the input data of the first subtask and the input data of the second subtask.
[0216] For example, the first task includes subtask 1, subtask 2, and subtask 3, and the input data of the first task includes subdata 1, subdata 2, and subdata 3. If the target deployment method of the first task indicates that subtask 1 and subtask 2 are the first subtask, subtask 3 is the second subtask, and the first and second subtasks are parallel subtasks; and the data indication information indicates that the input data of subtask 1 is subdata 1 and subdata 2, and the input data of subtask 2 and subtask 3 is subdata 3; then the input data of the first subtask includes subdata 1 to subdata 3, and the input data of the second subtask includes subdata 3.
[0217] Optionally, the target deployment method is one of at least one candidate deployment method, and each candidate deployment method further indicates the execution method of the first subtask and the second subtask. As shown in Table 1, Task 1 is the first task, and Task 1 includes 5 candidate deployment methods.
[0218] Table 1
[0219]
[0220]
[0221] It should be noted that if the first subtask does not exist in Table 1, all subtasks of the first task are the second subtasks, indicating that all subtasks of the first task are deployed on the second communication device.
[0222] Optionally, Table 1 may also include at least one candidate deployment method for each of the multiple tasks, and any task in Table 1 can be the first task.
[0223] In one possible implementation, the first, second, and third communication devices are capable of receiving at least one candidate deployment method from the sixth communication device. Optionally, the fourth or fifth communication device may also receive at least one candidate deployment method from the sixth communication device.
[0224] In one possible implementation, the sixth communication device sends out a deployment mode mapping table, as shown in Table 1, which includes at least one candidate deployment mode for the first task.
[0225] Optionally, the implementations after S140 include: S160-S190.
[0226] S160, the first communication device sends the target deployment method and intermediate input data to the second communication device.
[0227] The intermediate input data includes input data for subtasks deployed on the second communication device according to the target deployment method. If the target deployment method includes deploying a first subtask on the first communication device and a second subtask on the second communication device, then the intermediate input data includes input data for the second subtask. If the target deployment method includes deploying all subtasks on the second communication device, then the intermediate input data includes input data for the first task.
[0228] In one possible implementation, the intermediate input data includes compressed input data. The compressed input data includes input data for subtasks deployed on the second communication device according to the target deployment method. If the target deployment method includes deploying a first subtask on the first communication device and a second subtask on the second communication device, then the compressed input data includes input data for the second subtask. If the target deployment method includes deploying all subtasks on the second communication device, then the compressed input data includes input data for the first task.
[0229] Optional, S160 implementation, such as Figure 7 As shown, it includes: S1601-S1603.
[0230] S1601, the first communication device sends the target deployment method and intermediate input data to the third communication device.
[0231] In one possible implementation, the first communication device directly sends the target deployment method and intermediate input data to the third communication device. In another possible implementation, the first communication device selects the target deployment method and sends the target deployment method and intermediate input data.
[0232] Optional, implementation of S1601, such as Figure 9 As shown, it includes: S16011-S16012.
[0233] S16011, the first communication device determines the transmission method corresponding to the target deployment method as the target transmission method based on the correspondence between the target deployment method and the transmission method.
[0234] In this embodiment, the correspondence between the target deployment method and the transmission method is pre-set. Each determined target deployment method has a corresponding transmission method, and the first communication device determines the transmission method corresponding to the target deployment method as the target transmission method. In one possible implementation, the first communication device can acquire the correspondence between at least one candidate deployment method and the transmission method. If the target deployment method is one of at least one candidate deployment method, the correspondence between the at least one candidate deployment method and the transmission method includes the correspondence between the target deployment method and the transmission method.
[0235] In one possible implementation, the first communication device is a UE, and the third communication device is a gNB. The UE and gNB can transmit information according to different transmission protocols, each representing a different transmission method. Transmission protocols include User Datagram Protocol (UDP) and Transmission Control Protocol (TCP). UDP is fast but less stable, and may experience some data loss, while TCP is slow but highly stable. Optionally, if the transmission requirements of the target deployment method meet the first requirement, it indicates that the target deployment method requires a highly stable transmission method, and the corresponding transmission method is TCP. If the transmission requirements of the target deployment method meet the second requirement, it indicates that the target deployment method does not have high requirements for transmission stability, and the corresponding transmission method is UDP.
[0236] For example, taking a model inference task with a first task as the first model as an example, the first model includes at least one sub-model, the first sub-task is the first sub-model, and the second sub-task is the second sub-model. The first model is split at a split point to obtain a first sub-model and a second sub-model. If the compression ratio of the split point of the first model in the target deployment method is greater than a first ratio threshold, the corresponding target transmission method is TCP; if the compression ratio of the split point of the first model in the target deployment method is less than or equal to the first ratio threshold, the corresponding target transmission method is UDP. This application embodiment does not limit the first ratio threshold.
[0237] S16012, the first communication device sends the target deployment method and intermediate input data to the third communication device based on the target transmission method.
[0238] The first communication device can send the target deployment method and intermediate input data to the UE and the third communication device according to the target transmission method, which can balance the transmission rate and stability and improve the transmission performance.
[0239] S1602, the third communication device sends the target deployment method and intermediate input data to the fourth communication device.
[0240] S1603, the fourth communication device sends the target deployment method and intermediate input data to the second communication device.
[0241] Optional, S160 implementation, such as Figure 8 As shown, it includes: S1604-S1606.
[0242] S1604, the first communication device sends the target deployment method and intermediate input data to the fifth communication device.
[0243] Optionally, the implementation of S1604 includes: S16041-S16042.
[0244] S16041, the first communication device determines the transmission method corresponding to the target deployment method as the target transmission method based on the correspondence between the target deployment method and the transmission method.
[0245] S16042, the first communication device sends the target deployment method and intermediate input data to the fifth communication device based on the target transmission method.
[0246] The first communication device is the UE, and the fifth communication device is the gNB. The UE and the gNB can transmit information according to different transmission protocols, and different transmission protocols represent different transmission methods.
[0247] The implementation of S16041-S16042 can be referred to the description of S16011-S16012, and will not be repeated here.
[0248] S1605, the fifth communication device sends the target deployment method and intermediate input data to the third communication device.
[0249] S1606, the third communication device sends the target deployment method and intermediate input data to the second communication device.
[0250] S170, the second communication device deploys sub-tasks based on the target deployment method.
[0251] After receiving the target deployment method, the second communication device deploys sub-tasks according to the instructions of the target deployment method. If the target deployment method includes deploying the first sub-task on the first communication device and deploying the second sub-task on the second communication device, then the sub-task deployed by the second communication device is the second sub-task. If the target deployment method includes deploying all sub-tasks on the second communication device, then the second communication device deploys all sub-tasks of the first task.
[0252] S180, the second communication device obtains intermediate processing results based on the intermediate input data processing subtask.
[0253] The intermediate processing result is the processing result of the sub-task deployed on the second communication device.
[0254] S190, the second communication device sends the intermediate processing result to the first communication device.
[0255] Optionally, the second communication device sends the intermediate processing result to the first communication device through the third and fourth communication devices. Specifically, S190 is implemented as follows: Figure 7 As shown, it includes: S1901-S1903.
[0256] S1901, the second communication device sends the intermediate processing result to the fourth communication device.
[0257] S1902, the fourth communication device sends the intermediate processing result to the third communication device.
[0258] S1903, the third communication device sends the intermediate processing result to the first communication device.
[0259] Optionally, the second communication device sends the intermediate processing result to the first communication device through the fifth and third communication devices. Specifically, S190 is implemented as follows: Figure 8 As shown, it includes: S1904-S1906.
[0260] S1904, the second communication device sends the intermediate processing result to the third communication device.
[0261] S1905, the third communication device sends the intermediate processing result to the fifth communication device.
[0262] S1906, the fifth communication device sends the intermediate processing result to the first communication device.
[0263] In one possible implementation, the target deployment mode indicates that the first subtask and the second subtask are parallel subtasks, and the data indication information indicates the input data of the first subtask and the input data of the second subtask in the input data of the first task. Optionally, in Figure 7 Based on this, the implementations prior to S160 include: S1591-S1592; the implementations after S190 include S191, such as... Figure 9 As shown.
[0264] S1591, The first communication device deploys the first sub-task.
[0265] S1592, the first communication device determines the input data of the first subtask and the input data of the second subtask from the input data of the first task.
[0266] The input data for the second subtask is the intermediate input data.
[0267] S1593, the first communication device processes the first subtask based on the input data of the first subtask and obtains the processing result of the first subtask.
[0268] S191, the first communication device combines the processing results of the first subtask and the processing results of the second subtask into the processing result of the first task.
[0269] The implementation of S170 includes: S1701, the second communication device deploys the second subtask according to the indication of the target deployment method. The implementation of S180 includes: S1801, the second communication device processes the second subtask based on the intermediate input data to obtain the processing result of the second subtask, which is the intermediate processing result.
[0270] For example, the first task includes subtask 1 and subtask 2, where subtask 1 is used to calculate the square of the input data, and subtask 2 is used to calculate the square root of the input data. The target deployment mode indicates that subtask 1 is the first subtask, subtask 2 is the second subtask, and the first and second subtasks are parallel subtasks; furthermore, the data indication information indicates that the input data for subtask 1 is 4, and the input data for subtask 2 is 9; the first communication device processes the first subtask and the result is 16; the first communication device sends the target deployment mode and 9 to the second communication device, and the second communication device processes the second subtask and the result is 3; the second communication device sends 3 to the first communication device; the first communication device determines 16 and 3 together as the processing result of the first task.
[0271] In one possible implementation, the target deployment method indicates that the first task and the second task are serial subtasks, and the data indication information indicates the input data of the subtask that is executed earlier in the input data of the first task, while the input data of the subtask that is executed later is the processing result of the subtask that is executed earlier.
[0272] In one possible implementation, the second subtask is the subtask executed first in the order of execution. The implementation of S170 includes: S1701, the second communication device deploys the second subtask according to the indication of the target deployment method. The implementation of S180 includes: S1801, the second communication device processes the second subtask based on intermediate input data to obtain the processing result of the second subtask, which is the intermediate processing result. Figure 7 The intermediate input data in the example is the input data for the first task, such as... Figure 10 As shown, the implementation prior to S1601 includes S1591. The implementation after S190 includes:
[0273] S192, the first communication device processes the first subtask based on the intermediate processing result and obtains the processing result of the first subtask.
[0274] The result of processing the first subtask is the result of processing the first task.
[0275] Optionally, the first subtask is the subtask executed first in the order of execution, based on... Figure 7 , Figure 11 A flowchart illustrating a communication method is shown. For example... Figure 11As shown, the implementation of S170 includes: S1701, the second communication device deploys the second subtask according to the instruction of the target deployment method. The implementation of S180 includes: S1801, the second communication device processes the second subtask based on intermediate input data to obtain the processing result of the second subtask, which is the intermediate processing result. The implementation before S1601 includes S1594-S1596. The implementation after S190 includes S193.
[0276] S1594, the first communication device deploys the first sub-task.
[0277] S1595, the first communication device determines the input data of the first task as the input data of the first sub-task.
[0278] S1596, the first communication device processes the first subtask based on the input data of the first task to obtain the processing result of the first subtask.
[0279] The result of the first subtask is the intermediate input data.
[0280] S193, the first communication device uses the intermediate processing result as the processing result of the first task.
[0281] Optionally, the target deployment method includes deploying all sub-tasks of the first task on the second communication device, based on... Figure 7 , Figure 12 A flowchart illustrating a communication method is shown. For example... Figure 12 As shown, the implementation of S170 includes: S1702, where the second communication device deploys all sub-tasks of the first task. The implementation of S180 includes: S1802, where the second communication device processes all sub-tasks of the first task based on intermediate input data to obtain the processing result of the first task. The processing result of the first task is the intermediate processing result. The implementation before S1601 includes: S1597. The implementation of S1601 includes: S16011-S16012.
[0282] S1597, the first communication device compresses the input data of the first task to obtain compressed input data of the first task.
[0283] The intermediate input data includes compressed input data.
[0284] Accordingly, the implementation prior to S1702 includes: S17021, the second communication device decompresses the compressed input data to obtain the input data for the first task.
[0285] Optionally, such as Figure 13As shown, the implementation of S1597 may include S15971, S1601 is implemented as S16013, S1602 is implemented as S16023, and S1603 is implemented as S16033.
[0286] S15971, the first communication device compresses the input data of the first task based on the first compression algorithm to obtain the compressed input data of the first task.
[0287] The first communication device incorporates multiple compression algorithms, employing a first compression algorithm among these to compress the input data for the first task. These compression algorithms include: Huffman coding, arithmetic coding, Joint Photographic Experts Group (JPEG), Moving Picture Experts Group Audio Layer III (MP3), Advanced Video Coding (AVC) H.264, and High Efficiency Video Coding (HEVC) H.265, etc.
[0288] S16013, the first communication device sends the target deployment method, intermediate input data and the identifier of the first compression algorithm to the third communication device.
[0289] S16023, the third communication device sends the target deployment method, intermediate input data and the identifier of the first compression algorithm to the fourth communication device.
[0290] S16033, the fourth communication device sends the target deployment method, intermediate input data and the identifier of the first compression algorithm to the second communication device.
[0291] When the first communication device compresses the input data of the first task using one of a variety of compression algorithms, it needs to inform the second communication device of the identifier of the compression algorithm through the third communication device, so that the second communication device can decompress the compressed input data based on the correct compression algorithm to obtain the input data of the first task.
[0292] Accordingly, S17021 is implemented as S17022, in which the second communication device decompresses the compressed input data based on the first compression algorithm to obtain the input data for the first task.
[0293] It should be noted that the first communication device mentioned in this application can be a UE, the second communication device can be a FEIN or a cloud platform, and the third communication device can be a gNB or AICF. Optionally, the fourth communication device can be an AICF, and the fifth communication device can be a gNB. The sixth communication device can be a node for network management, such as an Operations, Administration, and Maintenance (OAM) node, a Service Management and Orchestration (SMO) node, an Operations Support System (OSS) node, or an artificial intelligence service node, etc.; this application does not limit this. Among them, the OAM node is the core function of network management and operation and maintenance, used to monitor, manage, and maintain the normal operation of the network; the SMO node is used for service management and orchestration, including implementing network slicing, resource optimization, and automated operation and maintenance; the artificial intelligence service node includes a network agent and an AI service platform (A-platform). The above-mentioned communication devices can be set as needed, and this application does not limit them.
[0294] For example, the first task is implemented as an inference task of a first model, which includes at least one sub-model, and the at least one sub-model is deployed on a first communication device and / or a second communication device. The first model includes at least one candidate deployment method, and the multiple candidate deployment methods include at least one of the following: a first deployment method includes deploying the first sub-model on the first communication device and deploying the second sub-model on the second communication device; a second deployment method includes deploying all sub-models of the first model on the first communication device; a third deployment method includes deploying all sub-models of the first model on the second communication device. The first deployment method includes at least one candidate deployment method, and the candidate deployment methods differ depending on the division method of the first sub-model and the second sub-model. The first communication device, the second communication device, the third communication device, and the fourth communication device all store a deployment method mapping table, which includes at least one candidate deployment method of the first model and the data compression rate of the model segmentation point under at least one candidate deployment method. The first communication device is a UE, the second communication device is a FEIN, the third communication device is a gNB, and the fourth communication device is an AICF. Figure 14 A flowchart of a communication method is shown, such as... Figure 14 As shown, the method includes: S811-S827.
[0295] S811, the UE obtains the identifier of the first model and the input data of the first model.
[0296] The UE has an application installed, and the user triggers inference commands for the first model through the application. These inference commands instruct the first model and its inference object. The UE then performs transformation processing on the inference object of the first model to obtain the input data for the first model.
[0297] S812, the UE determines the second prediction processing time under at least one candidate deployment mode based on the data volume of the input data of the first model, the UE's computing resource information, and the instance parameter volume of the first sub-model of at least one candidate deployment mode.
[0298] The number of instance parameters of the first sub-model under each candidate deployment method is used to determine the second prediction processing time under the corresponding candidate deployment method.
[0299] S813, the UE sends a pre-scheduling request to the gNB; the pre-scheduling request carries the identifier of the first model, the amount of input data of the first model, and the second prediction processing time of at least one candidate deployment mode.
[0300] S814, gNB sends a prediction duration calculation request to AICF, which carries the identifier of the first model and the amount of input data of the first model.
[0301] S815, AICF determines the second prediction processing time under at least one candidate deployment mode based on the amount of input data of the first model, the computational resource information of FEIN, and the number of instance parameters of the second sub-model of at least one candidate deployment mode.
[0302] The instance parameter count of the second sub-model for each candidate deployment method is used to determine the second prediction processing time for the corresponding candidate deployment method.
[0303] In one possible implementation, the AICF can request FEIN's computing resource information from FEIN. In another possible implementation, FEIN's computing resource information can be synchronized to the AICF in real time, allowing the AICF to obtain FEIN's computing resource information promptly.
[0304] S816, AICF sends a prediction duration calculation response to gNB, the prediction duration calculation response carrying a second prediction processing duration for at least one candidate deployment mode.
[0305] The S817 and gNB perform uplink channel measurements to obtain the uplink transmission rate.
[0306] S818, gNB determines the total prediction processing time under at least one candidate deployment mode based on the uplink transmission rate, the amount of input data of the first model, the first prediction processing time under at least one candidate deployment mode, and the second prediction processing time under at least one candidate deployment mode.
[0307] S819, gNB determines the target deployment method as the one with the shortest predicted total processing time among at least one candidate deployment method.
[0308] S820, gNB sends a pre-scheduling response to UE, which carries the target deployment method.
[0309] S821, the UE determines the target transmission protocol based on the target deployment method and the deployment method mapping table.
[0310] The target deployment method is the first deployment method, and the first sub-model and the second sub-model are executed sequentially, with the first sub-model being executed first.
[0311] S8221, the UE deploys the first sub-model according to the target deployment method.
[0312] S8222, the UE inputs the input data of the first model into the first sub-model and obtains the output result of the first sub-model.
[0313] S823, the UE sends an inference request to the gNB according to the target transmission protocol. The inference request carries the identifier of the first model, the target deployment method, and the output results of the first sub-model.
[0314] S824, gNB sends an inference request to AICF, which carries the identifier of the first model, the target deployment method, and the output of the first sub-model.
[0315] S825, AICF sends an inference request to FEIN, which carries the identifier of the first model, the target deployment method, and the output of the first sub-model.
[0316] S8261, FEIN deploys the second sub-model according to the target deployment method.
[0317] S8262, FEIN inputs the output of the first sub-model into the second sub-model to obtain the inference result of the first model.
[0318] S827, FEIN sends an inference response to AICF, which carries the identifier of the first model and the inference result of the first model.
[0319] S828, AICF sends an inference response to gNB, which carries the identifier of the first model and the inference result of the first model.
[0320] S829, gNB sends an inference response to UE, which carries the identifier of the first model and the inference result of the first model.
[0321] In this embodiment, the UE calculates the second predicted processing time for at least one candidate deployment mode and sends it to the gNB; the AICF calculates the first predicted processing time for at least one candidate deployment mode based on the real-time synchronized FEIN computing resource information and also sends it to the gNB. The gNB calculates the total predicted processing time for multiple deployment modes, and the target deployment mode is determined based on the total predicted processing time. This reduces the transmission latency of the UE's computing resource information and the FEIN's computing resource information in the communication system 100, improving the efficiency of determining the target deployment mode.
[0322] Figure 15 A schematic block diagram of a communication device 1500 provided in an embodiment of this application is shown. This communication device 1500 can be applied to the first communication device in the above method embodiments. The first communication device 1500 includes:
[0323] The sending module 1501 is used to send the amount of input data of the first task, the amount of input data is used to determine the first prediction processing time, the first prediction processing time is the prediction processing time of the second communication device executing the sub-task of the first task;
[0324] The receiving module 1502 is used to receive the target deployment mode of the first task, wherein the target deployment mode is used to indicate that at least one sub-task of the first task is deployed on at least one target communication device.
[0325] In one possible implementation, the at least one target communication device includes the first communication device and / or the second communication device. The sending module 1501 is further configured to send the target deployment method to the second communication device if the at least one target communication device includes the second communication device. The first communication device further includes a processing module 1503 (not shown in the figure), which is further configured to deploy a sub-task of the first task according to the target deployment method if the at least one target communication device includes the first communication device.
[0326] In one possible implementation, the target deployment method includes any of the following: deploying a first subtask of the first task on the first communication device and deploying a second subtask of the first task on the second communication device; deploying all subtasks of the first task on the first communication device; or deploying all subtasks of the first task on the second communication device.
[0327] In one possible implementation, the target deployment method includes deploying a first subtask of the first task on the first communication device and deploying a second subtask of the first task on the second communication device. The processing module 1503 is further configured to process the first subtask based on the input data to obtain a processing result of the first subtask; and send the processing result of the first subtask and the target deployment method to the second communication device.
[0328] In one possible implementation, the target deployment method includes deploying all sub-tasks of the first task on the second communication device. The processing module 1503 is further configured to determine the transmission method corresponding to the target deployment method as the target transmission method based on the correspondence between the target deployment method and the transmission method; and send the processing result of the first sub-task and the target deployment method to the second communication device based on the target transmission method.
[0329] In one possible implementation, the target deployment method includes deploying all sub-tasks of the first task on the second communication device, and the sending module 1503 is further configured to send the input data of the first task and the target deployment method to the second communication device.
[0330] In one possible implementation, the processing module 1503 is further configured to determine the transmission mode corresponding to the target deployment mode as the target transmission mode based on the correspondence between the target deployment mode and the transmission mode; the sending module 1501 is further configured to send the input data of the first task and the target deployment mode to the second communication device based on the target transmission mode.
[0331] In one possible implementation, the processing module 1503 is further configured to compress the input data based on a first compression algorithm to obtain compressed input data for the first task;
[0332] Based on the target transmission method, the compressed input data of the first task, the identifier of the first compression algorithm, and the target deployment method are sent.
[0333] In one possible implementation, the processing module 1503 is further configured to determine a second predicted processing time for the at least one candidate deployment method based on the amount of data in the input data and at least one candidate deployment method, wherein the second predicted processing time is the predicted processing time of the sub-task of the first task processed by the first communication device; the sending module 1501 is further configured to send the second predicted processing time for the at least one candidate deployment method.
[0334] In one possible implementation, the target deployment method is one of at least one candidate deployment method.
[0335] Figure 16 A schematic block diagram of a communication device 1600 provided in an embodiment of this application is shown. This communication device 1600 can be applied to the third communication device in the above method embodiments. The third communication device 1600 includes:
[0336] The receiving module 1601 is used to obtain a first predicted processing time for at least one candidate deployment mode, wherein the first predicted processing time is the predicted processing time for a subtask of the second communication device executing the first task.
[0337] The sending module 1602 is configured to send the target deployment mode of the first task according to the first predicted processing time of the at least one candidate deployment mode, wherein the target deployment mode is used to indicate that at least one sub-task of the first task is deployed on at least one target communication device.
[0338] In one possible implementation, the receiving module 1601 is used to determine the target deployment method based on the first prediction processing time of the at least one candidate deployment method; the sending module 1602 is used to send the target deployment method.
[0339] In one possible implementation, the receiving module 1601 is further configured to determine the target deployment mode based on the first predicted processing time of the at least one candidate deployment mode and the second predicted processing time of the at least one candidate deployment mode; wherein the second predicted processing time is the predicted processing time of the sub-task of the first communication device executing the first task.
[0340] In one possible implementation, the receiving module 1601 is further configured to determine the target deployment method based on the first predicted processing time of the at least one candidate deployment method, the second predicted processing time of the at least one candidate deployment method, the transmission rate of the input data of the first task between the first communication device and the second communication device, and the data volume of the input data of the first task.
[0341] In one possible implementation, the receiving module 1601 is further configured to receive the second prediction processing time of the at least one candidate deployment mode and the amount of input data for the first task.
[0342] In one possible implementation, the target deployment method includes any of the following: deploying a first subtask of the first task on the first communication device and deploying a second subtask of the first task on the second communication device; deploying all subtasks of the first task on the first communication device; or deploying all subtasks of the first task on the second communication device.
[0343] In one possible implementation, the receiving module 1601 is further configured to receive the first prediction processing duration of the at least one candidate deployment method.
[0344] In one possible implementation, the receiving module 1601 is further configured to determine the first prediction processing time of the at least one candidate deployment method based on the amount of data in the input data of the first task.
[0345] Figure 17 A schematic block diagram of a communication device 1700 provided in an embodiment of this application is shown. This communication device 1700 can be the fourth communication device in the above-described method embodiments. The fourth communication device 1700 includes:
[0346] The receiving module 1701 is used to receive the amount of input data of the first task, the amount of input data is used to determine the first prediction processing time, the first prediction processing time is the prediction processing time of the second communication device executing the sub-task of the first task;
[0347] The sending module 1702 is configured to send a first predicted processing time for at least one candidate deployment mode based on the amount of data, wherein the first predicted processing time is the predicted processing time for a subtask of the first task executed by the second communication device.
[0348] In one possible implementation, the sending module 1702 is further configured to determine the first prediction processing time of the at least one candidate deployment method based on the amount of data; and send the first prediction processing time of the at least one candidate deployment method.
[0349] In one possible implementation, the at least one candidate deployment method includes a first candidate deployment method, which includes deploying the fourth subtask of the first task on the second communication device. The sending module 1702 is further configured to determine a first predicted processing time of the at least one candidate deployment method based on the data volume, the complexity of the fourth subtask, and the computing resource information of the second communication device.
[0350] Figure 18A schematic block diagram of a communication device 1800 provided in an embodiment of this application is shown. This communication device 1800 can be a second communication device in the above-described method embodiments. The second communication device 1800 includes:
[0351] The receiving module 1801 is used to receive the target deployment mode of the first task, the identifier of the first compression algorithm, and the compressed input data of the first task. The first compression algorithm corresponds to the compressed input data, and the target deployment mode indicates that all sub-tasks of the first task are deployed on the second communication device.
[0352] The decompression module 1802 is used to decompress the compressed input data by the first compression algorithm to obtain the input data of the first task;
[0353] The sending module 1803 is used to send the processing result of the first task based on the input data of the first task and the target deployment method.
[0354] Figure 19 A schematic block diagram of another communication device 1900 provided in an embodiment of this application is shown. This communication device 1900 can be applied to terminal devices, network devices, or cloud platforms. The communication device 1900 includes a processor 1910 and a memory 1930.
[0355] The memory 1930 is used to store instructions; the processor 1910 is used to execute the instructions stored in the memory 1930 to implement the functions or steps of the various communication devices in the above method embodiments.
[0356] Optionally, the communication device 1900 also includes interface circuitry 1920. Processor 1910 and interface circuitry 1920 are coupled to each other. It is understood that interface circuitry 1920 can be a transceiver or an input / output interface.
[0357] The aforementioned processor 1910 may be an integrated circuit chip with signal processing capabilities. In implementation, each step of the above method embodiments can be completed by integrated logic circuits in the processor's hardware or by software instructions. The aforementioned processor may be a general-purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components. It can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of this application. The general-purpose processor may be a microprocessor or any conventional processor. The steps of the methods disclosed in the embodiments of this application can be directly embodied in the execution of a hardware decoding processor, or executed by a combination of hardware and software modules in the decoding processor. The software modules may reside in random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, registers, or other mature storage media in the art. This storage medium is located in memory; the processor reads information from the memory and, in conjunction with its hardware, completes the steps of the above method.
[0358] This application also provides a communication system, including a third communication device and a second communication device in the communication method provided in this application. The third communication device and the second communication device communicate with each other.
[0359] In an optional implementation, the communication system further includes a fourth communication device from the communication method provided in the embodiments of this application. The third communication device communicates with the fourth communication device, and the fourth communication device communicates with the second communication device.
[0360] In an optional implementation, the communication system further includes a first communication device from the communication method provided in this application. The first communication device and the third communication device can communicate via a wireless network, and the first communication device communicates with the second communication device through the third and fourth communication devices.
[0361] For example, the first communication device is a UE or a chip in a UE, the second communication device is a FEIN or a chip in a FEIN, the third communication device is a gNB or a chip in a gNB, and the fourth communication device is an AICF or a chip in an AICF.
[0362] In an optional implementation, the communication system further includes a fifth communication device from the communication method provided in the embodiments of this application. The fifth communication device communicates with the third communication device, and the third communication device communicates with the second communication device. Further optionally, the communication system also includes a first communication device from the communication method provided in the embodiments of this application. The first communication device and the fifth communication device can communicate via a wireless network, and the first communication device communicates with the second communication device through the fifth and third communication devices.
[0363] For example, the first communication device is a UE or a chip in a UE, the second communication device is a FEIN or a chip in a FEIN, the fifth communication device is a gNB or a chip in a gNB, and the fourth communication device is an AICF or a chip in an AICF.
[0364] This application also provides a computer-readable storage medium storing a computer program for implementing the methods in the above-described method embodiments. When the computer program is run on a computer, the computer can implement the methods in the above-described method embodiments.
[0365] This application also provides a computer program product, which includes computer program code. When the computer program code is run on a computer, the method in the above method embodiments is executed.
[0366] This application also provides a chip, including a processor connected to a memory for storing computer programs, and the processor for executing the computer programs stored in the memory, so that the chip performs the methods described in the above method embodiments.
[0367] It should be understood that in the embodiments of this application, the designations "first", "second", etc. are only for distinguishing different objects, such as different terminal devices or different network devices, and do not constitute a limitation on the scope of the embodiments of this application. The embodiments of this application are not limited thereto.
[0368] Furthermore, the term "and / or" in this application is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, and B existing alone. Additionally, the character " / " in this document generally indicates that the preceding and following related objects have an "or" relationship. The term "at least one" in this application can represent "one" and "two or more." For example, A, B, and C can represent: A existing alone, B existing alone, C existing alone, A and B existing simultaneously, A and C existing simultaneously, C and B existing simultaneously, and A, B, and C existing simultaneously.
[0369] In this embodiment of the application, expressions such as "A includes B" are used to indicate that A may or may not include other items besides B. When other items are not included, it can be understood as "A is B", in which case "A" can be replaced with "B".
[0370] In the embodiments of this application, "send" and "receive" indicate the direction of signal transmission. For example, "send information to XX" can be understood as the destination of the information being XX, which may include direct transmission via the air interface or indirect transmission via the air interface by other units or modules. "Receive information from YY" can be understood as the source of the information being YY, which may include direct reception from YY via the air interface or indirect reception from YY via the air interface by other units or modules. "Send" can also be understood as the "output" of the chip interface, and "receive" can also be understood as the "input" of the chip interface.
[0371] In other words, sending and receiving can occur between devices, such as between network devices and terminal devices, or within a device, such as between components, modules, chips, software modules, or hardware modules within the device via buses, wiring, or interfaces.
[0372] It is understandable that information may undergo necessary processing, such as encoding and modulation, between the source and destination, but the destination can understand the valid information from the source. Similar statements in this application can be interpreted in a similar way and will not be elaborated further.
[0373] In the embodiments of this application, "instruction" can include direct and indirect instructions, as well as explicit and implicit instructions. The information indicated by a certain piece of information (hereinafter referred to as instruction information) is called the information to be instructed. In specific implementation, there are many ways to indicate the information to be instructed, such as, but not limited to, directly indicating the information to be instructed, such as the information to be instructed itself or its index. It can also indirectly indicate the information to be instructed by indicating other information, where there is an association between the other information and the information to be instructed; or it can indicate only a part of the information to be instructed, while the other parts are known or pre-agreed upon. For example, the instruction can be implemented by using a pre-agreed (e.g., protocol predefined) arrangement of various information, thereby reducing the instruction overhead to a certain extent. This application does not limit the specific method of instruction. It is understood that for the sender of the instruction information, the instruction information can be used to indicate the information to be instructed; for the receiver of the instruction information, the instruction information can be used to determine the information to be instructed.
[0374] In this application, unless otherwise specified, the same or similar parts between the various embodiments can be referred to each other. In the various embodiments of this application, and in the various implementation methods / methods / implementations within each embodiment, unless otherwise specified or logically conflicting, the terminology and / or descriptions between different embodiments and between the various implementation methods / methods / implementations within each embodiment are consistent and can be mutually referenced. The technical features in different embodiments and the various implementation methods / methods / implementations within each embodiment can be combined according to their inherent logical relationships to form new embodiments, implementation methods, methods, or implementation approaches. The embodiments described below do not constitute a limitation on the scope of protection of this application.
[0375] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0376] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.
[0377] In the several embodiments provided in this application, it should be understood that the disclosed systems, apparatuses, and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between apparatuses or units may be electrical, mechanical, or other forms.
[0378] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0379] In addition, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.
[0380] If the aforementioned functions are implemented as software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or a portion of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0381] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
Claims
1. A communication method, characterized in that, Applied to a first communication device, comprising: The amount of input data for the first task is sent, and the amount of data is used to determine the first prediction processing duration, which is the prediction processing duration for the second communication device to execute a subtask of the first task. The system receives the target deployment method for the first task, which is used to instruct that at least one subtask of the first task be deployed on at least one target communication device.
2. The method according to claim 1, characterized in that, The at least one target communication device includes the first communication device and / or the second communication device, and the method further includes: If the at least one target communication device includes the second communication device, then the target deployment method is sent to the second communication device; and / or, If the at least one target communication device includes the first communication device, then the sub-tasks of the first task are deployed according to the target deployment method.
3. The method according to claim 2, characterized in that, The target deployment method includes any of the following: The first subtask of the first task is deployed on the first communication device, and the second subtask of the first task is deployed on the second communication device; Deploy all subtasks of the first task on the first communication device; or, All subtasks of the first task are deployed on the second communication device.
4. The method according to claim 1 or 2, characterized in that, The target deployment method includes deploying a first subtask of the first task on the first communication device, and deploying a second subtask of the first task on the second communication device. The method further includes: The first subtask is processed based on the input data of the first task to obtain the processing result of the first subtask; The processing result of the first subtask and the target deployment method are sent to the second communication device.
5. The method according to claim 4, characterized in that, The method further includes: Based on the correspondence between the target deployment method and the transmission method, the transmission method corresponding to the target deployment method is determined as the target transmission method; Based on the target transmission method, the processing result of the first sub-task and the target deployment method are sent to the second communication device.
6. The method according to claim 2, characterized in that, The target deployment method includes deploying all sub-tasks of the first task on the second communication device, and the method further includes: The input data for the first task and the target deployment method are sent to the second communication device.
7. The method according to claim 6, characterized in that, The method further includes: Based on the correspondence between the target deployment method and the transmission method, the transmission method corresponding to the target deployment method is determined as the target transmission method; The step of sending the input data and the target deployment method to the second communication device includes: The input data of the first task and the target deployment method are sent to the second communication device based on the target transmission method.
8. The method described in claim 7, characterized in that, The step of sending the input data of the first task and the target deployment method to the second communication device based on the target transmission method includes: The input data of the first task is compressed based on the first compression algorithm to obtain the compressed input data of the first task. Based on the target transmission method, the compressed input data of the first task, the identifier of the first compression algorithm, and the target deployment method are sent.
9. The method according to any one of claims 1-8, characterized in that, The method further includes: Based on the amount of input data and at least one candidate deployment method, a second predicted processing time for the at least one candidate deployment method is determined, wherein the second predicted processing time is the predicted processing time for the sub-task of the first task by the first communication device. Send the second prediction processing time for the at least one candidate deployment method.
10. The method according to claim 9, characterized in that, The target deployment method is one of the at least one candidate deployment methods.
11. A communication method, characterized in that, Applied to a third communication device, including: The first predicted processing time for obtaining at least one candidate deployment mode is the predicted processing time for a subtask of the second communication device executing the first task. Based on the first predicted processing time of the at least one candidate deployment method, the target deployment method of the first task is sent, the target deployment method being used to indicate that at least one sub-task of the first task is deployed on at least one target communication device.
12. The method according to claim 11, characterized in that, The step of sending the target deployment method of the first task based on the first prediction processing time of the at least one candidate deployment method includes: The target deployment method is determined based on the first prediction processing time of the at least one candidate deployment method; Send the target deployment method.
13. The method according to claim 11, characterized in that, Determining the target deployment method based on the first prediction processing time of the at least one candidate deployment method includes: The target deployment method is determined based on the first prediction processing time of the at least one candidate deployment method and the second prediction processing time of the at least one candidate deployment method; Wherein, the second prediction processing time is the prediction processing time of the sub-task of the first task executed by the first communication device.
14. The method according to claim 12, characterized in that, Determining the target deployment method based on the first prediction processing time of the at least one candidate deployment method and the second prediction processing time of the at least one candidate deployment method includes: The target deployment method is determined based on the first prediction processing time of the at least one candidate deployment method, the second prediction processing time of the at least one candidate deployment method, the transmission rate of the input data of the first task between the first communication device and the second communication device, and the data volume of the input data of the first task.
15. The method according to claim 14, characterized in that, The method further includes: The second prediction processing time for receiving the at least one candidate deployment method and the amount of data for the input data of the first task.
16. The method according to any one of claims 11-14, characterized in that, The target deployment method includes any of the following: The first subtask of the first task is deployed on the first communication device, and the second subtask of the first task is deployed on the second communication device; Deploy all subtasks of the first task on the first communication device; or, All subtasks of the first task are deployed on the second communication device.
17. The method according to any one of claims 11-16, characterized in that, The first prediction processing time for obtaining at least one candidate deployment method includes: The first prediction processing time for receiving the at least one candidate deployment method.
18. The method according to any one of claims 11-16, characterized in that, The first prediction processing time for obtaining at least one candidate deployment method includes: Based on the amount of input data for the first task, the first prediction processing time for the at least one candidate deployment method is determined.
19. A communication method, characterized in that, Applied to a fourth communication device, including: The amount of input data received from the first task, the amount of data being used to determine the first prediction processing duration, the first prediction processing duration being the prediction processing duration of the second communication device executing the sub-task of the first task; Based on the data volume, a first predicted processing time for at least one candidate deployment mode is sent, wherein the first predicted processing time is the predicted processing time for a subtask of the first task executed by the second communication device.
20. The method according to claim 19, characterized in that, The first prediction processing time for sending at least one candidate deployment method based on the data volume includes: Based on the amount of data, determine the first prediction processing time for the at least one candidate deployment method; Send the first prediction processing time for the at least one candidate deployment method.
21. The method according to claim 20, characterized in that, The at least one candidate deployment method includes a first candidate deployment method, which includes deploying the fourth subtask of the first task on the second communication device. Determining the first predicted processing time for the at least one candidate deployment method based on the data volume includes: Based on the data volume, the complexity of the fourth sub-task, and the computing resource information of the second communication device, the first prediction processing time of the first candidate deployment method is determined.
22. A communication method, characterized in that, Applied to a second communication device, including: The system receives the target deployment mode of the first task, the identifier of the first compression algorithm, and the compressed input data of the first task. The first compression algorithm corresponds to the compressed input data, and the target deployment mode indicates that all sub-tasks of the first task should be deployed on the second communication device. The compressed input data is decompressed based on the first compression algorithm to obtain the input data for the first task; Based on the input data of the first task and the target deployment method, the processing result of the first task is sent.
23. A communication device, characterized in that, It includes a unit for performing the method as described in any one of claims 1-10, or a unit for performing the method as described in any one of claims 11-18, or a unit for performing the method as described in any one of claims 19-21, or a unit for performing the method as described in claim 22.
24. A communication device, characterized in that, include: A processor configured to implement the method as claimed in any one of claims 1-10, or to implement the method as claimed in any one of claims 11-18, or to implement the method as claimed in any one of claims 19-21, or to implement the method as claimed in claim 22.
25. A communication system, characterized in that, include: A second communication device and a third communication device, wherein the third communication device is used to perform the method as described in any one of claims 11-18.
26. The communication system according to claim 25, characterized in that, The second communication device is used to perform the method as described in claim 22.
27. The communication system according to claim 25 or 26, characterized in that, The communication system further includes a first communication device, which is used to perform the method as described in any one of claims 1-10.
28. A computer-readable storage medium, characterized in that, include: The computer-readable medium stores a computer program; When the computer program is run on a computer or processor, it causes the method described in any one of claims 1-22 to be performed.
29. A computer program product, characterized in that, Includes a computer program that, when executed, causes the method described in any one of claims 1-22 to be implemented.