Computing task scheduling method and communication device
By decomposing the computing tasks into subtasks and scheduling them to appropriate nodes for execution according to needs, the problem of low resource utilization in the computing power network is solved, and the resource utilization and user experience are improved.
Patent Information
- Application Number
- CN202310833798.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-07-06
- Publication Date
- 2025-01-07
AI Technical Summary
In computing power network, there are problems with low utilization rates of network computing power and transmission resources during computing task scheduling, which affects user experience and service quality.
By decomposing the computing task into multiple subtasks and scheduling it to a suitable computing node for execution based on the computing and communication needs of the subtasks, the utilization rate of computing power resources and transmission resources is improved. The specific method includes receiving computing task requirements information, determining the computing and communication requirements of the sub-task, selecting suitable computing nodes, and representing the relationship and demand information of the sub-task through directed acyclic graphs, and optimizing the scheduling process.
It improves the utilization rate of network computing power and transmission resources, ensures user service experience and business quality, and reduces the end-to-end delay of computing tasks.
Smart Images

Figure CN119271361A_ABST
Abstract
Description
Technical Field
[0001] The embodiments of the present application relate to the field of communications, and in particular to a computing task scheduling method and a communication device. Background Art
[0002] As many industries such as healthcare, factories, ports, coal mines, government and enterprises accelerate their digital transformation, computing and communications are becoming the core basic capabilities that enable the digital transformation of industries. To this end, operators have proposed the concept of computing power network and organized standardization discussions in the 3rd Generation Partnership Project (3GPP). Computing power network refers to the use of network perception of ubiquitous computing and services to dispatch computing tasks to appropriate computing nodes for processing, improve the utilization efficiency of network resources and computing resources, and provide users with low-latency and highly reliable business services to ensure user experience.
[0003] In the computing power network architecture used to schedule computing tasks, computing power awareness, computing business awareness, network status awareness, and computing task scheduling are performed through the computing management function (CMF). However, in the process of scheduling computing tasks, there is a problem of low utilization of network computing power and transmission resources. Summary of the invention
[0004] The embodiments of the present application provide a computing task scheduling method and a communication device, which can improve the utilization rate of network computing power and transmission resource utilization in the computing task scheduling process.
[0005] In order to achieve the above objectives, this application adopts the following technical solutions:
[0006] In a first aspect, a computing task scheduling method is provided, which can be executed by a computing management function, or by a component of the computing management function, such as a processor, chip, or chip system of the computing management function, or by a logic module or software that can implement all or part of the computing management function. The following is an illustration of the method being executed by the computing management function. The method includes: receiving first information. The first information is used to indicate a demand for a computing task of a first device, and the computing task includes at least one subtask. In response to the first information, second information is sent, and the second information is used to indicate one or more subtasks of at least one subtask scheduled to the first computing node.
[0007] Based on this computing task scheduling method, computing tasks (such as AR, VR, machine vision and other complex applications) are decomposed into multiple subtasks. The computing management function can determine the computing and communication requirements of each subtask in the computing task through the received first information, and according to the computing and communication requirements of the subtasks, the multiple subtasks are scheduled to one or more suitable computing nodes for execution through the second information, thereby improving the utilization rate of computing power resources and transmission resources, while ensuring the user's service experience.
[0008] In a possible design scheme, the technical solution provided by the embodiment of the present application may also include: determining one or more computing nodes and second information corresponding to each computing node, the one or more computing nodes including the first computing node. Based on this design scheme, subtasks in the computing task can be scheduled to one or more suitable computing nodes for execution, thereby improving the utilization of computing resources and transmission resources.
[0009] In a possible design, the first information can also be used to indicate the association between each subtask in the computing task and the preceding subtask and / or the succeeding subtask. Based on this design, the execution order and transmission requirements between the subtasks can be determined by indicating the association between each subtask in the computing task and the preceding subtask and / or the succeeding subtask, thereby improving the accuracy of scheduling.
[0010] In one possible design scheme, the association relationship may include at least one of the following: data transmission direction, data transmission rate requirement, data throughput requirement, data transmission delay requirement, or data transmission bandwidth requirement.
[0011] In a possible design scheme, the computing task may include a first subtask, the input data of the first subtask is the output data of a preceding subtask corresponding to the first subtask, and the output data of the first subtask is the input data of a succeeding subtask corresponding to the first subtask.
[0012] In one possible design scheme, one or more subtasks may include a second subtask, and the second information corresponding to the first computing node includes requirement information of the second subtask and association information of the second subtask; wherein the requirement information is used to indicate the computing requirements that must be met to complete the second subtask, and the association information is used to indicate the transmission requirements between the second subtask and the preceding subtask and / or subsequent subtask corresponding to the second subtask.
[0013] In one possible design scheme, the requirement information may include at least one of the following: computing latency requirement, computing power requirement, computing accuracy requirement, computing energy consumption requirement, or priority of the second subtask.
[0014] In one possible design scheme, the associated information may include at least one of the following: the data transmission direction between the second subtask and the preceding subtask and / or the subsequent subtask corresponding to the second subtask, the data transmission rate requirement between the second subtask and the preceding subtask and / or the subsequent subtask corresponding to the second subtask, the data throughput requirement between the second subtask and the preceding subtask and / or the subsequent subtask corresponding to the second subtask, the data transmission delay requirement between the second subtask and the preceding subtask and / or the subsequent subtask corresponding to the second subtask, the data transmission bandwidth requirement between the second subtask and the preceding subtask and / or the subsequent subtask corresponding to the second subtask, the location information of the computing node executing the preceding subtask corresponding to the second subtask, or the location information of the computing node executing the subsequent subtask corresponding to the second subtask.
[0015] In one possible design scheme, the computing task is represented by a directed acyclic graph, each vertex in the directed acyclic graph includes the requirement information of a subtask in the computing task, and each edge in the directed acyclic graph includes the association information between a subtask in the computing task and the corresponding preceding subtask and / or succeeding subtask.
[0016] In one possible design scheme, the requirements of the computing task may include at least one of the following: the type of computing task, input data rate, output data rate, computing latency, computing power, computing accuracy, or computing energy consumption.
[0017] In one possible design, the first device and the first computing node are deployed in a wireless communication network.
[0018] In one possible design scheme, the first device and the first computing node may be a terminal device, an access network device, a core network device, or a mobile edge computing platform.
[0019] In a second aspect, a computing task scheduling method is provided, which can be executed by a first device, or by a component of the first device, such as a processor, a chip, or a chip system of the first device, or by a logic module or software that can implement all or part of the first device. The following is an explanation of the method being executed by the first device as an example. The method includes: sending first information. The first information is used to indicate the demand for a computing task of the first device, and the computing task includes at least one subtask. Receiving third information. The third information includes an identifier of a first computing node and second information corresponding to the first computing node, and the second information is used to indicate one or more subtasks of at least one subtask scheduled to the first computing node. Sending second information.
[0020] In one possible design, the first computing node is one of one or more computing nodes scheduled to complete the computing task.
[0021] In a possible design, the one or more computing nodes include a second computing node; the method provided in the embodiment of the present application may further include: sending first data to the second computing node, wherein the first data is used to complete a subtask scheduled to the second computing node.
[0022] In a possible design, the first information may also be used to indicate an association relationship between each subtask in the computing task and a preceding subtask and / or a succeeding subtask.
[0023] In one possible design scheme, the association relationship may include at least one of the following: data transmission direction, data transmission rate requirement, data throughput requirement, data transmission delay requirement, or data transmission bandwidth requirement.
[0024] In a possible design scheme, the computing task may include a first subtask, the input data of the first subtask is the output data of a preceding subtask corresponding to the first subtask, and the output data of the first subtask is the input data of a succeeding subtask corresponding to the first subtask.
[0025] In one possible design scheme, one or more subtasks may include a second subtask, and the second information corresponding to the first computing node includes requirement information of the second subtask and association information of the second subtask; wherein the requirement information is used to indicate the computing requirements that must be met to complete the second subtask, and the association information is used to indicate the transmission requirements between the second subtask and the preceding subtask and / or subsequent subtask corresponding to the second subtask.
[0026] In one possible design scheme, the requirement information may include at least one of the following: computing latency requirement, computing power requirement, computing accuracy requirement, computing energy consumption requirement, or priority of the second subtask.
[0027] In one possible design scheme, the associated information may include at least one of the following: the data transmission direction between the second subtask and the preceding subtask and / or the subsequent subtask corresponding to the second subtask, the data transmission rate requirement between the second subtask and the preceding subtask and / or the subsequent subtask corresponding to the second subtask, the data throughput requirement between the second subtask and the preceding subtask and / or the subsequent subtask corresponding to the second subtask, the data transmission delay requirement between the second subtask and the preceding subtask and / or the subsequent subtask corresponding to the second subtask, the data transmission bandwidth requirement between the second subtask and the preceding subtask and / or the subsequent subtask corresponding to the second subtask, the location information of the computing node executing the preceding subtask corresponding to the second subtask, or the location information of the computing node executing the subsequent subtask corresponding to the second subtask.
[0028] In one possible design scheme, the computing task is represented by a directed acyclic graph, each vertex in the directed acyclic graph includes the requirement information of a subtask in the computing task, and each edge in the directed acyclic graph includes the association information between a subtask in the computing task and the corresponding preceding subtask and / or succeeding subtask.
[0029] In one possible design scheme, the requirements of the computing task may include at least one of the following: the type of computing task, input data rate, output data rate, computing latency, computing power, computing accuracy, or computing energy consumption.
[0030] In one possible design, the first device and the first computing node are deployed in a wireless communication network.
[0031] In one possible design scheme, the first device and the first computing node may be a terminal device, an access network device, a core network device, or a mobile edge computing platform.
[0032] Among them, the technical effects of the method described in the second aspect can refer to the technical effects of the method described in the first aspect, and will not be repeated here.
[0033] In a third aspect, a computing task scheduling method is provided. The method includes: a computing management function receives first information. The first information is used to indicate a computing task requirement of a first device, and the computing task includes at least one subtask. The computing management function sends second information to a first computing node in response to the first information. The second information is used to indicate one or more subtasks of the at least one subtask scheduled to the first computing node.
[0034] In a fourth aspect, a computing task scheduling method is provided. The method includes: a first device sends first information to a computing management function. The first information is used to indicate a computing task requirement of the first device, and the computing task includes at least one subtask. The computing management function receives the first information from the first device, and sends second information to the first computing node in response to the first information. The second information is used to indicate one or more subtasks of at least one subtask scheduled to the first computing node.
[0035] In a fifth aspect, a computing task scheduling method is provided. The method includes: a first device sends first information to a computing management function. The first information is used to indicate the demand for a computing task of the first device, and the computing task includes at least one subtask. The computing management function receives the first information from the first device, and sends third information to the first device in response to the first information. The third information includes a first computing node and second information corresponding to the first computing node, and the second information is used to indicate one or more subtasks of at least one subtask scheduled to the first computing node. The first device sends second information to the first computing node.
[0036] Among them, the technical effects of the methods described in any one of the third to fifth aspects can refer to the technical effects of the methods described in the first aspect, and will not be repeated here.
[0037] In a sixth aspect, a communication device is provided for implementing the various methods described above. The communication device may be the computing management function in the first aspect, or a device including the computing management function, or a device included in the computing management function, such as a chip. The communication device includes a corresponding module, unit, or means for implementing the method described in the first aspect, and the module, unit, or means may be implemented by hardware, software, or by hardware executing the corresponding software implementation. The hardware or software includes one or more modules or units corresponding to the above functions.
[0038] In some possible designs, the communication device includes: a processing module and a transceiver module. The processing module is used to control the transceiver module to receive first information. The first information is used to indicate the demand for a computing task of the first device, and the computing task includes at least one subtask. The processing module is also used to respond to the first information and control the transceiver module to send second information, and the second information is used to indicate one or more subtasks in at least one subtask scheduled to the first computing node. For a more detailed description of the communication device, please refer to the description of the relevant method in the first aspect.
[0039] In the seventh aspect, a communication device is provided for implementing the above-mentioned various methods. The communication device may be the first device in the above-mentioned second aspect, or a device including the above-mentioned first device, or a device included in the above-mentioned first device, such as a chip. The communication device includes a corresponding module, unit, or means for implementing the method described in the above-mentioned second aspect, and the module, unit, or means may be implemented by hardware, software, or by executing the corresponding software implementation by hardware. The hardware or software includes one or more modules or units corresponding to the above-mentioned functions.
[0040] In some possible designs, the communication device includes: a processing module and a transceiver module. The processing module is used to control the transceiver module to send the first information. The first information is used to indicate the demand for the computing task of the first device, and the computing task includes at least one subtask. The processing module is also used to control the transceiver module to receive third information. The third information includes the first computing node and the second information corresponding to the first computing node, and the second information is used to indicate one or more subtasks in at least one subtask scheduled to the first computing node. The processing module is also used to control the transceiver module to send the second information. For a more detailed description of the communication device, please refer to the description of the relevant method in the second aspect.
[0041] In combination with the sixth aspect or the seventh aspect, in a possible design scheme, the transceiver module may include a receiving module and a sending module. The sending module is used to implement the sending function of the communication device described in the sixth aspect or the seventh aspect, and the receiving module is used to implement the receiving function of the communication device described in the sixth aspect or the seventh aspect.
[0042] In combination with the sixth aspect or the seventh aspect, in a possible design scheme, the communication device described in the sixth aspect or the seventh aspect may further include a storage module, which stores a program or instruction. When the processing module executes the program or instruction, the communication device described in the sixth aspect or the seventh aspect can execute the method described in the first aspect or the second aspect.
[0043] In an eighth aspect, a communication device is provided (for example, the communication device may be a chip or a chip system). The communication device includes: a processor, configured to implement the functions involved in any of the above aspects.
[0044] In a possible design, the communication device may further include a memory, the memory being used to store necessary program instructions and data. A processor is coupled to the memory, the processor being used to execute a computer program or instruction stored in the memory, so that the communication device executes the method described in any possible implementation of the first aspect or the second aspect.
[0045] In a possible design scheme, the communication device described in the eighth aspect may further include a transceiver. The transceiver may be a transceiver circuit or an interface circuit. The transceiver may be used for the communication device described in the eighth aspect to communicate with other communication devices.
[0046] In one possible design, the processor may be integrated with the memory.
[0047] In some possible designs, when the device is a chip system, it can be composed of a chip or include a chip and other discrete devices.
[0048] In a ninth aspect, a communication device is provided, which includes a processor and an interface circuit, the interface circuit being used to receive signals from other communication devices outside the communication device and transmit them to the processor or to send signals from the processor to other communication devices outside the communication device, and the processor being used to implement a method as described in any possible implementation method of the first aspect or the second aspect through a logic circuit or by executing code instructions.
[0049] In the tenth aspect, a communication device is provided, which may be a computing management function, or a module or unit (e.g., a chip, or a chip system, or a circuit) in the computing management function that corresponds to the method / operation / step / action described in the first aspect, or may be used in combination with the computing management function. Alternatively, the communication device may be a first device, or a module or unit (e.g., a chip, or a chip system, or a circuit) in the first device that corresponds to the method / operation / step / action described in the first aspect, or may be used in combination with the first device.
[0050] It can be understood that when the communication device provided in any one of the eighth aspect or the tenth aspect is a chip, the above-mentioned sending action / function can be understood as output, and the above-mentioned receiving action / function can be understood as input.
[0051] In the eleventh aspect, a computer-readable storage medium is provided, in which a computer program or instruction is stored. When the computer-readable storage medium is run on a communication device, the communication device can execute the method described in any one of the first or second aspects above.
[0052] In a twelfth aspect, a computer program product comprising instructions is provided, including computer program codes, which, when the computer program codes are executed on a communication device, enable the communication device to execute the method described in any one of the first or second aspects above.
[0053] In a thirteenth aspect, a communication system is provided, comprising a computing management function for implementing the method described in the first aspect and a first device for implementing the method described in the second aspect. BRIEF DESCRIPTION OF THE DRAWINGS
[0054] Figure 1 A schematic diagram of the architecture of an XaaS system provided in an embodiment of the present application;
[0055] Figure 2 A schematic diagram of the process of AR and face recognition application provided in an embodiment of the present application;
[0056] Figure 3 A schematic diagram of a computing power network architecture that can be used to schedule computing tasks provided in an embodiment of the present application;
[0057] Figure 4 A schematic diagram of the architecture of a computing task scheduling system provided in an embodiment of the present application;
[0058] Figure 5 A schematic diagram of the architecture of a communication system suitable for a computing task scheduling system provided in an embodiment of the present application
[0059] Figure 6 A schematic diagram of the architecture of a 5GS provided in an embodiment of the present application;
[0060] Figure 7 A schematic diagram of an access network device architecture based on CU-DU separation provided in an embodiment of the present application;
[0061] Figure 8 A schematic diagram of the structure of an access network device based on the O-RAN architecture provided in an embodiment of the present application;
[0062] Fig. 9 A flowchart of a computing task scheduling method provided in an embodiment of the present application;
[0063] Fig.10 A schematic diagram of the structures of three computing tasks based on DAG modeling provided in the embodiments of the present application;
[0064] Fig.11 A schematic diagram of an execution structure of an AR rendering task provided in an embodiment of the present application;
[0065] Fig.12 A flowchart of another computing task scheduling method provided in an embodiment of the present application;
[0066] Fig.13 A flowchart of another computing task scheduling method provided in an embodiment of the present application;
[0067] Fig.14 A schematic diagram of the structure of a communication device provided in an embodiment of the present application;
[0068] Fig.15 A schematic diagram of the structure of another communication device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0069] In order to better understand the embodiments of the present application, the following explanations are made before introducing the embodiments of the present application.
[0070] First, in the embodiments of the present application, "used for indication" may include being used for direct indication and being used for indirect indication. When describing that a certain "indication information" is used to indicate A, it may include that the indication information directly indicates A or indirectly indicates A, but it does not mean that the indication information must carry A.
[0071] The information indicated by the indication information is called the information to be indicated. In the specific implementation process, there are many ways to indicate the information to be indicated, such as but not limited to, the information to be indicated can be directly indicated, such as the information to be indicated itself or the index of the information to be indicated. The information to be indicated can also be indirectly indicated by indicating other information, wherein there is an association between the other information and the information to be indicated. It is also possible to indicate only a part of the information to be indicated, while the other parts of the information to be indicated are known or agreed in advance. For example, the indication of specific information can also be achieved with the help of the arrangement order of each piece of information agreed in advance (for example, stipulated by the protocol), thereby reducing the indication overhead to a certain extent. At the same time, the common parts of each piece of information can also be identified and indicated uniformly to reduce the indication overhead caused by indicating the same information separately.
[0072] In addition, the specific indication method may also be various existing indication methods, such as but not limited to the above-mentioned indication methods and various combinations thereof. The specific details of the various indication methods can refer to the relevant descriptions in the existing implementation methods, which will not be repeated herein. As can be seen from the above, for example, when it is necessary to indicate multiple information of the same type, different indication methods may be used for different information. In the specific implementation process, the desired indication method can be selected according to specific needs. The embodiment of the present application does not limit the selected indication method. In this way, the indication method involved in the embodiment of the present application should be understood to cover various methods that can enable the party to be indicated to obtain the information to be indicated.
[0073] The information to be indicated can be sent as a whole, or divided into multiple sub-information and sent separately, and the sending period and / or sending time of these sub-information can be the same or different. The specific sending method is not limited in this application. Among them, the sending period and / or sending time of these sub-information can be pre-defined, for example, pre-defined according to the protocol, or can be configured by the transmitting device by sending configuration information to the receiving device. Among them, the configuration information can include, for example, but not limited to, one or a combination of at least two of radio resource control (RRC) signaling, medium access control (MAC) layer signaling and physical layer signaling. Among them, MAC layer signaling, for example, includes MAC-control element (CE); physical (PHY) layer signaling, for example, includes downlink control information (DCI).
[0074] Second, in the embodiments of the present application, the first, second and various digital numbers are only used for the convenience of description and are not used to limit the scope of the embodiments of the present application. For example, to distinguish different indication information. For another example, the first network area and the second network area are only used to distinguish different areas, and their order is not limited. Those skilled in the art can understand that the words "first" and "second" do not limit the quantity and execution order, and the words "first" and "second" do not necessarily limit them to be different.
[0075] Third, in the embodiments of the present application, descriptions such as "when...", "in the case of...", "if" and "if" all mean that under certain objective circumstances, the device (such as a terminal device or a network device) will make corresponding processing. It does not limit the time, nor does it require the device (such as a terminal device or a network device) to have a judgment action when implementing it, nor does it mean that there are other limitations.
[0076] Fourth, in the embodiments of the present application, words such as "exemplary" or "for example" are used to indicate examples, illustrations or explanations. Any embodiment or design described as "exemplary" or "for example" in the embodiments of the present application should not be interpreted as being more preferred or more advantageous than other embodiments or designs. Specifically, the use of words such as "exemplary" or "for example" is intended to present related concepts in a concrete way for easy understanding.
[0077] Fifth, in the embodiments of the present application, "at least one" refers to one or more, and "more than one" refers to two or more. "And / or" describes the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B can represent: the existence of A alone, the existence of A and B at the same time, and the existence of B alone, where A and B can be singular or plural. The character " / " generally indicates that the previous and next associated objects are in an "or" relationship. "At least one of the following items" or similar expressions refers to any combination of multiple items, including any combination of single items or plural items. For example, at least one of a, b, or c can represent: a, b, c, ab, ac, bc, or abc, where a, b, c can be single or multiple.
[0078] Introduction to communication systems and applicable network elements, as well as related terminology.
[0079] The technical solutions of the embodiments of the present application can be applied to various communication systems, such as wireless fidelity (Wi-Fi) systems, vehicle to everything (V2X) communication systems, device-to-device (D2D) communication systems, Internet of Vehicles communication systems, world-wide interoperability for microwave access (WiMAX) communication systems, fourth-generation (4G) mobile communication systems, such as long-term evolution (LTE) systems, world-wide interoperability for microwave access (WiMAX) communication systems, fifth-generation (5G) mobile communication systems, such as new radio (NR) systems, and future communication systems, such as sixth-generation (6G) mobile communication systems.
[0080] As many industries such as healthcare, factories, ports, coal mines, government and enterprises accelerate their digital transformation, computing and communications are becoming the core basic capabilities that enable the digital transformation of industries. Therefore, operators have proposed the concept of computing power network and organized standardization discussions in 3GPP. The meaning of computing power network is to perceive ubiquitous computing and services through the network, dispatch computing tasks to appropriate computing nodes for processing, improve the utilization efficiency of network resources and computing resources, and provide users with low-latency and highly reliable business services to ensure user experience.
[0081] In view of 6G networks and future business needs, the IMT-2030 (6G) Promotion Group believes that 6G services will be immersive and intelligent, including the combination of extended reality (XR) and holograms to achieve natural and realistic visual restoration, as well as three-dimensional dynamic interaction between people, objects and the environment; personal / home devices, unmanned vehicles, robots and other intelligent entities generate a large amount of data for artificial intelligence (AI) learning, training and reasoning, etc. 6G networks need to support the scheduling of AI resources and the processing of extremely large amounts of data to reduce the computing power and energy consumption of terminals in order to meet the requirements of lighter, more immersive and smarter terminal capabilities. Therefore, it is proposed that Figure 1The X as a service (XaaS) architecture shown in the figure, under which communication equipment has capability exposure, coordination control, orchestration management and security functions, so that the 6G network architecture will change from "connection-centric" to "task-centric".
[0082] The traditional "connection-centric" network architecture aims to provide the connection channels required for data communication between terminals and terminals, terminals and application servers, as well as the corresponding lifecycle management mechanism (for example: creation, modification, deletion, anchor migration, etc. of end-to-end communication tunnels) and communication service quality (QoS) guarantee. The "task-centric" network architecture is to coordinate and deploy the computing power, connection, algorithm, and data resources of multiple nodes to jointly achieve a specific goal. 6G networks will introduce new computing power and storage resources, new AI computing types, new AI input and output data types, new AI model-related algorithms, and new multi-node computing power, algorithm, and data coordination mechanisms.
[0083] Computing service applications may contain a large number of dependent functional components, such as augmented reality (AR) recognition, virtual reality (VR) rendering, and machine vision. Computing tasks generally include multiple steps or components. The output of some components is the input of other components. Some functions or processes can be offloaded to the server for remote execution, while some can only be executed locally, such as image display functions. Figure 2 As shown in (a) in Figure 1, the key components of an AR application include a video source (obtaining raw video frames from a mobile camera), a tracker (tracking the user's position), a mapper (building an environmental model), an object recognizer (recognizing known objects in the environment), and a renderer (preparing processed frames for display). Figure 2 As shown in (b) in the figure, face recognition applications include image acquisition, face detection, preprocessing, feature extraction and classification, etc. There is a dependency relationship between the execution steps, such as the output of image acquisition (digital image) is the input for face detection.
[0084] like Figure 3 As shown, a computing network architecture that can be used to schedule computing tasks is shown. It uses the connection capabilities of wireless networks and the computing power that is widely available in the network to provide high-performance computing power, low-latency transmission, and intelligent business assurance services for a variety of computing services. Figure 3In the architecture shown, CMF is deployed on the radio access network (RAN) side to perform computing power perception, computing service perception, network status perception, and computing task scheduling. CMF can schedule services initiated by network elements, external networks, or third-party applications to terminals, mobile edge computing (MEC) platforms, cloud servers, and the next generation base stations (the next generation node B, gNB) in the fifth generation (5G) for execution. However, in the process of scheduling computing tasks, there is a problem of low utilization of network computing power and transmission resources.
[0085] To this end, an embodiment of the present application provides a computing task scheduling method that can flexibly and fully utilize the computing power resources and transmission resources of each node in the network, thereby improving the utilization rate of network computing power and transmission resources.
[0086] For example, Figure 4 The following is a schematic diagram of the architecture of a computing task scheduling system provided in an embodiment of the present application. Figure 4 As shown, the computing task scheduling system includes a first device, a computing management function and a first computing node. The first computing node is one of one or more computing nodes that perform computing tasks, the first device is used to initiate a computing task request, the computing management function is used to schedule and manage computing tasks, and the first device, the computing management function and the first computing node can communicate with each other.
[0087] In a possible design scheme, the first device sends a first message to the computing management function. The first message is used to indicate the demand for a computing task of the first device, and the computing task includes at least one subtask. Accordingly, the computing management function receives the first message from the first device, and sends a second message to the first computing node in response to the first message. The second message is used to indicate one or more subtasks of at least one subtask scheduled to the first computing node. For the specific implementation process, please refer to the relevant description in the following method embodiment.
[0088] In another possible design scheme, the first device sends a first message to the computing management function. The first message is used to indicate the demand for a computing task of the first device, and the computing task includes at least one subtask. Accordingly, the computing management function receives the first message from the first device, and sends a third message to the first device in response to the first message. The third message includes the first computing node and the second information corresponding to the first computing node, and the second information is used to indicate one or more subtasks in at least one subtask scheduled to the first computing node. Then, the first device sends the second message to the first computing node. For the specific implementation process, please refer to the relevant description in the following method embodiment.
[0089] In a possible implementation, the first device may also serve as one of the one or more computing nodes that perform computing tasks, such as the first device being the first computing node or other computing nodes.
[0090] In the embodiment of the present application, the first device and the computing node have computing capabilities and can be a terminal device, access network equipment, core network equipment, application (application, APP) (such as xAPP, 3rd App) deployed in a communication network, or a mobile edge computing platform (MEC platform, MEP) or application server deployed in a data network.
[0091] The computing management function has one or more of the following functions: computing power awareness, computing business awareness, network status awareness or computing task scheduling, which can realize the orchestration and management of computing power resources.
[0092] In the computing task scheduling system provided in the embodiment of the present application, a computing management function network element can be introduced to implement some or all operations related to the computing management function. The computing management function network element can also be called a computing management function node, a computing management function device, a computing management function entity, a computing management function module, a computing management function model, or a computing management function unit. As mentioned above, the computing management function network element can be a network element built into a communication system. For example, the computing management function network element can be a computing management function module built into: a terminal device, an access network device, a core network device, a cloud server, or an operation, administration and maintenance (OAM) (which can be called a network management) to implement functions related to the computing management function. The OAM can be a network management of a core network device and / or a network management of an access network device. Alternatively, the computing management function network element can also be a network element independently set up in the communication system. Optionally, a computing management function entity can also be included in a terminal device or a chip built into a terminal device to implement functions related to the computing management function. Optionally, the computing management function can be called CMF, or other names, which are not limited in this application.
[0093] For example, Figure 5 The following is a schematic diagram of the architecture of a wireless communication system applicable to the above-mentioned computing task scheduling system provided in an embodiment of the present application. Figure 5 As shown, the wireless communication system includes terminal equipment, access network equipment and core network equipment, and any two of the three can communicate with each other.
[0094] 1. Terminal equipment
[0095] The terminal device may be one or more, such as a first terminal device, a second terminal device, a third terminal device, etc. The terminal device may be a terminal device with a transceiver function, or may be a chip or a chip system provided in the terminal device. The terminal device may also be referred to as user equipment (UE), access terminal, subscriber unit, subscriber station, mobile station (MS), mobile station, remote station, remote terminal, mobile device, user terminal, terminal, wireless communication device, user agent or user device. The terminal device in the embodiments of the present application can be a mobile phone, a cellular phone, a smart phone, a tablet computer, a wireless data card, a personal digital assistant (PDA), a wireless modem, a handset, a laptop computer, a machine type communication (MTC) terminal, a computer with wireless transceiver function, a VR terminal, an AR terminal, smart home equipment (for example, a refrigerator, a television, an air conditioner, an electric meter, etc.), an intelligent robot, a robotic arm, workshop equipment, a wireless terminal in unmanned driving, a wireless terminal in industrial control, a wireless terminal in unmanned driving, a wireless terminal in remote medical, a wireless terminal in smart grid, a wireless terminal in transportation safety, a wireless terminal in a smart city, a wireless terminal in a smart home, a vehicle-mounted terminal, a road side unit (RSU) with terminal function, etc., a flying device (for example, an intelligent robot, a hot air balloon, a drone, an airplane), etc. The terminal device of the present application may also be a vehicle-mounted module, a vehicle-mounted module, a vehicle-mounted component, a vehicle-mounted chip or a vehicle-mounted unit built into a vehicle as one or more components or units. The terminal device may also be other devices with terminal functions, for example, the terminal device may also be a device that functions as a terminal in D2D communication.
[0096] The embodiments of the present application do not limit the device form of the terminal. The device for realizing the function of the terminal device can be a terminal device; it can also be a device that can support the terminal device to realize the function, such as a chip system. The device can be installed in the terminal device or used in combination with the terminal device. In the embodiments of the present application, the chip system can be composed of chips, or it can include chips and other discrete devices.
[0097] 2. Access network equipment
[0098] The access network device may be multiple, such as the first access network device, the second access network device, the third access network device, etc. The access network device may also be referred to as an access network node, a RAN node, a RAN entity or an access node, etc., located on the network side of the above-mentioned communication system, to help the terminal device achieve wireless access, and a device with a wireless transceiver function or a chip or chip system that can be set in the device. The access network device includes but is not limited to: a base station, an evolved NodeB (eNodeB), an access point (AP), a transmission reception point (TRP or transmission point, TP), a next generation base station (next generationNodeB, gNB), a next generation base station in the sixth generation (6th generation, 6G) mobile communication system, a base station in a future mobile communication system, or an access node in a Wi-Fi system, etc. The access network device may be a macro base station, a micro base station or an indoor station, a relay node or a donor node, or a wireless controller in a centralized radio access network (CRAN) scenario. The access network device may also be one or a group of antenna panels (including multiple antenna panels) of a base station in 5G, or it may also be a network node constituting a gNB, TRP or TP or a transmission measurement function (TMF), such as a centralized unit (CU), a distributed unit (DU), a CU-control plane (CP), a CU-user plane (UP), or a radio unit (RU), a road side unit (RSU) with a base station function, and optionally, the access network device may also be a server, a wearable device, a vehicle or an on-board device, etc. For example, the access network device in V2X technology may be an RSU. All or part of the functions of the network device in this application may also be implemented by software functions running on hardware, or by virtualization functions instantiated on a platform (such as a cloud platform). The access network device in this application may also be a logical node, a logical module or software that can implement all or part of the functions of the access network device.
[0099] Among them, CU and DU can be set separately, or can also be included in the same network element, such as a baseband unit (BBU). RU can be included in a radio frequency device or a radio frequency unit, such as a remote radio unit (RRU), an active antenna unit (AAU) or a remote radio head (RRH). It can be understood that the access network device can be a CU node, or a DU node, or a device including a CU node and a DU node. In addition, CU can be divided into a network device in the access network RAN, and CU can also be divided into a network device in the CN, which is not limited here.
[0100] In different systems, CU (or CU-CP and CU-UP), DU or RU may also have different names, but those skilled in the art can understand their meanings. For example, in an open RAN (open-RAN, O-RAN) system, CU may also be called O-CU (open CU), DU may also be called O-DU, CU-CP may also be called O-CU-CP, CU-UP may also be called O-CU-UP, and RU may also be called O-RU. For the convenience of description, CU, CU-CP, CU-UP, DU and RU are used as examples for description in this application. Any unit of CU (or CU-CP, CU-UP), DU and RU in this application may be implemented by a software module, a hardware module, or a combination of a software module and a hardware module.
[0101] In the embodiments of the present application, the form of the access network device is not limited. The device for realizing the function of the access network device may be the access network device; or it may be a device capable of supporting the access network device to realize the function, such as a chip system. The device may be installed in the access network device or used in conjunction with the access network device.
[0102] 3. Core network equipment
[0103] A core network device is a device deployed in a core network to provide services to terminal devices. In systems using different wireless access technologies, the names of core network devices with similar wireless communication functions may be different. For example, when the method of an embodiment of the present application is applied to a 5G system, the core network device may be an access and mobility management function (AMF), a session management function (SMF), a user plane function (UPF), etc. Among them, UPF processes user plane data. AMF and SMF process control plane signaling. When the method of an embodiment of the present application is applied to an LTE system, the core network device may be a mobility management entity (MME). For the convenience of description only, in the embodiments of the present application, the above-mentioned devices that can provide services to terminal devices are collectively referred to as core network devices.
[0104] Furthermore, Figure 6 The following is a schematic diagram of the architecture of a 5G system (system, S) applicable to the above wireless communication system provided in an embodiment of the present application. Figure 6 As shown, 5GS includes: terminal equipment, access network (AN) and core network (CN).
[0105] The above AN is used to implement access-related functions, can provide network access functions for authorized users in a specific area, and can determine transmission links of different qualities to transmit user data according to the user level, business requirements, etc. AN forwards control signals and user data between terminal devices and CN. AN can include: access network equipment, also known as RAN equipment.
[0106] The above CN is mainly responsible for maintaining the subscription data of the mobile network and providing session management, mobility management, policy management and security authentication functions for terminal devices. CN mainly includes the following network elements: UPF, authentication server function (AUSF), AMF, SMF, network slice selection function (NSSF), network exposure function (NEF), network repository function (NRF), policy control function (PCF), unified data management (UDM), unified data repository (UDR), and application function (AF).
[0107] like Figure 6 As shown, the terminal device accesses the 5G network through the RAN device, and the terminal device communicates with the AMF through the N1 interface (referred to as N1); the RAN device communicates with the AMF through the N2 interface (referred to as N2); the RAN device communicates with the UPF through the N3 interface (referred to as N3); the SMF communicates with the UPF through the N4 interface (referred to as N4), and the UPF accesses the data network (datanetwork, DN) through the N6 interface (referred to as N6). In addition, Figure 6 The control plane functions shown in the figure, such as AUSF, AMF, SMF, NSSF, NEF, NRF, PCF, UDM, UDR or AF, interact with each other using service-based interfaces. For example, the service-based interface provided by AUSF is Nausf; the service-based interface provided by AMF is Namf; the service-based interface provided by SMF is Nsmf; the service-based interface provided by NSSF is Nnssf; the service-based interface provided by NEF is Nnef; the service-based interface provided by NRF is Nnrf; the service-based interface provided by PCF is Npcf; the service-based interface provided by UDM is Nudm; the service-based interface provided by UDR is Nudr; the service-based interface provided by AF is Naf.
[0108] Among them, UPF is mainly responsible for user data processing (forwarding, receiving, billing, etc.). For example, UPF can receive user data from DN and forward the user data to the terminal device through the access network device. UPF can also receive user data from the terminal device through the access network device and forward the user data to DN. DN refers to the operator network that provides data transmission services to users. For example, the Internet Protocol (IP) Multimedia Subsystem (IMS), the Internet, etc. DN can be an operator's external network or a network controlled by an operator, which is used to provide business services to terminal devices. MEP is deployed in DN, which interacts with 5GS for user-plane application layer data through the N6 interface to provide low-latency computing services. MEC can be deployed on the access network side together with the local UPF.
[0109] AUSF is mainly used to perform security authentication of terminal devices.
[0110] AMF is mainly used for mobility management in mobile networks, such as user location update, user network registration, user switching, etc.
[0111] SMF is mainly used for session management in mobile networks, such as session establishment, modification, and release. Specific functions include allocating IP addresses to users and selecting UPFs that provide data packet forwarding functions.
[0112] PCF mainly supports providing a unified policy framework to control network behavior, providing policy rules to the control layer network functions, and is responsible for obtaining user subscription information related to policy decisions. PCF can provide policies to AMF and SMF, such as QoS policy, slice selection policy, etc.
[0113] NSSF is mainly used to select network slices for terminal devices.
[0114] NEF is mainly used to support the opening of capabilities and events.
[0115] UDM is mainly used to store user data, such as contract data, authentication / authorization data, etc.
[0116] UDR is mainly used to store structured data, including contract data and policy data, externally exposed structured data, and application-related data.
[0117] AF mainly supports interaction with CN to provide services, such as influencing data routing decisions, policy control functions, or providing some third-party services to the network side.
[0118] It should be understood that Figure 6Some core network elements are shown as examples. CN may also include other core network elements, such as a network data analytics function (NWDAF), which has computing capabilities to implement a closed-loop automated process from data collection to data analysis, and then to feedback the analysis results to the network in the 5G network, thereby realizing network automation.
[0119] exist Figure 6 In the 5GS shown, computing service applications of terminal devices, RAN devices and other network elements as well as MEC platforms can be offloaded to available computing resources such as other terminal devices, RAN devices and MEC platforms through wireless networks. The network senses and orchestrates various computing resources and allocates network transmission resources to schedule computing tasks to the most appropriate nodes, thereby improving service quality and user experience.
[0120] For the above communication system. Exemplarily, Figure 7 A schematic diagram of the structure of an access network device based on a CU-DU separation architecture provided in an embodiment of the present application. Figure 7 As shown, by dividing the protocol stack, the access network device includes CU-CP, CU-UP and DU, and the CU-CP and DU can communicate through interface 1, and the CU-UP and DU can communicate through interface 2. Optionally, the access network device may be a gNB, in which case interface 1 may be an F1-C interface, and interface 2 may be an F1-U interface.
[0121] Among them, CU-CP includes the RRC layer and the packet data convergence protocol (PDCP) layer, CU-UP includes the service data adaptation protocol (SDAP) layer and the PDCP layer, and DU includes the radio link control (RLC) layer, the MAC layer and the PHY layer. It can be seen that both CU-CP and CU-UP include the PDCP layer, the RRC layer is located above the PDCP layer in CU-CP, and the RRC message is encapsulated into a PDCP data packet data unit (PDU) after being processed by the PDCP layer. The PDCP data PDU can be sent by CU-CP and CU-UP respectively.
[0122] The PDCP control PDU is generated by the PDCP layer and is used to transmit robust header compression (ROHC) context information, etc., and is usually sent by the PDCP layer protocol function of the CU-UP.
[0123] In an embodiment of the present application, the computing management function may be integrated into the CU or DU, or may be integrated into a CU-CP or CU-UP further separated from the CU.
[0124] Another example, Figure 8 The present invention provides a schematic diagram of the structure of an access network device based on the O-RAN architecture. Figure 8 As shown, the access network device includes an intelligent controller (RAN intelligent controller, RIC), for example, the RIC can be an AI module for implementing AI-related functions. The RIC can include a near real-time RIC (near real-time RIC, NRT-RIC) and a non-real-time RIC (non-real-time RIC, Non-RT RIC).
[0125] NRT-RIC is used for model training and reasoning. For example, it is used to train an AI model and use the AI model for reasoning. NRT-RIC can obtain information on the network side and / or the terminal device side from access network equipment (such as CU, CU-CP, CU-UP, DU and / or RU) and / or terminal equipment. This information can be used as training data or reasoning data. Optionally, NRT-RIC can submit the reasoning results to the access network equipment and / or terminal equipment. Optionally, the reasoning results can be exchanged between the CU and DU, and / or between the DU and RU. For example, NRT-RIC submits the reasoning results to the DU, and the DU sends it to the RU.
[0126] Non-RT RIC is used for model training and reasoning. For example, it is used to train an AI model and use the AI model for reasoning. Non-RT RIC can obtain information on the network side and / or the terminal device side from access network equipment (such as CU, CU-CP, CU-UP, DU and / or RU) and / or terminal equipment. The information can be used as training data or reasoning data, and the reasoning result can be submitted to the access network equipment and / or terminal equipment. Optionally, the reasoning results can be exchanged between the CU and the DU, and / or between the DU and the RU. For example, the Non-RT RIC submits the reasoning result to the DU, and the DU sends it to the RU.
[0127] NRT-RIC and Non-RT RIC can also be set up as a network element separately. Optionally, NRT-RIC and Non-RT RIC can also be part of other devices, for example, NRT-RIC is set up in the access network device (for example, in the CU or DU), and Non-RT RIC is set up in the OAM, the cloud server, the core network device, or other network devices.
[0128] like Figure 8 As shown in (a), the access network device includes NRT-RIC, CU and DU. NRT-RIC integrates computing management functions and runs third-party computing applications. NRT-RIC communicates with DU through interface 3, NRT-RIC communicates with CU through interface 4, and CU and DU communicate through interface 5. Optionally, the access network device may be a gNB, interface 3 and interface 4 may be E2 interfaces, and interface 5 may be an F1 interface.
[0129] Another example Figure 8 As shown in (b), the access network device includes a computing management function, a CU and a DU. The computing management function entity is integrated with NRT-RIC and runs a third-party computing application. The computing management function communicates with the DU through interface 6, the computing management function communicates with the CU through interface 7, and the CU and the DU communicate through interface 8. Optionally, the access network device may be a gNB, interface 6 and interface 7 may be E2 interfaces, and interface 8 may be an F1 interface.
[0130] A possible implementation is Figure 8 The NRT-RIC can also be replaced by non-NRT RIC, which can integrate computing management functions and third-party computing applications, or the computing management function entity can integrate non-NRTRIC functions and third-party computing applications. There is no limitation on this.
[0131] The embodiment of the present application combines the computing network architecture with the existing O-RAN architecture. The architecture and interface of O-RAN are slightly modified, which facilitates the implementation of the computing network architecture. In addition, third-party applications run in the open RIC module, which will not cause external security concerns, and the scheduling and optimization of computing tasks are more flexible and convenient.
[0132] It should be understood that the names of nodes, modules, devices or network elements in different scenarios, architectures or systems, as well as the names of communication interfaces between nodes, modules, devices or network elements are given by way of example in the embodiments of the present application, and the possibility of name changes in future communication systems, scenarios or architectures is not excluded.
[0133] The following will be combined Figure 9-12 The computing task scheduling method provided in the embodiment of the present application is specifically explained.
[0134] For example, Fig. 9 A flowchart of a computing task scheduling method provided in an embodiment of the present application. The computing task scheduling method can be applied to Figure 4-Figure 6 In any of the systems shown.
[0135] like Fig. 9 As shown, the computing task scheduling method includes the following steps:
[0136] S901. The first device sends first information to the computing management function; correspondingly, the computing management function receives the first information from the first device.
[0137] The first information is used to indicate the demand for a computing task of the first device. The computing task may also be referred to as a computing service, which may specifically be a computing service application such as AR, XR, or AI. The demand for the computing task is used to characterize the attributes or requirements of the computing task, and may include computing QoS demand parameter information and / or communication QoS demand parameter information.
[0138] In the embodiment of the present application, the requirement of the computing task may include at least one of the following: the type of computing task, the input data rate, the output data rate, the computing delay, the computing power, the computing accuracy, or the computing energy consumption. Among them, the type of computing task, the computing delay, the computing power, the computing accuracy, and the computing energy consumption belong to the computing QoS requirement parameter information, and the input data rate and the output data rate belong to the communication QoS requirement parameter information.
[0139] The type of computing task may refer to the computing power type of the physical hardware required to perform the computing task, such as a central processing unit (CPU), a graphics processing unit (GPU), a neural network processing unit (NPU), or a tensor processing unit (TPU); or, the type of computing task may refer to the business type corresponding to the computing task, such as image / video recognition, compression, graphics rendering, AI training, AI reasoning, perception processing, high-performance computing, or big data offline analysis.
[0140] The input / output data rate requirement may indicate (or reflect, or represent) the input / output data volume requirement to characterize the communication QoS requirement of the computing task. The computing task requirement includes the communication QoS requirement of the computing task, and the communication QoS requirement of the computing task may also include the communication QoS parameters defined by 5G NR, such as uplink / downlink packet delay budget (uplink / downlink, UL / DL PDB), guaranteed bit rate (GBR), maximum data burst volume (MDBV) and other 5G QoS parameters, which can be expressed by the 5G QoS identifier (5G QoS identifier, 5QI).
[0141] express.
[0142] The demand for computing power can indicate (or reflect, or represent) the demand for computing power to perform computing tasks, and can be expressed as the demand for the computing power of the processor. The computing power of the processor may include the number of operations (operations per second, OPS) that the processor can perform per second (s) or the number of floating-point operations (floating-point operations per second, FLOPS), the model of the processor, the memory capacity, the I / O speed, or the main frequency, etc. For example, the demand for computing power includes how many hertz (Hz) or gigahertz (GHz) the main frequency needs to reach, how many gigabits per second (Gbits / s) the number of read / write operations per second (IOPS) needs to reach, and how many bytes of memory capacity are required, etc.
[0143] The computational latency requirement may indicate (or reflect, or indicate) the time requirement for completing a computational task, such as how long it takes to complete the computational task.
[0144] The demand for computing energy consumption may also indicate (or reflect, or represent) computing power consumption demand, which may refer to the demand for power or energy consumed by a device that performs a computing task. For example, the computing task may be performed by a terminal device, and the demand for computing power consumption may include the computing power consumption requirement for the terminal device. The computing power consumption requirement for the terminal device may be the requirement for the average computing power consumption of the terminal device to perform tasks over a period of time, and the duration for calculating the average computing power consumption may be predefined or preconfigured. Alternatively, the computing power consumption requirement may also be the requirement for the computing power consumption of the terminal device after completing a processing or in a short period of time (such as processing a video frame or a subtask). The computing power consumption may also be converted into a corresponding computing energy consumption indicator, and the unit may be a convertible unit such as watts or joules.
[0145] The computational accuracy requirement can indicate (or reflect, or indicate) the error requirement between the computational result and the actual result, such as the error not exceeding 5%. Alternatively, the computational accuracy requirement can also refer to the accuracy requirement of the inference / training result obtained by inference or training using the AI model / algorithm.
[0146] Optionally, the requirements of the computing task may also include other requirement information that is conducive to the scheduling of computing tasks, such as latency jitter requirements, XR service quality score requirements (XR quality index, XQI) requirements, or user service experience (quality of experience, QoE), etc., which is not limited to the embodiments of the present application.
[0147] In an embodiment of the present application, a computing task may include at least one subtask. In other words, a computing task can be divided into one or more subtasks. The computing task can be divided into subtasks according to predetermined rules, such as taking a processing procedure / step / process in the computing task as a subtask. In addition, each subtask in the computing task has a subtask associated with it to characterize the execution order and associated requirements between the subtasks. Correspondingly, the requirements of the computing task are also distributed to each subtask. In other words, the requirements of the computing task include the requirement information of each subtask in the computing task, and the requirement information is used to indicate the computing requirements that must be met to complete the subtask. The requirement information may include one or more of the computing latency requirements, computing power requirements, computing accuracy requirements, computing energy consumption requirements, or the priority of the subtask. Among them, the priority of the subtask can be used to characterize the order in which the subtask is executed.
[0148] Optionally, the computing tasks may be divided by a computing management function or the first device.
[0149] Furthermore, the computing task may be divided into subtasks by the computing management function. In this case, the first information indicates the overall demand of the computing task.
[0150] Furthermore, the computing task can be divided into subtasks by the first device. In this case, the first information can also be used to indicate the association relationship between each subtask in the computing task and the preceding subtask and / or the succeeding subtask. Among them, the association relationship may include at least one of the following: data transmission direction, data transmission rate requirement, data throughput requirement, data transmission delay requirement, data transmission bandwidth requirement, or reliability requirement. In other words, at this time, the first information includes the requirement information of each subtask in the computing task and the association information of each subtask.
[0151] It should be understood that whether the computing management function or the first device performs subtask division, the computing management function and the first device can be divided based on the same rule, so that the computing management function and the first device can align the use of the rule before, thereby better realizing the division and processing of subtasks. Optionally, the division rule can be predefined or preconfigured, or it can be negotiated by both parties. The embodiment of the present application does not limit this.
[0152] Optionally, there is an association relationship between a computing task and its corresponding subtask. Specifically, for a subtask n, n is an integer greater than 1 and less than N, N is the number of subtasks into which the computing task is divided, N is an integer greater than 1, and subtask n has a preceding subtask and a succeeding subtask. Then, the output data of the preceding subtask corresponding to subtask n is used as the input data of subtask n, and the output data of subtask n is used as the input data of the succeeding subtask corresponding to subtask n. In this case, subtask n can be called an intermediate subtask.
[0153] For a subtask n, n is equal to 1, subtask n has a subsequent subtask but no preceding subtask, then the input data of subtask n can be obtained by the computing node executing subtask n from the local or other computing nodes, and the output data of subtask n is used as the input data of the subsequent subtask corresponding to subtask n. In this case, subtask n can be called the starting subtask.
[0154] For a subtask n, n is equal to N, subtask n has a previous subtask, and if it does not have a previous subtask, then the output data of the previous subtask corresponding to subtask n is used as the input data of subtask n, and the output data of subtask n is the output result of the entire computing task. At this time, subtask n can be called a terminated subtask.
[0155] Take the first subtask in a computing task as an example. It has a preceding subtask and a succeeding subtask. The input data of the first subtask is the output data of the preceding subtask corresponding to the first subtask, and the output data of the first subtask is the input data of the succeeding subtask corresponding to the first subtask. In other words, the output of the preceding subtask corresponding to the first subtask after execution is used as the input of the first subtask, and the output of the first subtask after execution is used as the input of the succeeding subtask corresponding to the first subtask.
[0156] It should be understood that for a first subtask corresponding to a preceding subtask, the first subtask is its corresponding succeeding subtask, and for a first subtask corresponding to a succeeding subtask, the first subtask is its corresponding preceding subtask. In addition, a subtask may correspond to multiple preceding subtasks and succeeding subtasks.
[0157] In a possible design, the computing task is represented by a directed acyclic graph (DAG), each vertex in the DAG includes the requirement information of a subtask in the computing task, and each edge in the DAG includes the association information between a subtask in the computing task and the corresponding previous subtask and / or subsequent subtask. In other words, each vertex in the DAG represents a subtask, and the subtask has corresponding requirement information, and each edge represents the association relationship between a subtask and a previous or subsequent subtask. It can be understood that if two vertices c i and c j There are connected edges between them, indicating that vertex c i The corresponding subtask and vertex c j The corresponding subtask has corresponding association information. The association information is used to indicate the transmission requirements between the subtask and the corresponding preceding subtask and / or succeeding subtask. It should be understood that the vertices in the DAG can also be called nodes.
[0158] like Fig.10 As shown, the computing task includes N subtasks (c1~c N ) as an example, showing the structural diagrams of three computing tasks based on DAG modeling. Among them, subtask 1 and subtask N are the starting subtask and the ending subtask respectively, w n is the output data of the subtask. Fig.10 As shown in (a) in the figure, there is a serial dependency relationship between the N subtasks. That is, after subtask 1 (c1) is executed, subtask 2 (c2) needs to obtain the output data w1 of subtask 1 as input data to execute; after subtask 2 is executed, subtask 3 (c3) needs to obtain the output data w2 of subtask 2 as input data to execute, and so on, until subtask N-1 (c N-1 ) is completed, subtask N(c N ) Get the output data w of subtask N-1 N-1 The entire computing task is considered completed only after it is executed and output as input data. At this point, each subtask from subtask 2 to subtask N-1 corresponds to a previous subtask and a subsequent subtask, subtask 1 corresponds to a subsequent subtask (i.e., subtask 2), and subtask N corresponds to a previous subtask (i.e., subtask N-1).
[0159] Another example Fig.10 As shown in (b) of FIG. 1 , multiple subtasks among the N subtasks have a parallel execution relationship. That is, except for subtask 1 (c1) and subtask N (c N ), subtask 2 (c2) to subtask N-1 (c N-1) can be executed in parallel and independently of each other, and the input data of subtasks 2 to subtask N-1 are all the output data w1 of subtask 1, and the output data of subtasks 2 to subtask N-1 (w2~w N-1 ) are all input data of subtask N. When subtask N is completed, the entire computing task is completed. At this time, subtask 1 corresponds to N-2 subsequent subtasks, and subtask N corresponds to N-2 previous subtasks. The previous subtask corresponding to any subtask from subtask 2 to subtask N-1 is subtask 1, and the subsequent subtask is subtask N.
[0160] Another example Fig.10 As shown in (c), there may be complex dependencies between the N subtasks, such as the input data of subtask 5 is the output data of subtask 2 and subtask 3.
[0161] Therefore, the first device can represent the association relationship or topological relationship of the subtasks in the computing task in the form of DAG, and configure the corresponding requirement information for each vertex (subtask) in the DAG, and configure the corresponding association information for each edge (association relationship), and send it to the computing management function through the first information.
[0162] In the process of computing task scheduling, the computing tasks are divided into Fig.10 In any of the subtask architectures shown in (a) to (c), for each subtask, corresponding association information can be configured to characterize the execution order of the subtasks and the transmission requirements between the subtasks and associated subtasks, as well as requirement information to characterize the requirements that need to be met to complete each subtask.
[0163] For any subtask c in the computation task n , subtask c n The requirement parameters configured in the requirement information can be configured uniformly, for example, it can be expressed as subtask c n {Requirement information: computing power requirements, computing accuracy requirements, computing energy consumption requirements, subtask c n priority}; subtask c n The associated parameters configured in the associated information of can also be configured uniformly, such as can be expressed as subtask c n {Associated information: associated predecessor subtask, data transmission rate requirement with the associated predecessor subtask, data transmission bandwidth requirement with the associated predecessor subtask, data throughput requirement with the associated predecessor subtask, data transmission delay requirement with the associated predecessor subtask, associated subsequent subtask, data transmission rate requirement with the associated subsequent subtask, data transmission bandwidth requirement with the associated subsequent subtask, data throughput requirement with the associated subsequent subtask, data transmission delay requirement with the associated subsequent subtask}.
[0164] Alternatively, the requirement information and associated information of the same subtask can be configured uniformly, such as represented as subtask c n :{Requirement information: computing power requirements, computing accuracy requirements, computing energy consumption requirements, subtask c n priority; associated information: associated preceding subtask, data transmission rate requirement with the associated preceding subtask, data transmission bandwidth requirement with the associated preceding subtask, data throughput requirement with the associated preceding subtask, data transmission delay requirement with the associated preceding subtask, associated subsequent subtask, data transmission rate requirement with the associated subsequent subtask, data transmission bandwidth requirement with the associated subsequent subtask, data throughput requirement with the associated subsequent subtask, data transmission delay requirement with the associated subsequent subtask}.
[0165] Alternatively, the same requirement parameters or associated parameters of different subtasks may be uniformly indicated. For example, the computing power requirement for N subtasks may be expressed as {computing power requirement: computing power requirement 1, computing power requirement 2, ..., computing power requirement N}.
[0166] In a possible design, the requirement information of each subtask in the computing task and / or the associated information of each subtask can be configured in the form of a table. The requirement information of the subtask and the associated information of the subtask can be configured in different tables or in the same table, without limitation.
[0167] For example, Fig.11 As shown, taking the computing task as an AR rendering task as an example, the AR rendering task includes eight processing processes, namely, collecting source data, capturing image frames, image detection, tracking, scaling and expansion, classification, recognition merging, and image display. The first device divides the eight processing processes into eight subtasks (subtask 1 to subtask 8), namely, N=8. The demand information and associated information configuration of each subtask are shown in Table 1 below. The demand information of each subtask includes the computing power requirement (CPU cycles), and the associated information of each subtask includes the associated preceding subtask, the associated subsequent subtask, the input data volume requirement, and the output data volume requirement. The unit of input / output data volume is kilobyte (KB).
[0168] Table 1
[0169]
[0170] Based on the demand information and associated information of each subtask shown in Table 1, the first information can transmit each subtask in the AR rendering task in the following form, such as subtask n {computing power requirement parameter, input data volume requirement parameter, output data volume requirement parameter, associated preceding subtask, associated subsequent subtask}. Alternatively, the same parameters of different subtasks can be transmitted uniformly, such as {computing power requirement parameter 1, computing power requirement parameter 2, computing power requirement parameter 3, ..., computing power requirement parameter 8}, corresponding to the computing power requirements of 8 subtasks respectively, or transmitted in the form of other lists, which are not specifically limited in the embodiments of the present application.
[0171] In a possible scenario, taking the first device as a terminal device and the computing management function integrated in the access network device as an example, the first information may carry the above Figure 3 In the computing service request in, the computing service request can be carried in RRC, MAC-CE or PHY signaling.
[0172] Furthermore, in the CU-DU separated access network equipment architecture, if the computing management function is integrated in the DU, the CU can pass the first information received from the first device to the DU through an interface (such as the F1 interface) to obtain the first information.
[0173] In another possible scenario, taking the first device as a core network device or an application server in a DN, and the computing management function being integrated in an access network device as an example, the first information can be transmitted through an interface between the core network device and the access network device.
[0174] It should be understood that in the embodiments of the present application, in different scenarios, the first information can be carried in different messages, and the first information can be carried in an existing implemented message or in other defined new messages, without limitation.
[0175] S902: The computing management function sends second information to the first computing node in response to the first information. Correspondingly, the first computing node receives the second information from the computing management function.
[0176] The second information is used to indicate one or more subtasks of at least one subtask scheduled to the first computing node.
[0177] After receiving the first information, if the computing management function determines that the computing task has not been divided, the computing management function can divide the computing task into subtasks based on a preset rule, thereby obtaining the demand information and associated information of each subtask in the computing task. The specific implementation process can refer to the relevant description in S901 above, which will not be repeated here.
[0178] Further, after the computing management function obtains the demand information and associated information of each subtask in the computing task, it can combine the computing power status of each computing node in the perception network system, the network status between the first device, the network status between the computing nodes, etc., to determine one or more computing nodes and the second information corresponding to each computing node. The one or more computing nodes are the computing nodes scheduled by the computing management function to complete the computing task, and the one or more computing nodes include the first computing node. In other words, the computing management function matches the demand information and associated information of each subtask in the computing task with the computing power information and network status of the computing node, and selects the computing node that best matches the computing task, which can reduce the end-to-end delay of completing the computing task. Among them, the network status can include channel quality, transmission bit rate, transmission delay, available bandwidth size, or congestion status information. For example, when the first device is a first terminal device, the computing nodes in the network include a first terminal device, other terminal devices (such as a second terminal device), an application server, a core network device, etc., then the computing management function can perceive the network status between the first terminal device and each computing node.
[0179] In an embodiment of the present application, the second information is the computing task scheduling information. After the computing management function determines the computing node that executes the computing task, it assigns one or more subtasks to be executed for each computing node and sends corresponding scheduling information to each computing node so that each computing node can execute the subtask according to the requirements of the subtask.
[0180] For the first computing node, if the one or more subtasks scheduled to the first computing node include the second subtask, the second information corresponding to the first computing node may include requirement information of the second subtask and association information of the second subtask.
[0181] Among them, the requirement information of the second subtask is used to indicate the computing requirements that need to be met to complete the second subtask. The requirement information of the second subtask may include at least one of the following: computing latency requirements, computing power requirements, computing accuracy requirements, computing energy consumption requirements, or the priority of the second subtask.
[0182] The association information of the second subtask is used to indicate the transmission requirement between the second subtask and the preceding subtask and / or the subsequent subtask corresponding to the second subtask, and the association information of the second subtask may include at least one of the following: the data transmission direction between the second subtask and the preceding subtask and / or the subsequent subtask corresponding to the second subtask, the data transmission rate requirement between the second subtask and the preceding subtask and / or the subsequent subtask corresponding to the second subtask, the data throughput requirement between the second subtask and the preceding subtask and / or the subsequent subtask corresponding to the second subtask, the data transmission delay requirement between the second subtask and the preceding subtask and / or the subsequent subtask corresponding to the second subtask, the data transmission bandwidth requirement between the second subtask and the preceding subtask and / or the subsequent subtask corresponding to the second subtask, the location information of the computing node executing the preceding subtask corresponding to the second subtask, or the location information of the computing node executing the subsequent subtask corresponding to the second subtask. It should be understood that for the multiple subtasks assigned to the first computing node, each subtask corresponds to a requirement information and association information.
[0183] Optionally, the computing management function may further formulate a computing and communication resource allocation strategy for the selected computing node. The computing management function may pre-allocate certain computing resources for the selected computing node according to the computing and communication requirements of each subtask, and pre-allocate corresponding transmission resources for the data transmission of the subtask. In other words, the second information may also include resource information, which is used to indicate the computing resources and transmission resources allocated to the computing node.
[0184] Continuing with the example of the AR rendering task above, the computing management function schedules subtasks 1 to 7 with large computational workload and small data transmission volume to the application server for computation, and schedules subtasks 1 and 8 with small computational workload and large data transmission volume to be executed locally on the terminal device, based on the computing requirements of the subtasks in the AR rendering task and the transmission requirements between the subtasks and the preceding and / or succeeding subtasks. That is, two computing nodes are selected, including the terminal device and the application server, to reduce the end-to-end delay for completing the computing task. As shown in Table 1 above, taking subtask 1 as an example, the second information corresponding to the terminal device includes the demand information of subtask 1 and the associated information of subtask 1, wherein the demand information of subtask 1 includes the computing power requirement (such as 0), and the associated information of subtask 1 includes that the succeeding subtask of subtask 1 is subtask 2, the address of the application server that executes subtask 2, and the output data volume requirement between subtask 1 and the subtask (reaching 225KB).
[0185] Thus, after selecting the computing nodes, the computing management function sends the corresponding second information to each selected computing node. Optionally, the second information can be carried in Figure 3It should be understood that in the embodiment of the present application, the second information may also be carried in a message of an existing implementation, or may also be carried in a new message defined elsewhere, and this is not limited.
[0186] Furthermore, each computing node may execute the assigned subtask according to the corresponding second information to complete the computing task.
[0187] In a possible design scheme, one or more computing nodes may also include a second computing node. In this case, the first device may send the first data to the second computing node. Correspondingly, the second computing node receives the first data from the first device. The first data is used to complete the subtask scheduled to the second computing node. In the case where the first device is not the computing node selected for completing the computing task, if the second computing node is the computing node that executes the starting subtask, the first data can be used as input data for the starting subtask, and the first data is provided by the first device; in the case where the first device is the computing node selected for completing the computing task, the first data can be the output data of the subtask executed by the first device, and used as the input data of the subtask executed by the second computing node.
[0188] In the above example, the process of the terminal device and the application server completing the AR rendering task is as follows:
[0189] After the terminal device completes subtask 1 (collecting source data) as required, it sends the output data of subtask 1 (RGB image) to the application server as the input data of subtask 2 (image frame capture); after the application server completes subtask 2, it uses the output data of subtask 2 (grayscale image) as the input data of subtask 3 (image detection) and subtask 5 (expansion and scaling); after completing subtask 3, it uses the output data of subtask 3 (object position) as the input data of subtask 4 (tracking); after completing subtask 4, it uses the output data of subtask 4 (object position) as the input data of subtask 5 and subtask 8 (screen display) The output data of subtask 4 is sent to the terminal device. At this time, when executing subtask 5, the output data of subtask 2 and the output data of subtask 4 are used as the input data of subtask 5; after executing subtask 5, the output data of subtask 5 (grayscale image) is used as the input data of subtask 6 (classification); after executing subtask 6, the output data (feature value) of subtask 6 is used as the input data of subtask 7 (recognition and merging). After executing subtask 7, the output data (label) of subtask 7 is sent to the terminal device as the input of subtask 8. At this time, the application server completes the scheduled subtask. Furthermore, the terminal device uses the output data of subtask 4, the output data of subtask 7, and the output data of subtask 1 as the input of subtask 8. After executing subtask 8, the screen can be displayed on the terminal device. At this time, the entire AR rendering task is completed.
[0190] In a possible design solution, S902 may be replaced by the following S903 and S904:
[0191] S903: The computing management function sends third information to the first device in response to the first information. Correspondingly, the first device receives the third information from the computing management function.
[0192] The third information includes an identifier of the first computing node and the second information corresponding to the first computing node. It should be understood that the first computing node is any one of the one or more computing nodes scheduled / selected, and the third information may include an identifier of the one or more computing nodes scheduled / selected and the second information corresponding to each computing node.
[0193] S904: The first device sends the second information to the first computing node. Correspondingly, the first computing node receives the second information from the first device.
[0194] That is to say, after selecting the computing node, the computing management function informs the first device of all the selected computing nodes and the scheduling information (second information) of each computing node through the third information, and the first device sends the scheduling information to the selected computing node according to the identification of each computing node.
[0195] Taking the first device as the terminal device that executes subtask 1 and subtask 2 in the above example, the first computing node can be an application server that executes subtasks 2 to 7. The terminal device can determine the subtasks and subtask requirements it executes, as well as the subtasks and subtask requirements executed by the application server based on the received third information, and send the second information corresponding to the application server to the application server, such as the APP of the terminal device notifying the application server through metadata (meta data) carrying the second information corresponding to the application server. Metadata is a description and context of data, which is used to organize, find and understand data. Metadata elements may include titles and descriptions, tags and categories, who created it, when it was created, who last modified it, when it was modified, or who can access or update it.
[0196] Therefore, the terminal device and the application server complete the assigned subtasks according to the corresponding second information respectively. The specific implementation process can be found in the relevant description in S902 above, which will not be repeated here.
[0197] based on Fig. 9The computing task scheduling method shown decomposes complex computing tasks such as AR, VR, and machine vision into multiple computing subtasks. The computing management function can determine the computing and communication requirements of each subtask in the computing task through the received first information, and schedule the subtasks to one or more suitable computing nodes for execution according to the computing and communication requirements of the subtasks, thereby improving the utilization rate of computing power resources and transmission resources, while ensuring the service experience of the business.
[0198] Combine the following Figure 6 The 5GS shown in the figure is integrated with computing management functions in access network equipment based on CU-DU separation architecture and in Figure 8 In the access network device based on the O-RAN architecture shown, the first device is taken as a terminal device as an example, and the two selected computing nodes include the first device and the application server deployed in the DN as an example to illustrate the sending process of the first information and the second information (scheduling information).
[0199] In the scenario where the computing management function is integrated into the access network equipment based on the CU-DU separation architecture:
[0200] In one possible scenario, the computation management function is integrated into the CU, such as Fig.12 As shown in (a):
[0201] S1201a: The terminal device sends first information to the DU. Correspondingly, the DU receives the first information from the terminal device.
[0202] Optionally, the first information may be carried in RRC, MAC-CE or PHY signaling and sent, which is not limited to this. For the relevant description of the first information, please refer to the relevant description in the above S901, which will not be repeated here.
[0203] S1202a: DU sends first information to CU. Correspondingly, CU receives the first information from DU.
[0204] Among them, after the CU obtains the first information, the decision-making and scheduling process of selecting a computing node and determining the second information (scheduling information) corresponding to each computing node can refer to the relevant description in the above S902, which will not be repeated here.
[0205] S1203a, the CU sends the second information corresponding to the terminal device to the DU. Correspondingly, the DU receives the second information corresponding to the terminal device from the CU.
[0206] S1204a, the DU sends the second information corresponding to the terminal device to the terminal device. Correspondingly, the terminal device receives the second information corresponding to the terminal device from the DU.
[0207] Optionally, the second information (scheduling information) corresponding to the terminal device can be carried and sent in DCI or MAC-CE signaling.
[0208] S1205a: The CU sends the second information corresponding to the application server to the application server. Correspondingly, the application server receives the second information corresponding to the application server from the CU.
[0209] Exemplarily, the CU may send the second information corresponding to the application server carried in one or more uplink data general packet radio service (GPRS) tunneling protocol user plane part protocol (GTP-U) message headers to the UPF, so that after the UPF detects the GTP-U message header of the uplink data, it parses and obtains the second information corresponding to the application server, and then the UPF sends the second information corresponding to the application server to the application server through the NEF or Local-NEF in the form of an application programming interface (API). Alternatively, the UPF modifies the transmitted data packet message header, adds the second information corresponding to the application server, and sends it to the application server. For example: the UPF adds the second information corresponding to the application server in the message header of the data packet encapsulated using the user datagram protocol (UDP) or the quick UDP internet connections (QUIC) protocol or the real-time transport protocol (RTP).
[0210] It should be understood that the embodiment of the present application does not limit the execution order of S1203a and S1205a. The two can be executed simultaneously or at different times, and there is no limitation on this.
[0211] In one possible scenario, Figure 7As shown, CU is further separated into CU-CP and CU-UP. If the computing management function is integrated in CU-CP, CU-CP needs to further send the second information corresponding to the terminal device to CU-UP. At this time, CU-UP sends the second information corresponding to the terminal device to the terminal device, and the second information corresponding to the terminal device can be carried in the PDCP control PDU. In addition, CU-UP sends the second information corresponding to the application server to the application server by sending uplink data to UPF, and the GTP-U header of the uplink data carries the second information corresponding to the application server. Alternatively, DU sends the second information corresponding to the application server to CU-UP, and CU-UP carries the second information corresponding to the application server in the GTP-U header of the uplink data and sends it to the application server.
[0212] Furthermore, the terminal device and the application server may execute the assigned subtasks according to the corresponding second information to complete the computing task.
[0213] In another possible scenario, the computing management function is integrated into the DU, such as Fig.12 As shown in (b):
[0214] S1201b: The terminal device sends the first information to the DU. Correspondingly, the DU receives the first information from the terminal device.
[0215] S1202b, DU sends the second information corresponding to the terminal device and the second information corresponding to the application server to CU. Correspondingly, CU receives the second information corresponding to the terminal device and the second information corresponding to the application server from DU.
[0216] S1203b, the CU sends the second information corresponding to the terminal device to the terminal device. Correspondingly, the terminal device receives the second information corresponding to the terminal device from the CU.
[0217] The second information corresponding to the terminal device can be carried in an RRC message or PDCP control PDU.
[0218] S1204b: The CU sends the second information corresponding to the application server to the application server. Correspondingly, the application server receives the second information corresponding to the application server from the CU.
[0219] The specific implementation process of S1204b can refer to the relevant description in the above S1205a, which will not be repeated here.
[0220] It should be understood that the embodiment of the present application does not limit the execution order of S1203b and S1204b, and the two can be executed simultaneously or at different times. The relevant description of the first information and the second information can also refer to the relevant description in the above S901 to S902, which will not be repeated here.
[0221] In one possible scenario, Figure 7 As shown, the computing management function is integrated in the DU and the CU is further separated into CU-CP and CU-UP. The DU can send the second information corresponding to the terminal device and the second information corresponding to the application server to the CU-UP, or the DU can send the second information corresponding to the terminal device and the second information corresponding to the application server to the CU-CP, and the CU-CP sends the second information corresponding to the terminal device and the second information corresponding to the application server to the CU-UP, so that the CU-UP carries the second information corresponding to the terminal device in the PDCP control PDU and sends it, and carries the second information corresponding to the application server in the GTP-U header of the uplink data to the application server.
[0222] In computing management functions are integrated in Figure 8 In the scenario of access network equipment based on O-RAN architecture shown in the figure:
[0223] In one possible scenario, the computation management function is integrated into the NRT-RIC of the access network device, such as Fig.13 As shown:
[0224] S1301: The terminal device sends first information to the NRT-RIC. Correspondingly, the NRT-RIC receives the first information from the terminal device.
[0225] In a possible implementation, the first information may be sent by the CU or DU to the NRT-RIC.
[0226] In another possible implementation scheme, the first information may be sent by the DU to the CU, and then by the CU to the NRT-RIC.
[0227] S1302a, NRT-RIC sends the second information corresponding to the terminal device to DU. Correspondingly, DU receives the second information corresponding to the terminal device from NRT-RIC.
[0228] S1303a, the DU sends the second information corresponding to the terminal device to the terminal device. Correspondingly, the terminal device receives the second information corresponding to the terminal device from the DU.
[0229] At this time, the second information corresponding to the terminal device can be carried in DCI or MAC CE.
[0230] Alternatively, the above S1302a to S1303a may be replaced by the following S1302b to S1303b:
[0231] S1302b, NRT-RIC sends the second information corresponding to the terminal device to CU. Correspondingly, CU receives the second information corresponding to the terminal device from NRT-RIC.
[0232] S1303b, the CU sends the second information corresponding to the terminal device to the terminal device. Correspondingly, the terminal device receives the second information corresponding to the terminal device from the CU.
[0233] At this time, the second information corresponding to the terminal device can be carried in the RRC message or PDCP control PDU.
[0234] In a possible implementation, the second information corresponding to the terminal device may be sent by the CU to the DU, and then sent by the DU to the terminal device.
[0235] In one possible scenario, if the CU is further divided into CU-CP and CU-UP, the NRT-RIC can send the second information corresponding to the terminal device to the CU-CP or CU-UP, and then the CU-CP or CU-UP sends the second information corresponding to the terminal device to the terminal device.
[0236] S1304, NRT-RIC sends the second information corresponding to the application server to CU. Correspondingly, CU receives the second information corresponding to the application server from NRT-RIC.
[0237] S1305: The CU sends the second information corresponding to the application server to the application server. Correspondingly, the application server receives the second information corresponding to the application server from the CU.
[0238] In a scenario where the CU is further divided into CU-CP and CU-UP, the NRT-RIC may send the second information corresponding to the application server to the CU-UP, and the CU-UP may then send the second information corresponding to the application server to the application server.
[0239] Exemplarily, CU or CU-UP can carry the second information corresponding to the application server in one or more GTP-U message headers of uplink data and send it to UPF. UPF detects the GTP-U message header of the uplink data and obtains the second information corresponding to the application server, so that UPF notifies the application server of the second information corresponding to the application server through NEF or Local-NEF in API mode.
[0240] It should be understood that the embodiment of the present application does not limit the execution order of the above S1302a or S1302b and S1304, and the relevant description of the first information and the second information can also refer to the relevant description in the above S901~S902, which will not be repeated here.
[0241] In the embodiments of the present application, the computing management function is deployed in the access network device (such as NG-RAN) and the access network device decides the scheduling result of the computing task. It should be understood that the method provided in the embodiments of the present application can also be used by the core network (such as 5GC) to decide the scheduling result of the computing task. The implementation process only needs to make a small number of simple modifications. For example, NG-RAN notifies 5GC of the network status in real time. When 5GC decides on the scheduling result of the computing task, it tells NG-RAN the decision result, and NG-RAN further notifies UE. There is no limitation on this.
[0242] It can be understood that in each of the above embodiments, the methods and / or steps implemented by the first device can also be implemented by components that can be used for the first device (such as a processor, chip, chip system, circuit, logic module, or software); the methods and / or steps implemented by the computing management function can also be implemented by components that can be used for the computing management function (such as a processor, chip, chip system, circuit, logic module, or software).
[0243] The above mainly introduces the scheme provided by the present application. Accordingly, the present application also provides a communication device, which is used to implement various methods in the above method embodiments. The communication device can be the first device in the above method embodiments, or a device including the first device, or a component that can be used for the first device, such as a chip or a chip system. Alternatively, the communication device can be the computing management function in the above method embodiments, or a device including the computing management function, or a component that can be used for the computing management function, such as a chip or a chip system.
[0244] It is understandable that, in order to realize the above functions, the communication device includes hardware structures and / or software modules corresponding to the execution of each function. Those skilled in the art should easily realize that, in combination with the units and algorithm steps of each example described in the embodiments disclosed herein, the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a function is executed in the form of hardware or computer software driving hardware depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.
[0245] The embodiment of the present application can divide the functional modules of the communication device according to the above method embodiment. For example, each functional module can be divided according to each function, or two or more functions can be integrated into one processing module. The above integrated module can be implemented in the form of hardware or in the form of software functional modules. It should be noted that the division of modules in the embodiment of the present application is schematic and is only a logical function division. There may be other division methods in actual implementation.
[0246] Take the communication device as the first device or the computing management function in the above method embodiment as an example, Fig.14 Schematic diagram of a communication device provided in an embodiment of the present application. Fig.14 As shown, the communication device 1400 includes: a processing module 1401 and a transceiver module 1402. The processing module 1401 is used to perform the processing function of the first device or computing management function in the above method embodiment. The transceiver module 1402 is used to perform the transceiver function of the first device or computing management function in the above method embodiment.
[0247] Among them, all relevant contents of each step involved in the above method embodiment can be referred to the functional description of the corresponding functional module, and will not be repeated here.
[0248] Since the communication device 1400 provided in this embodiment can execute the above-mentioned computing task scheduling method, the technical effects that can be obtained can refer to the above-mentioned method embodiment and will not be repeated here.
[0249] In a possible design scheme, in the embodiment of the present application, the transceiver module 1402 may include a receiving module and a sending module ( Fig.14 The transceiver module is used to implement the sending function and the receiving function of the communication device 1400.
[0250] In a possible design solution, the communication device 1400 may further include a storage module ( Fig.14 (not shown in the figure), the storage module stores a program or instruction. When the processing module 1401 executes the program or instruction, the communication device 1400 can execute Fig. 9 The method shown herein is a first device or computing management function.
[0251] It should be understood that the processing module 1401 involved in the communication device 1400 can be implemented by a processor or a processor-related circuit component, which can be a processor or a processing unit; the transceiver module 1402 can be implemented by a transceiver or a transceiver-related circuit component, which can be a transceiver or a transceiver unit.
[0252] For example, Fig.15This is a schematic diagram of the structure of another communication device provided in an embodiment of the present application. The communication device may be a first device or a computing management function, or may be a chip (system) or other component or assembly that can be set in the first device or the computing management function. Fig.15 As shown, the communication device 1500 may include a processor 1501. In a possible design, the communication device 1500 may also include a memory 1502 and / or a transceiver 1503. The processor 1501 is coupled to the memory 1502 and the transceiver 1503, such as being connected via a communication bus.
[0253] Combine the following Fig.15 The components of the communication device 1500 are described in detail:
[0254] The processor 1501 is the control center of the communication device 1500, and may be a processor or a general term for multiple processing elements. For example, the processor 1501 is one or more central processing units (CPUs), or may be application specific integrated circuits (ASICs), or may be configured to implement one or more integrated circuits of the embodiments of the present application, such as one or more microprocessors (digital signal processors, DSPs), or one or more field programmable gate arrays (FPGAs).
[0255] In one possible design, processor 1501 may execute various functions of communication device 1500 by running or executing software programs stored in memory 1502 and calling data stored in memory 1502 .
[0256] In a specific implementation, as an embodiment, the processor 1501 may include one or more CPUs, such as Fig.15 CPU0 and CPU1 are shown in FIG.
[0257] In a specific implementation, as an embodiment, the communication device 1500 may also include multiple processors, such as Fig.15 1501 and 1504 are shown in FIG. Each of these processors may be a single-core processor (single-CPU) or a multi-core processor (multi-CPU). A processor herein may refer to one or more devices, circuits, and / or processing cores for processing data (e.g., computer program instructions).
[0258] The memory 1502 is used to store the software program for executing the solution of the present application, and the execution is controlled by the processor 1501. The specific implementation method can refer to the above method embodiment, which will not be repeated here.
[0259] In a possible design, the memory 1502 may be a read-only memory (ROM) or other types of static storage devices that can store static information and instructions, a random access memory (RAM) or other types of dynamic storage devices that can store information and instructions, or an electrically erasable programmable read-only memory (EEPROM), a compact disc read-only memory (CD-ROM) or other optical disc storage, optical disc storage (including compressed optical disc, laser disc, optical disc, digital versatile disc, Blu-ray disc, etc.), a magnetic disk storage medium or other magnetic storage device, or any other medium that can be used to carry or store the desired program code in the form of instructions or data structures and can be accessed by a computer, but is not limited thereto. The memory 1502 may be integrated with the processor 1501, or may exist independently and access the processor 1501 through the interface circuit ( Fig.15 1502 is coupled to the processor 1501, which is not specifically limited in the embodiment of the present application.
[0260] The transceiver 1503 is used for communication with other communication devices. For example, the communication device 1500 is a terminal device, and the transceiver 1503 can be used to communicate with a network device, or with another terminal device. For another example, the communication device 1500 is a network device, and the transceiver 1503 can be used to communicate with a terminal device, or with another network device.
[0261] In one possible design, transceiver 1503 may include a receiver and a transmitter ( Fig.15 The receiver is used to implement a receiving function, and the transmitter is used to implement a sending function.
[0262] In a possible design, the transceiver 1503 may be integrated with the processor 1501, or may exist independently and communicate with the processor 1501 through the interface circuit ( Fig.15 1502 is coupled to the processor 1501, which is not specifically limited in the embodiment of the present application.
[0263] It should be noted that Fig.15The structure of the communication device 1500 shown in the figure does not constitute a limitation on the communication device. The actual communication device may include more or fewer components than those shown in the figure, or combine certain components, or arrange the components differently.
[0264] In addition, the technical effects of the communication device 1500 can refer to the technical effects of the computing task scheduling method described in the above method embodiment, and will not be repeated here.
[0265] The embodiment of the present application also provides a computer-readable storage medium on which a computer program or instruction is stored. When the computer program or instruction is executed by a computer, the functions of the above-mentioned method embodiment are realized.
[0266] The embodiment of the present application also provides a computer program product, which implements the functions of the above method embodiment when executed by a computer.
[0267] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When implemented using a software program, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When loading and executing computer program instructions on a computer, the process or function according to the embodiment of the present application is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. Computer instructions can be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, computer instructions can be transmitted from a website site, computer, server or data center by wired (e.g., coaxial cable, optical fiber, digital subscriber line (digital subscriber line, DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) mode to another website site, computer, server or data center. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server, data center, etc. that contains one or more servers that can be integrated with a medium. The available medium may be a magnetic medium (eg, a floppy disk, a hard disk, a magnetic tape), an optical medium (eg, a DVD), or a semiconductor medium (eg, a solid state disk (SSD)).
[0268] Those of ordinary skill in the art will appreciate that the units and algorithm steps of each example 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 performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.
[0269] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0270] In the several embodiments provided in the present application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.
[0271] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0272] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
[0273] If the functions are implemented in the form of 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 the present application can be essentially or partly embodied in the form of a software product that contributes to the prior art. The computer software product is stored in a storage medium and includes several instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the methods described in the various embodiments of the present application. The aforementioned storage media include: various media that can store program codes, such as USB flash drives, mobile hard disks, read-only memories (ROM), random access memories (RAM), magnetic disks or optical disks.
[0274] Although the present application is described herein in conjunction with various embodiments, in the process of implementing the claimed application, those skilled in the art may understand and implement other changes to the disclosed embodiments by viewing the drawings, the disclosure, and the appended claims. In the claims, the word "comprising" does not exclude other components or steps, and "one" or "an" does not exclude multiple situations. A single processor or other unit may implement several functions listed in the claims. Certain measures are recorded in different dependent claims, but this does not mean that these measures cannot be combined to produce good results.
[0275] Although the present application has been described in conjunction with specific features and embodiments thereof, it is obvious that various modifications and combinations may be made thereto without departing from the spirit and scope of the present application. Accordingly, this specification and the drawings are merely exemplary illustrations of the present application as defined by the appended claims, and are deemed to have covered any and all modifications, variations, combinations or equivalents within the scope of the present application. Obviously, those skilled in the art may make various modifications and variations to the present application without departing from the spirit and scope of the present application. Thus, if these modifications and variations of the present application fall within the scope of the claims of the present application and their equivalents, the present application is also intended to include these modifications and variations.
Claims
1. A computing task scheduling method, characterized in that: The method comprises: receiving first information, the first information being used to indicate a requirement for a computing task of a first device, the computing task including at least one subtask; In response to the first information, second information is sent, the second information being used to indicate one or more subtasks of the at least one subtask scheduled to the first computing node.
2. The method according to claim 1, characterized in that The method further comprises: One or more computing nodes and second information corresponding to each of the computing nodes are determined, the one or more computing nodes including the first computing node.
3. A computing task scheduling method, characterized in that: The method comprises: Sending first information, where the first information is used to indicate a requirement for a computing task of the first device, where the computing task includes at least one subtask; receiving third information, the third information including an identifier of a first computing node and second information corresponding to the first computing node, the second information being used to indicate one or more subtasks of the at least one subtask scheduled to the first computing node; The second information is sent.
4. The method according to claim 3, characterized in that The first computing node is one of one or more computing nodes scheduled to complete the computing task.
5. The method according to claim 4, characterized in that The one or more computing nodes include a second computing node, and the method further includes: Sending first data to the second computing node, where the first data is used to complete a subtask scheduled to the second computing node.
6. A computing task scheduling method, characterized in that: The method comprises: The computing management function receives first information indicating a requirement for a computing task of a first device, the computing task including at least one subtask; The computing management function sends second information to the first computing node in response to the first information, wherein the second information is used to indicate one or more subtasks of the at least one subtask scheduled to the first computing node.
7. The method according to any one of claims 1 to 6, characterized in that The first information is also used to indicate the association relationship between each subtask in the computing task and a preceding subtask and / or a succeeding subtask.
8. The method according to claim 7, characterized in that The association relationship includes at least one of the following: data transmission direction, data transmission rate requirement, data throughput requirement, data transmission delay requirement, or data transmission bandwidth requirement.
9. The method according to claim 7 or 8, characterized in that: The computing task includes a first subtask, the input data of the first subtask is the output data of a preceding subtask corresponding to the first subtask, and the output data of the first subtask is the input data of a subsequent subtask corresponding to the first subtask.
10. The method according to any one of claims 1 to 9, characterized in that The one or more subtasks include a second subtask, and the second information corresponding to the first computing node includes requirement information of the second subtask and association information of the second subtask; The requirement information is used to indicate the computing requirements that need to be met to complete the second subtask, and the association information is used to indicate the transmission requirements between the second subtask and the preceding subtask and / or the succeeding subtask corresponding to the second subtask.
11. The method according to claim 10, characterized in that The requirement information includes at least one of the following: computing latency requirement, computing power requirement, computing accuracy requirement, computing energy consumption requirement, or the priority of the second subtask.
12. The method according to claim 10 or 11, characterized in that: The associated information includes at least one of the following: the data transmission direction between the second subtask and the preceding subtask and / or the subsequent subtask corresponding to the second subtask, the data transmission rate requirement between the second subtask and the preceding subtask and / or the subsequent subtask corresponding to the second subtask, the data throughput requirement between the second subtask and the preceding subtask and / or the subsequent subtask corresponding to the second subtask, the data transmission delay requirement between the second subtask and the preceding subtask and / or the subsequent subtask corresponding to the second subtask, the data transmission bandwidth requirement between the second subtask and the preceding subtask and / or the subsequent subtask corresponding to the second subtask, the location information of the computing node executing the preceding subtask corresponding to the second subtask, or the location information of the computing node executing the subsequent subtask corresponding to the second subtask.
13. The method according to any one of claims 1 to 12, characterized in that The computing task is represented by a directed acyclic graph, each vertex in the directed acyclic graph includes requirement information of a subtask in the computing task, and each edge in the directed acyclic graph includes association information between a subtask in the computing task and a corresponding preceding subtask and / or succeeding subtask.
14. The method according to any one of claims 1 to 13, characterized in that The requirement of the computing task includes at least one of the following: the type of the computing task, the input data rate, the output data rate, the computing latency, the computing power, the computing accuracy, or the computing energy consumption.
15. The method according to any one of claims 1 to 14, characterized in that The first device and the first computing node are deployed in a wireless communication network.
16. The method according to any one of claims 1 to 15, characterized in that The first device and the first computing node are terminal equipment, access network equipment, core network equipment or mobile edge computing platform.
17. A communication device, characterized in that: The device comprises: a processing module and a transceiver module; wherein, The processing module is used to control the transceiver module to receive first information, where the first information is used to indicate a requirement for a computing task of the first device, where the computing task includes at least one subtask; The processing module is further used to control the transceiver module to send second information in response to the first information, where the second information is used to indicate one or more subtasks of the at least one subtask scheduled to the first computing node.
18. The device according to claim 17, characterized in that The processing module is further used to determine one or more computing nodes and second information corresponding to each of the computing nodes, wherein the one or more computing nodes include the first computing node.
19. A communication device, characterized in that: The device comprises: a processing module and a transceiver module; wherein, The processing module is used to control the transceiver module to send first information, where the first information is used to indicate a requirement for a computing task of the first device, where the computing task includes at least one subtask; The processing module is further used to control the transceiver module to receive third information, where the third information includes an identifier of the first computing node and second information corresponding to the first computing node, where the second information is used to indicate one or more subtasks of the at least one subtask scheduled to the first computing node; The processing module is further used to control the transceiver module to send the second information.
20. The device according to claim 19, characterized in that The first computing node is one of one or more computing nodes scheduled to complete the computing task.
21. The device according to claim 20, characterized in that The one or more computing nodes include a second computing node; The processing module is further used to control the transceiver module to send first data to the second computing node, where the first data is used to complete the subtask scheduled to the second computing node.
22. The device according to any one of claims 17 to 21, characterized in that The first information is also used to indicate the association relationship between each subtask in the computing task and a preceding subtask and / or a succeeding subtask.
23. The device according to claim 22, characterized in that The association relationship includes at least one of the following: data transmission direction, data transmission rate requirement, data throughput requirement, data transmission delay requirement, or data transmission bandwidth requirement.
24. The device according to claim 22 or 23, characterized in that The computing task includes a first subtask, the input data of the first subtask is the output data of a preceding subtask corresponding to the first subtask, and the output data of the first subtask is the input data of a subsequent subtask corresponding to the first subtask.
25. The device according to any one of claims 17 to 24, characterized in that The one or more subtasks include a second subtask, and the second information corresponding to the first computing node includes requirement information of the second subtask and association information of the second subtask; The requirement information is used to indicate the computing requirements that need to be met to complete the second subtask, and the association information is used to indicate the transmission requirements between the second subtask and the preceding subtask and / or the succeeding subtask corresponding to the second subtask.
26. The device according to claim 25, characterized in that The requirement information includes at least one of the following: computing latency requirement, computing power requirement, computing accuracy requirement, computing energy consumption requirement, or the priority of the second subtask.
27. The device according to claim 25 or 26, characterized in that The associated information includes at least one of the following: the data transmission direction between the second subtask and the preceding subtask and / or the subsequent subtask corresponding to the second subtask, the data transmission rate requirement between the second subtask and the preceding subtask and / or the subsequent subtask corresponding to the second subtask, the data throughput requirement between the second subtask and the preceding subtask and / or the subsequent subtask corresponding to the second subtask, the data transmission delay requirement between the second subtask and the preceding subtask and / or the subsequent subtask corresponding to the second subtask, the data transmission bandwidth requirement between the second subtask and the preceding subtask and / or the subsequent subtask corresponding to the second subtask, the location information of the computing node executing the preceding subtask corresponding to the second subtask, or the location information of the computing node executing the subsequent subtask corresponding to the second subtask.
28. The device according to any one of claims 17 to 27, characterized in that The computing task is represented by a directed acyclic graph, each vertex in the directed acyclic graph includes requirement information of a subtask in the computing task, and each edge in the directed acyclic graph includes association information between a subtask in the computing task and a corresponding preceding subtask and / or succeeding subtask.
29. The device according to any one of claims 17 to 28, characterized in that The requirement of the computing task includes at least one of the following: the type of the computing task, the input data rate, the output data rate, the computing latency, the computing power, the computing accuracy, or the computing energy consumption.
30. The device according to any one of claims 17 to 29, characterized in that The communication device is deployed in a wireless communication network.
31. The device according to any one of claims 17 to 30, characterized in that The communication device is a terminal device, an access network device, a core network device or a mobile edge computing platform.
32. A communication device, characterized in that: include: A processor and an interface circuit, wherein the interface circuit is used to receive signals from other communication devices outside the communication device and transmit them to the processor or send signals from the processor to other communication devices outside the communication device, and the processor is used to implement the method as described in any one of claims 1 to 16 through a logic circuit or executing code instructions.
33. A computer-readable storage medium, characterized in that: The storage medium stores a computer program or an instruction. When the computer program or the instruction is executed by the communication device, the method according to any one of claims 1 to 16 is implemented.
Citation Information
Cited By
Air-ground integration-oriented deterministic edge computing power network unmanned aerial vehicle auxiliary deployment and task scheduling method
CN120343565A
Task processing method, terminal, network element and related equipment
CN120434671A
Fully mechanized coal mining task arrangement method, hydraulic support and computer readable storage medium
CN121279749A
Computing task scheduling method and communication apparatus
EP4718250A1
Computing task scheduling method and communication apparatus
WO2025007648A1