Resource scheduling method, system and device, computer device and storage medium
By selecting edge nodes with closer communication distances to process task data on the terminal, the problem of insufficient terminal GPU resources was solved, and real-time rendering of 3D medical images was achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- SHANGHAI LIANYING ZHIYUAN MEDICAL TECH CO LTD
- Filing Date
- 2020-12-02
- Publication Date
- 2026-04-21
AI Technical Summary
In existing technologies, terminal devices struggle to meet real-time requirements when rendering 3D medical images due to limited GPU resources, and cloud-based GPU resources are also limited by network bandwidth, failing to meet high real-time demands.
By selecting a target edge node with a relatively short communication distance from multiple edge nodes, utilizing its resources to perform task data processing, and receiving the execution results, the high bandwidth dependence on the cloud is avoided.
When terminal resources are insufficient, task data is processed through edge nodes, which meets real-time requirements, reduces dependence on communication bandwidth, and solves the problem of insufficient terminal GPU resources.
Smart Images

Figure CN116600017B_ABST
Abstract
Description
[0001] This application is a divisional application filed on December 2, 2020, with application number 202011386668.6 and invention title "Resource Scheduling Method, System, Apparatus, Computer Equipment and Storage Medium". Technical Field
[0002] This application relates to the field of Internet technology, and in particular to a resource scheduling method, system, apparatus, computer equipment, and storage medium. Background Technology
[0003] With the development of science and technology, the medical field has begun to use 3D medical images for disease analysis. Compared to 2D images, 3D medical images have a stronger display effect and are more conducive to disease detection. However, 3D medical images contain a large amount of image data, requiring more advanced rendering technology and consuming more GPU resources.
[0004] Currently, 3D imaging applications require the terminal itself to provide GPU resources. However, the GPU resources provided by the terminal itself are limited, and when there are many rendering tasks, they often cannot meet the needs of 3D image rendering. Existing technologies propose to provide GPU resources through the cloud to realize 3D image rendering on the terminal.
[0005] However, due to network bandwidth limitations, the aforementioned method of providing GPU resources via the cloud is insufficient to meet the real-time requirements of 3D image rendering tasks. Summary of the Invention
[0006] Therefore, it is necessary to provide a resource scheduling method, system, device, computer equipment, and storage medium that can meet the real-time requirements in response to the above-mentioned technical problems.
[0007] Firstly, a resource scheduling method is provided, the method comprising:
[0008] The target edge node is determined from multiple edge nodes; the communication distance between the edge node and the terminal is less than the communication distance between the terminal and the cloud server;
[0009] The task data to be processed is sent to the target edge node so that the target edge node can perform corresponding operations based on the task data.
[0010] Receive the execution results sent by the target edge node.
[0011] In one embodiment, determining the target edge node from a plurality of edge nodes includes:
[0012] The first edge node is determined based on the communication distance, and a task request is sent to the first edge node;
[0013] If a first task response is received from the first edge node, the first edge node is identified as the target edge node; the first task response is used to indicate that the first edge node has idle resources.
[0014] In one embodiment, the method further includes:
[0015] The terminal receives a second task response from the cloud server. The second task response includes the identifier of the target edge node. The target edge node is a second edge node with available resources that the cloud server requests to allocate to the terminal when the resources of the first edge node are insufficient. The communication distance between the second edge node and the terminal is greater than the communication distance between the first edge node and the terminal.
[0016] Based on the response to the second task, the target edge node is determined.
[0017] In one embodiment, determining the target edge node from a plurality of edge nodes includes:
[0018] Send a task request to the cloud server;
[0019] Receive a third task response from the cloud server; the third task response includes the identifier of the target edge node; the target edge node is the third edge node with the closest communication distance to the terminal among at least one edge node with idle resources determined by the cloud server.
[0020] Based on the response of the third task, the target edge node is determined.
[0021] Secondly, a resource scheduling method is provided, the method comprising:
[0022] The terminal receives a task request; the task request is used to request the edge node to perform operations on the task data. The communication distance between the edge node and the terminal is less than the communication distance between the terminal and the cloud server.
[0023] If it has available resources, it returns a task response to the terminal.
[0024] The receiving terminal executes the corresponding operation based on the task data sent in the task response and returns the execution result to the terminal.
[0025] In one embodiment, the method further includes:
[0026] When its own resources are occupied, it sends a task request to the cloud server. The task request is used to instruct the cloud server to allocate an edge node with idle resources to the terminal.
[0027] In one embodiment, the above-mentioned execution of corresponding operations based on task data and return of execution results to the terminal includes:
[0028] If the task data is computation task data, then the computation resources are invoked to perform computation operations on the computation task data, obtain the computation results, and return the computation results to the terminal;
[0029] If the task data is rendering task data, then allocate rendering resources for the rendering task data, call the rendering resources to perform rendering operations, obtain the rendering results, return the rendering results to the terminal, receive the rendering operation completion instruction sent by the terminal, and release the rendering resources.
[0030] Thirdly, a resource scheduling method is provided, the method comprising:
[0031] Receive task requests; the task requests include the terminal identifier of the terminal;
[0032] Based on the terminal identifier, the target edge node is determined from at least one edge node with idle resources; the communication distance between the terminal and the edge node is less than the communication distance between the terminal and the cloud server; the target edge node is the edge node with the closest communication distance to the terminal.
[0033] The terminal returns a first task response and sends control commands to the target edge node. The first task response instructs the terminal to send task data to the target edge node, and the control commands instruct the target edge node to perform corresponding operations based on the task data and return the execution results to the terminal.
[0034] In one embodiment, the method further includes:
[0035] If no edge node with available resources exists, a second task response is returned to the terminal; the second task response is used to instruct the terminal to send task data to the cloud server.
[0036] Receive task data, perform corresponding operations based on the task data, and return the execution results to the terminal.
[0037] In one embodiment, the above-mentioned execution of corresponding operations based on the task data and return of execution results to the terminal includes:
[0038] Select the appropriate task data processing method based on the type of task data to obtain the calculation results;
[0039] The task data processing method includes at least one of the following: calling computing resources to perform computing operations, allocating computing resources and calling computing resources to perform computing operations, and delaying the execution of task data processing; or, displaying the type of task data and requesting the user to select task data processing.
[0040] In one embodiment, the above-mentioned selection of the appropriate task data processing method based on the type of task data includes:
[0041] Select the task data processing method based on the pre-set correspondence between the task data type and the task data processing method.
[0042] In one embodiment, the correspondence between the types of task data and the processing methods of task data is obtained by training a machine learning method.
[0043] In one embodiment, the above-mentioned execution of corresponding operations based on task data and return of execution results to the terminal includes:
[0044] If the task data is computation task data, then the computation resources are invoked to perform computation operations on the computation task data, obtain the computation results, and return the computation results to the terminal;
[0045] If the task data is rendering task data, then allocate rendering resources for the rendering task data, call the rendering resources to perform rendering operations, obtain the rendering results, return the rendering results to the terminal, receive the rendering operation completion instruction sent by the terminal, and release the rendering resources.
[0046] Fourthly, a resource scheduling system is provided, which includes terminals, edge nodes, and cloud servers;
[0047] A terminal for executing the resource scheduling method provided in the first aspect above;
[0048] Edge nodes are used to execute the resource scheduling method provided in the second aspect above;
[0049] A cloud server is used to execute the resource scheduling method provided in the third aspect above.
[0050] Fifthly, a resource scheduling device is provided, the device comprising:
[0051] The determination module is used to identify the target edge node from multiple edge nodes; the communication distance between the edge node and the terminal is less than the communication distance between the terminal and the cloud server;
[0052] The sending module is used to send the task data to be processed to the target edge node, so that the target edge node can perform corresponding operations based on the task data.
[0053] The receiving module is used to receive the execution results sent by the target edge node.
[0054] Sixthly, a resource scheduling device is provided, the device comprising:
[0055] The receiving module is used to receive task requests sent by the terminal; the task request is used to request the edge node to perform operations on the task data, and the communication distance between the edge node and the terminal is less than the communication distance between the terminal and the cloud server.
[0056] The sending module is used to return a task response to the terminal when it has idle resources.
[0057] The execution module is used to receive task data sent by the terminal based on the task response, perform corresponding operations based on the task data, and return the execution result to the terminal.
[0058] Seventhly, a resource scheduling apparatus is provided, the apparatus comprising:
[0059] The receiving module is used to receive task requests; the task request includes the terminal identifier of the terminal.
[0060] The determination module is used to determine the target edge node from at least one edge node with idle resources based on the terminal identifier; the communication distance between the terminal and the edge node is less than the communication distance between the terminal and the cloud server; the target edge node is the edge node with the closest communication distance to the terminal;
[0061] The sending module is used to return a first task response to the terminal and send control commands to the target edge node. The first task response is used to instruct the terminal to send task data to the target edge node, and the control commands are used to instruct the target edge node to perform corresponding operations according to the task data and return the execution results to the terminal.
[0062] Eighthly, a computer device is provided, including a memory and a processor, the memory storing a computer program, the processor executing the computer program to implement the resource scheduling method described in any one of the first, second, and third aspects above.
[0063] Ninthly, a computer-readable storage medium is provided having a computer program stored thereon, which, when executed by a processor, implements the resource scheduling method described in any one of the first, second, and third aspects above.
[0064] The aforementioned resource scheduling method, system, device, computer equipment, and storage medium allow the terminal to determine a target edge node from multiple edge nodes, send the task data to be processed to the target edge node, and enable the target edge node to perform corresponding operations based on the task data, thereby receiving the execution results sent by the target edge node. In this method, when the terminal's local resources are insufficient, idle edge nodes are determined, and task requests are sent to the idle edge nodes to enable them to perform corresponding task processing. Since the communication distance between the edge node and the terminal is much smaller than the communication distance between the terminal and the cloud server, the communication bandwidth requirement is low and not limited by bandwidth requirements. Processing task data through edge nodes solves the problem of the inability to expand the terminal's local resources while also meeting the real-time requirements of the terminal's tasks. Attached Figure Description
[0065] Figure 1 This is a diagram illustrating the application environment of a resource scheduling method in one embodiment;
[0066] Figure 2 This is a flowchart illustrating a resource scheduling method in one embodiment;
[0067] Figure 3 This is a flowchart illustrating a resource scheduling method in one embodiment;
[0068] Figure 4 This is a flowchart illustrating a resource scheduling method in one embodiment;
[0069] Figure 5 This is a flowchart illustrating a resource scheduling method in one embodiment;
[0070] Figure 6 This is a flowchart illustrating the resource scheduling method in another embodiment;
[0071] Figure 7 This is a flowchart illustrating the resource scheduling method in another embodiment;
[0072] Figure 8 This is a flowchart illustrating a resource scheduling method in one embodiment;
[0073] Figure 9 This is a flowchart illustrating the resource scheduling method in another embodiment;
[0074] Figure 10 This is a structural block diagram of a resource scheduling device in one embodiment;
[0075] Figure 11 This is a structural block diagram of a resource scheduling device in one embodiment;
[0076] Figure 12 This is a structural block diagram of a resource scheduling device in one embodiment;
[0077] Figure 13 This is an internal structural diagram of a computer device in one embodiment. Detailed Implementation
[0078] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.
[0079] The resource scheduling method provided in this application can be applied to, for example... Figure 1 In the application environment shown, terminal 1 communicates with edge node 2 and cloud server 3 via a network. Terminal 1 can be, but is not limited to, various medical devices; edge node 2 is a pre-built server node whose communication distance with the terminal is less than the communication distance between the terminal and the cloud server; cloud server 3 can be implemented as a standalone server or a server cluster composed of multiple servers.
[0080] The technical solutions of this application and how they solve the aforementioned technical problems will be described in detail below through embodiments and in conjunction with the accompanying drawings. These specific embodiments can be combined with each other, and the same or similar concepts or processes may not be described again in some embodiments. It should be noted that this application... Figures 2-5 The resource scheduling method provided in this embodiment can be executed by a terminal, or it can be a resource scheduling device. The resource scheduling device can be part or all of the terminal through software, hardware, or a combination of software and hardware. In the following method embodiments, the execution subject is always described using a terminal as an example.
[0081] In one embodiment, such as Figure 2 As shown, a resource scheduling method is provided, which involves a terminal determining a target edge node from multiple edge nodes, sending task data to be processed to the target edge node, so that the target edge node performs corresponding operations based on the task data, and receiving the execution result sent by the target edge node. The method includes the following steps:
[0082] S201. Determine the target edge node from multiple edge nodes; the communication distance between the edge node and the terminal is less than the communication distance between the terminal and the cloud server.
[0083] Among them, edge nodes are multiple pre-built server nodes. Considering the real-time processing of tasks by edge nodes, the communication distance between edge nodes and terminals is less than the communication distance between terminals and cloud servers when building edge nodes.
[0084] In this embodiment, when the terminal has insufficient resources, it determines the target edge node from multiple edge nodes. For example, the communication distance is a virtual parameter, which can be determined by the local area network address, configuration parameters, or the ping command. Accordingly, the terminal can determine the edge node closest to it as the target edge node based on its own local area network address; alternatively, the terminal can also determine an edge node within a certain distance range as the target edge node, which is not limited in this embodiment.
[0085] S202. Send the task data to be processed to the target edge node so that the target edge node can perform corresponding operations based on the task data.
[0086] The task data to be processed refers to the data corresponding to the task to be processed. For example, if the task to be processed is a calculation task, then the task data is the calculation input data; if the task to be processed is a rendering task, then the task data is the input image data; if the task to be processed is another task, then the task data is the corresponding other input data.
[0087] In this embodiment, after determining the target edge node, the terminal sends task data to be processed to the target edge node so that the target edge node can perform corresponding operations according to the task data. For example, the terminal sends computing task data to the target edge node so that the target edge node can schedule corresponding computing resources and execute computing tasks according to the computing task data. The terminal also sends rendering task data to the target edge node so that the target edge node can schedule corresponding rendering resources and execute rendering tasks according to the rendering task data. This embodiment does not limit this.
[0088] Optionally, different edge target nodes may be more suitable for performing different task data processing, such as image processing computing tasks, image reconstruction computing tasks, data computing tasks, rendering tasks, and training tasks. Before determining the target edge node, the terminal can determine the task type based on the task data to be processed, determine the target edge node based on the task type, and send the task data to be processed to the target edge node so that the target edge node can perform the corresponding operation based on the task data.
[0089] S203. Receive the execution result sent by the target edge node.
[0090] In this embodiment, after the target edge node completes the corresponding operation based on the task data to be processed, the terminal receives the execution result sent by the target edge node. For example, if the task data to be processed is calculation task data, and the target edge node completes the calculation task and obtains the corresponding calculation result, then the terminal receives the calculation result returned by the target edge node; if the task data to be processed is rendering task data, and the target edge node completes the rendering task and outputs the corresponding image data, then the terminal receives the image data returned by the target edge node. This embodiment does not limit this.
[0091] In the resource scheduling method described above, the terminal determines a target edge node from multiple edge nodes and sends the task data to be processed to the target edge node, enabling the target edge node to perform corresponding operations based on the task data and thus receive the execution results sent by the target edge node. In this method, when the terminal's local resources are insufficient, an idle edge node is determined, and a task request is sent to the idle edge node, enabling the idle edge node to perform the corresponding task processing. Since the communication distance between the edge node and the terminal is much smaller than the communication distance between the terminal and the cloud server, the communication bandwidth requirement is low and not limited by bandwidth requirements. Processing task data through edge nodes solves the problem of the inability to expand the terminal's local resources while also meeting the real-time requirements of the terminal's tasks.
[0092] When determining a target edge node, the terminal can determine whether there are currently any edge nodes with idle resources by sending a task request to the edge node. In one embodiment, such as... Figure 3 As shown, the above method for determining the target edge node from multiple edge nodes includes:
[0093] S301. Determine the first edge node based on the communication distance and send a task request to the first edge node.
[0094] In this embodiment, the communication distance with the terminal affects the bandwidth required to process the task data sent by the terminal. In order to improve the real-time performance of processing the terminal's task data, when the terminal has insufficient resources, it can determine the target edge node from multiple edge nodes based on its own local area network address. Among the edge nodes with available resources, the terminal can determine the edge node closest to itself as the first edge node and send a task request to the first edge node to determine whether the current first edge node can execute the terminal's task. This embodiment does not limit this.
[0095] S302. If a first task response is received from the first edge node, the first edge node is identified as the target edge node; the first task response is used to indicate that the first edge node has idle resources.
[0096] The first task response refers to the task response returned by the first edge node to the terminal when it has idle resources.
[0097] In this embodiment, when the terminal receives the first task response, it means that the currently accessed first edge node has idle resources and can receive task data to execute the corresponding task processing. After receiving the first task response, the terminal can determine the current first edge node as the target edge node; this embodiment does not limit this.
[0098] In this embodiment, the terminal determines the target edge node with idle resources by sending a task request to the edge node. The task request does not carry task data and occupies limited resources. By using limited resources to determine the edge node with idle resources, the efficiency of determining the target edge node is improved.
[0099] If the resources of the edge node closest to the terminal are insufficient, the terminal can also allocate a target edge node to the terminal through a cloud server. In one embodiment, such as... Figure 4 As shown, the above method also includes:
[0100] S401. Receive a second task response sent by the cloud server. The second task response includes the identifier of the target edge node. The target edge node is a second edge node with idle resources that the cloud server requests to allocate to the terminal when the resources of the first edge node are insufficient. The communication distance between the second edge node and the terminal is greater than the communication distance between the first edge node and the terminal.
[0101] The second task response refers to the task response sent by the cloud server that carries the information of the second edge node.
[0102] In this embodiment, if the first edge node determines that its own resources are insufficient, the first edge node can send a task request to the cloud server so that the cloud server can determine the second edge node from other idle edge nodes. In particular, the second edge node is the edge node closest to the terminal among the edge nodes with idle resources.
[0103] S402. Based on the response to the second task, determine the target edge node.
[0104] In this embodiment, after receiving the second task response, the terminal determines the second edge node as the target edge node based on the identifier of the second edge node carried in the second task response. It should be noted that the second edge node is the edge node closest to the terminal, determined by the cloud server from edge nodes with idle resources. Therefore, after determining the second edge node as the target edge node, the terminal can directly send task data to the second edge node so that the second edge node can perform corresponding task processing based on the task data, without needing to send a task request to the second edge node to determine whether the second edge node has idle resources. This embodiment does not limit this aspect.
[0105] In this embodiment, if the resources of the first edge node are insufficient, a second edge node can be determined through the cloud server to execute the terminal's task requests, so that the terminal's task requests can be processed in a timely manner, thereby improving the processing efficiency of the terminal's task requests.
[0106] Alternatively, the terminal can also directly send task requests to the cloud server, so that the cloud server allocates an edge node to perform task processing. In one embodiment, such as... Figure 5 As shown, the above method for determining the target edge node from multiple edge nodes includes:
[0107] S501, Send a task request to the cloud server.
[0108] In this embodiment, when the terminal has insufficient resources, it can also directly send a task request to the cloud server, so that the cloud server can determine the target edge node based on the resource availability of each edge node.
[0109] S502, Receive a third task response sent by the cloud server; the third task response includes the identifier of the target edge node; the target edge node is the third edge node with the closest communication distance to the terminal among at least one edge node with idle resources determined by the cloud server.
[0110] In this embodiment, similarly, after receiving a task request, the cloud server can determine the edge node closest to the terminal from the edge nodes with idle resources as the target edge node, and send a third task response carrying the identifier of the target edge node to the terminal.
[0111] S503. Based on the response of the third task, determine the target edge node.
[0112] In this embodiment, after receiving the third task response, the terminal determines the target edge node based on the identifier of the target edge node carried in the third task response. It should be noted that the target edge node is the edge node closest to the terminal, determined by the cloud server from edge nodes with available resources. Therefore, after determining the target edge node, the terminal can directly send task data to the target edge node so that the target edge node can perform the corresponding task processing based on the task data, without needing to send a task request to the target edge node to determine whether the target edge node has available resources. This embodiment does not limit this aspect.
[0113] In this embodiment, the terminal can directly determine the target edge node with idle resources through the cloud. The cloud server can obtain the location information and resource status information of all edge nodes. By determining the target edge node through the cloud server, the efficiency of determining the target edge node and the processing efficiency of the terminal task request are improved.
[0114] The technical solutions of this application and how they solve the aforementioned technical problems will be described in detail below through embodiments and in conjunction with the accompanying drawings. These specific embodiments can be combined with each other, and the same or similar concepts or processes may not be described again in some embodiments. It should be noted that this application... Figure 6 The resource scheduling method provided in this embodiment is executed by an edge node, or it can be a resource scheduling device. This resource scheduling device can be part or all of the edge node through software, hardware, or a combination of both. In the following method embodiments, the execution subject is always described using an edge node as an example.
[0115] In one embodiment, such as Figure 6 As shown, a resource scheduling method is provided, which involves an edge node receiving a task request sent by a terminal, returning a task response to the terminal when it has idle resources, the receiving terminal sending task data according to the task response, performing corresponding operations based on the task data, and returning the execution result to the terminal. The method includes the following steps:
[0116] S601, Receive task request sent by terminal; task request is used to request edge node to perform operation on task data, the communication distance between edge node and terminal is less than the communication distance between terminal and cloud server.
[0117] In this embodiment, when the terminal's own resources are insufficient, it sends a task request to an edge node to determine the target edge node where the task operation can be performed. The corresponding edge node receives the task request sent by the terminal and, based on the request, determines whether its own resources are sufficient to process the request. This embodiment does not limit this process.
[0118] S602. If it has idle resources, it returns a task response to the terminal.
[0119] In this embodiment, after determining that it has sufficient idle resources to handle the terminal's tasks, the edge node sends a task response to the terminal to inform it that it can proceed with the subsequent task data transmission operation. Optionally, the edge node determines whether it has the corresponding resources to process the task based on different task identifiers carried in the task request. If the task request carries a computation task identifier, it determines whether it has sufficient resources to process the computation task; if the task request carries a rendering task identifier, it determines whether it has sufficient resources to process the rendering task. This embodiment does not limit this.
[0120] S603. The receiving terminal performs corresponding operations based on the task data sent by the task response and returns the execution result to the terminal.
[0121] The task data to be processed refers to the data corresponding to the task to be processed. For example, if the task to be processed is a calculation task, then the task data is the calculation input data; if the task to be processed is a rendering task, then the task data is the input image data; if the task to be processed is another task, then the task data is the corresponding other input data.
[0122] In this embodiment, the edge node receives task data to be processed sent by the terminal and performs corresponding operations based on the task data. For example, if the task data received by the target edge node is computation task data, then the corresponding computation resources are scheduled, the computation task is executed based on the computation task data, and the computation result is returned to the terminal. If the task data received by the target edge node is rendering task data, then the corresponding rendering resources are scheduled, the rendering task is executed based on the rendering task data, and the rendering output data is returned to the terminal. This embodiment does not limit this.
[0123] In the resource scheduling method described above, the edge node receives task requests sent by the terminal. If it has available resources, it returns a task response to the terminal and receives task data sent by the terminal based on the task response. It then performs corresponding operations based on the task data and returns the execution result to the terminal. In this method, when the terminal's local resources are insufficient, the edge node receives the task request from the terminal, and if it has sufficient resources, it sends a task response to the terminal and receives the task data sent by the terminal to perform corresponding task processing. Since the communication distance between the edge node and the terminal is much smaller than the communication distance between the terminal and the cloud server, the communication bandwidth requirement is low and not limited by bandwidth requirements. Processing task data through the edge node solves the problem of the inability to scale local terminal resources while also meeting the real-time requirements of terminal tasks.
[0124] In another scenario, where the edge nodes themselves also lack sufficient resources, in one embodiment the above method further includes:
[0125] When its own resources are occupied, it sends a task request to the cloud server. The task request is used to instruct the cloud server to allocate an edge node with idle resources to the terminal.
[0126] In this embodiment, if the current edge node determines that its own resources are insufficient, it sends a task request for the current terminal to the cloud server so that the cloud server can determine the target edge node from other idle edge nodes. In particular, the target edge node is the edge node that is closest to the terminal among the edge nodes with idle resources.
[0127] In this embodiment, if the current edge node resources are insufficient, other target edge nodes can be determined through the cloud server to execute the terminal's task requests, so that the terminal's task requests can be processed in a timely manner, thereby improving the processing efficiency of the terminal's task requests.
[0128] Optionally, the edge node performs corresponding task operations based on the terminal's task data. These tasks include rendering and computation tasks. In one embodiment, performing the corresponding operations based on the task data and returning the execution results to the terminal includes:
[0129] If the task data is computation task data, then the computation resources are invoked to perform computation operations on the computation task data, obtain the computation results, and return the computation results to the terminal;
[0130] If the task data is rendering task data, then allocate rendering resources for the rendering task data, call the rendering resources to perform rendering operations, obtain the rendering results, return the rendering results to the terminal, receive the rendering operation completion instruction sent by the terminal, and release the rendering resources.
[0131] In this embodiment, after receiving task data, the edge node can determine the task type based on the task data. If the current task data is a computation task, it directly calls the computation service to complete the computation operation, obtain the computation result, and return the result to the terminal. If the current task data is a rendering task, the edge node allocates resources and executes the rendering task after receiving the task data. After the rendering task is completed, it sends the rendering result to the terminal.
[0132] In this embodiment, it should be noted that the computing service resources in the edge node are resident and will not be reallocated or released. The rendering service, however, requires real-time scheduling and loading, and the corresponding rendering resources need to be released after the rendering task is completed. Therefore, when the terminal's current rendering task is completed, the edge node can receive an instruction from the terminal to close the rendering process, execute the shutdown operation according to the instruction, and release the rendering resources. Optionally, the instruction to close the rendering process can be a trigger request based on the terminal interface, such as a "complete" trigger request or a "save" trigger request. Alternatively, the edge node determines that the current rendering task has ended when it no longer receives new rendering task data for a period of time; this embodiment does not limit this approach.
[0133] Since rendering tasks typically involve image data, which consumes significant resources, edge nodes can continue to execute rendering tasks synchronously with the terminal even when the terminal is not requesting them. This avoids the problem of edge nodes excessively consuming resources to acquire rendering task data when the terminal is running out of resources during rendering. It should be noted that in 5G bandwidth scenarios, the bandwidth is sufficient for edge nodes to execute rendering tasks at any time; therefore, edge nodes may not need to perform synchronous rendering operations. This embodiment does not impose such limitations.
[0134] In this embodiment, edge nodes can schedule different resources to process task data according to different types of task data, ensuring the smooth execution of tasks and improving the processing efficiency of terminal tasks.
[0135] The technical solutions of this application and how they solve the aforementioned technical problems will be described in detail below through embodiments and in conjunction with the accompanying drawings. These specific embodiments can be combined with each other, and the same or similar concepts or processes may not be described again in some embodiments. It should be noted that this application... Figure 7-8 The resource scheduling method provided in this embodiment is executed by a cloud server, or it can be a resource scheduling device. This resource scheduling device can be part or all of the cloud server through software, hardware, or a combination of both. In the following method embodiments, the execution entity is always described using a cloud server as an example.
[0136] In one embodiment, such as Figure 7 As shown, a resource scheduling method is provided, which involves a cloud server receiving a task request, determining a target edge node from at least one edge node with idle resources based on a terminal identifier, returning a first task response to the terminal, and sending control commands to the target edge node. The method includes the following steps:
[0137] S701, Receive task request; the task request includes the terminal identifier of the terminal.
[0138] In this embodiment, the cloud server can receive task requests sent by the terminal or the edge node. Optionally, regardless of whether the task request is sent by the terminal or the edge node, the cloud server needs to determine the edge node that can currently process the terminal task data based on the terminal identifier in the task request.
[0139] S702. Based on the terminal identifier, determine the target edge node from at least one edge node with idle resources; the communication distance between the terminal and the edge node is less than the communication distance between the terminal and the cloud server; the target edge node is the edge node with the closest communication distance to the terminal.
[0140] In this embodiment, after receiving a task request, the cloud server can determine the local area network (LAN) address of the terminal based on the terminal identifier in the task request. Based on the LAN addresses of each edge node, the target edge node can be determined from among the edge nodes with available resources that is closest to the terminal. Optionally, if the edge node closest to the current terminal does not have available resources, then the target edge node is determined from among the edge nodes with available resources that is closest to the terminal. It should be noted that in determining the target edge node, the cloud server can set a distance threshold range for each terminal; that is, within the current distance threshold range, the edge node with available resources that is closest to the terminal is determined as the target edge node. This embodiment does not limit this.
[0141] S703, return a first task response to the terminal and send control instructions to the target edge node; the first task response is used to instruct the terminal to send task data to the target edge node, and the control instructions are used to instruct the target edge node to perform corresponding operations according to the task data and return the execution result to the terminal.
[0142] In this embodiment, after determining the target edge node, the cloud server sends a first task response carrying the identifier of the target edge node to the terminal. The purpose is to enable the terminal to determine the target edge node based on the first task response and send the task data to be processed to the target edge node. At the same time, the cloud server can also send control instructions to the target edge node, so that the current target edge node waits to execute the task request of the current terminal and performs corresponding task processing according to the task data sent by the terminal. This embodiment does not limit this.
[0143] In the aforementioned resource scheduling method, the cloud server receives a task request, determines a target edge node from at least one edge node with available resources based on the terminal identifier in the task request, and returns a first task response to the terminal. This enables the terminal to send task data to the target edge node and simultaneously send control commands to the target edge node, causing the target edge node to perform corresponding operations based on the task data and return the execution result to the terminal. In this method, the cloud server determines edge nodes with sufficient resources to execute the terminal's task operations based on the resource status of the edge nodes. Since the communication distance between the edge node and the terminal is much smaller than the communication distance between the terminal and the cloud server, the communication bandwidth requirement is low and not limited by bandwidth requirements. Processing task data through edge nodes solves the problem of the inability to expand local terminal resources while also meeting the real-time requirements of terminal tasks.
[0144] In another scenario, if there are no edge nodes with available resources around the terminal, the cloud server needs to use its own resources to execute the terminal's tasks. In one embodiment, such as... Figure 8 As shown, the above method also includes:
[0145] S801. If there are no edge nodes with idle resources, a second task response is returned to the terminal; the second task response is used to instruct the terminal to send task data to the cloud server.
[0146] In this embodiment, after determining that there are no edge nodes with idle resources, the cloud server returns a second task response to the terminal. The second task response is used to instruct the terminal to send task data to the cloud server itself and perform the corresponding task operation with its own resources.
[0147] S802: Receive task data, perform corresponding operations based on the task data, and return the execution result to the terminal.
[0148] In this embodiment, the cloud server performs corresponding operations based on the task data sent by the terminal and the type of task data. For example, if the task data received by the cloud server is computation task data, it schedules the corresponding computation resources, performs the computation task based on the computation task data, and returns the computation result to the terminal; if the task data received by the cloud server is rendering task data, it schedules the corresponding rendering resources, performs the rendering task based on the rendering task data, and returns the rendering output data to the terminal. This embodiment does not limit this.
[0149] In this embodiment, if the cloud server determines that there are no edge nodes with idle resources, it can also execute the terminal's task request through the cloud server itself, so that the terminal's task request can be processed in a timely manner, thereby improving the processing efficiency of the terminal's task request.
[0150] Optionally, in one embodiment, the above-mentioned execution of corresponding operations based on the task data and return of execution results to the terminal includes:
[0151] Select the appropriate task data processing method based on the type of task data to obtain the calculation results;
[0152] The task data processing method includes at least one of the following: calling computing resources to perform computing operations, allocating computing resources and calling computing resources to perform computing operations, and delaying the execution of task data processing; or, displaying the type of task data and requesting the user to select task data processing.
[0153] Optionally, the cloud server selects the task data processing method based on the pre-set correspondence between the type of task data and the task data processing method.
[0154] In this embodiment, different edge target nodes may be more suitable for performing different task data processing, such as image processing computation tasks, image reconstruction computation tasks, data computation tasks, rendering tasks, and training tasks. After receiving the task data to be processed, the cloud server may optionally first determine the type of task data, determine a corresponding candidate list of target edge nodes based on the type of task data, and further select target edge nodes from the candidate list, so that the target edge nodes perform corresponding operations according to the task data.
[0155] Optionally, the correspondence between the types of task data and the processing methods of task data mentioned above is obtained by training a machine learning method.
[0156] In this embodiment, the correspondence between different edge target nodes and the types of task data they are suitable for execution can be obtained through methods such as manual setting, historical record analysis, and analysis of edge target node configurations. That is, the correspondence between task data types and task data processing methods can be determined. Historical record analysis can be obtained by filtering and sorting historical data such as resource utilization, processing speed, and transmission time of different task data processing performed by edge target nodes, or through machine learning.
[0157] In this embodiment, since different edge target nodes may be more suitable for performing different task data processing, the optimal target edge node is assigned to the terminal for task data processing according to the type of task data, which can maximize the processing efficiency.
[0158] The method provided in this embodiment is similar to the method provided in the embodiment on the edge node side described above, and will not be described again in this embodiment.
[0159] In this embodiment, based on the pre-trained mapping relationship, the cloud server can determine the corresponding task data processing method according to the type of task data, thereby improving the data processing efficiency of the target edge node.
[0160] Optionally, the cloud server performs corresponding task operations based on the terminal's task data. These tasks include rendering and computation tasks. In one embodiment, the above-mentioned execution of corresponding operations based on task data and return of execution results to the terminal includes:
[0161] If the task data is computation task data, then the computation resources are invoked to perform computation operations on the computation task data, obtain the computation result, and return the computation result to the terminal.
[0162] If the task data is rendering task data, then allocate rendering resources for the rendering task data, call the rendering resources to perform rendering operations, obtain the rendering results, return the rendering results to the terminal, receive the rendering operation completion instruction sent by the terminal, and release the rendering resources.
[0163] In this embodiment, similar to the embodiments described above, after receiving the task data, the cloud server can also determine the task type based on the task data. If the current task data is a computation task, it directly calls the computation service to complete the computation operation, obtain the computation result, and return the computation result to the terminal. If the current task data is a rendering task, the edge node allocates resources and executes the rendering task after receiving the task data. After the rendering task is completed, it sends the rendering result to the terminal.
[0164] The operation principle of task data executed by cloud servers is similar to that of task data executed by edge nodes in the above embodiments, and will not be repeated here.
[0165] In this embodiment, edge nodes can schedule different resources to process task data according to different types of task data, ensuring the smooth execution of tasks and improving the processing efficiency of terminal tasks.
[0166] To better illustrate the above methods, such as Figure 9 As shown, this embodiment provides a resource scheduling method, specifically including:
[0167] S101. The terminal sends a task request to the first edge node that is closest to the terminal in terms of communication distance.
[0168] S102. When the edge node has idle resources, it returns the first task response to the terminal.
[0169] S103. The terminal sends the task data to be processed to the edge node;
[0170] S104. The edge node receiving terminal performs corresponding operations based on the task data sent by the task response.
[0171] S105. The edge node returns the execution result to the terminal;
[0172] S106. When the edge node's own resources are occupied, it sends a task request to the cloud server.
[0173] S107. The cloud server determines the edge node from at least one edge node with idle resources based on the terminal identifier;
[0174] S108, The cloud server returns the second task response to the terminal;
[0175] S109. The cloud server sends control commands to the edge nodes;
[0176] S110, The terminal sends the task data to be processed to the edge node;
[0177] S111. The edge node receiving terminal performs corresponding operations based on the task data sent by the task response.
[0178] S112, The edge node returns the execution result to the terminal;
[0179] S113. If the cloud server determines that there are no edge nodes with idle resources, it returns a third task response to the terminal.
[0180] S114. The terminal sends the task data to the cloud server according to the third task response;
[0181] S115. The cloud server performs corresponding operations based on the task data;
[0182] S116. The cloud server returns the execution result to the terminal.
[0183] In this embodiment, the terminal determines the edge node with available resources to receive task data and perform corresponding task processing operations based on the priority order of edge nodes and cloud servers. Since the communication distance between the edge node and the terminal is much smaller than the communication distance between the terminal and the cloud server, the communication bandwidth requirement is low and not limited by bandwidth requirements. Processing task data through the edge node solves the problem of the inability to expand the local resources of the terminal, while also meeting the real-time requirements of the terminal tasks.
[0184] The resource scheduling method provided in the above embodiments has similar implementation principles and technical effects to the above method embodiments, and will not be described again here.
[0185] It should be understood that, although Figure 2-9The steps in the flowchart are shown sequentially as indicated by the arrows, but these steps are not necessarily executed in the order indicated by the arrows. Unless otherwise specified in this document, there is no strict order in which these steps are executed, and they can be performed in other orders. Figure 2-9 At least some of the steps in the process may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but may be executed at different times. The execution order of these steps or stages is not necessarily sequential, but may be executed in turn or alternately with other steps or at least some of the steps or stages in other steps.
[0186] In one embodiment, such as Figure 1 As shown, a resource scheduling system is provided, which includes terminals, edge nodes, and cloud servers;
[0187] Terminal, used to execute the above Figures 2-5 The resource scheduling method provided in the embodiments;
[0188] Edge nodes are used to perform the above. Figure 6 The resource scheduling method provided in the embodiments;
[0189] Cloud server, used to perform the above Figures 7-8 Resource scheduling method provided in the embodiment.
[0190] The resource scheduling system provided in the above embodiments has similar implementation principles and technical effects to the resource scheduling method embodiments described above, and will not be repeated here.
[0191] In one embodiment, such as Figure 10 As shown, a resource scheduling device is provided, including: a determining module 01, a sending module 02, and a receiving module 03, wherein:
[0192] Module 01 is used to determine the target edge node from multiple edge nodes; the communication distance between the edge node and the terminal is less than the communication distance between the terminal and the cloud server;
[0193] Sending module 02 is used to send the task data to be processed to the target edge node, so that the target edge node can perform corresponding operations based on the task data;
[0194] The receiving module 03 is used to receive the execution results sent by the target edge node.
[0195] In one embodiment, the determining module 01 is used to send a task request to the first edge node that is closest to the terminal in terms of communication distance; if a first task response is received from the first edge node, the first edge node is determined as the target edge node; the first task response is used to indicate that the first edge node has idle resources.
[0196] In one embodiment, the receiving module 03 is further configured to receive a second task response sent by the cloud server. The second task response includes an identifier of a target edge node. The target edge node is a second edge node with idle resources that the cloud server requests to allocate to the terminal when the resources of the first edge node are insufficient. The communication distance between the second edge node and the terminal is greater than the communication distance between the first edge node and the terminal.
[0197] The determination module 01 is also used to determine the target edge node based on the response of the second task.
[0198] In one embodiment, the determining module 01 is further configured to send a task request to the cloud server; receive a third task response from the cloud server; the third task response includes an identifier of the target edge node; the target edge node is the third edge node with the closest communication distance to the terminal among at least one edge node with idle resources determined by the cloud server; and determine the target edge node based on the third task response.
[0199] In one embodiment, such as Figure 11 As shown, a resource scheduling device is provided, comprising: a receiving module 11, a sending module 12, and an execution module 13, wherein:
[0200] The receiving module 11 is used to receive task requests sent by the terminal; the task request is used to request the edge node to perform operations on task data, and the communication distance between the edge node and the terminal is less than the communication distance between the terminal and the cloud server.
[0201] The sending module 12 is used to return a task response to the terminal when it has idle resources.
[0202] The execution module 13 is used to receive task data sent by the terminal according to the task response, perform corresponding operations according to the task data, and return the execution result to the terminal.
[0203] In one embodiment, the sending module 12 is further configured to send a task request to the cloud server when its own resources are occupied. The task request is used to instruct the cloud server to allocate an edge node with idle resources to the terminal.
[0204] In one embodiment, the execution module 13 is configured to, if the task data is computation task data, call computation resources to perform computation operations on the computation task data, obtain computation results, and return the computation results to the terminal; if the task data is rendering task data, allocate rendering resources for the rendering task data, call the rendering resources to perform rendering operations, obtain rendering results, return the rendering results to the terminal, receive the rendering operation completion instruction sent by the terminal, and release the rendering resources.
[0205] In one embodiment, such as Figure 12 As shown, a resource scheduling device is provided, comprising: a receiving module 21, a determining module 22, and a sending module 23, wherein:
[0206] Receiving module 21 is used to receive task requests; the task request includes the terminal identifier of the terminal;
[0207] The determination module 22 is used to determine a target edge node from at least one edge node with idle resources based on the terminal identifier; the communication distance between the terminal and the edge node is less than the communication distance between the terminal and the cloud server; the target edge node is the edge node with the closest communication distance to the terminal;
[0208] The sending module 23 is used to return a first task response to the terminal and send control instructions to the target edge node; the first task response is used to instruct the terminal to send task data to the target edge node, and the control instructions are used to instruct the target edge node to perform corresponding operations according to the task data and return the execution results to the terminal.
[0209] In one embodiment, the sending module 23 is further configured to return a second task response to the terminal if there are no edge nodes with idle resources; the second task response is used to instruct the terminal to send task data to the cloud server.
[0210] The receiving module 21 is also used to receive task data, perform corresponding operations based on the task data, and return the execution results to the terminal.
[0211] In one embodiment, the receiving module 21 is further configured to: if the task data is computation task data, call computation resources to perform computation operations on the computation task data, obtain computation results, and return the computation results to the terminal; if the task data is rendering task data, allocate rendering resources for the rendering task data, call the rendering resources to perform rendering operations, obtain rendering results, return the rendering results to the terminal, receive the rendering operation completion instruction sent by the terminal, and release the rendering resources.
[0212] Specific limitations regarding the resource scheduling device can be found in the limitations of the resource scheduling method described above, and will not be repeated here. Each module in the aforementioned resource scheduling device can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in or independent of the processor in the computer device in hardware form, or stored in the memory of the computer device in software form, so that the processor can call and execute the operations corresponding to each module.
[0213] In one embodiment, a computer device is provided, which may be a server, and its internal structure diagram may be as follows: Figure 13 As shown, the computer device includes a processor, memory, communication interface, display screen, and input devices connected via a system bus. The processor provides computing and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system and computer programs. The internal memory provides an environment for the operation of the operating system and computer programs stored in the non-volatile storage media. The communication interface is used for wired or wireless communication with external terminals; wireless communication can be achieved through Wi-Fi, carrier networks, NFC (Near Field Communication), or other technologies. When the computer program is executed by the processor, it implements a resource scheduling method. The display screen can be an LCD screen or an e-ink screen. The input devices can be a touch layer covering the display screen, buttons, a trackball, or a touchpad mounted on the computer device casing, or an external keyboard, touchpad, or mouse.
[0214] Those skilled in the art will understand that Figure 13 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.
[0215] In one embodiment, a computer device is provided, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to perform the following steps:
[0216] The target edge node is determined from multiple edge nodes; the communication distance between the edge node and the terminal is less than the communication distance between the terminal and the cloud server;
[0217] The task data to be processed is sent to the target edge node so that the target edge node can perform corresponding operations based on the task data.
[0218] Receive the execution results sent by the target edge node.
[0219] The computer device provided in the above embodiments has similar implementation principles and technical effects to the above method embodiments, and will not be described again here.
[0220] In one embodiment, a computer device is provided, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to perform the following steps:
[0221] The terminal receives a task request; the task request is used to request the edge node to perform operations on the task data. The communication distance between the edge node and the terminal is less than the communication distance between the terminal and the cloud server.
[0222] If it has available resources, it returns a task response to the terminal.
[0223] The receiving terminal executes the corresponding operation based on the task data sent in the task response and returns the execution result to the terminal.
[0224] The computer device provided in the above embodiments has similar implementation principles and technical effects to the above method embodiments, and will not be described again here.
[0225] In one embodiment, a computer device is provided, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to perform the following steps:
[0226] Receive task requests; the task requests include the terminal identifier of the terminal;
[0227] Based on the terminal identifier, the target edge node is determined from at least one edge node with idle resources; the communication distance between the terminal and the edge node is less than the communication distance between the terminal and the cloud server; the target edge node is the edge node with the closest communication distance to the terminal.
[0228] The terminal returns a first task response and sends control commands to the target edge node. The first task response instructs the terminal to send task data to the target edge node, and the control commands instruct the target edge node to perform corresponding operations based on the task data and return the execution results to the terminal.
[0229] The computer device provided in the above embodiments has similar implementation principles and technical effects to the above method embodiments, and will not be described again here.
[0230] In one embodiment, a computer-readable storage medium is provided having a computer program stored thereon, the computer program performing the following steps when executed by a processor:
[0231] The target edge node is determined from multiple edge nodes; the communication distance between the edge node and the terminal is less than the communication distance between the terminal and the cloud server;
[0232] The task data to be processed is sent to the target edge node so that the target edge node can perform corresponding operations based on the task data.
[0233] Receive the execution results sent by the target edge node.
[0234] The computer-readable storage medium provided in the above embodiments has similar implementation principles and technical effects to the above method embodiments, and will not be described again here.
[0235] In one embodiment, a computer-readable storage medium is provided having a computer program stored thereon, the computer program performing the following steps when executed by a processor:
[0236] The terminal receives a task request; the task request is used to request the edge node to perform operations on the task data. The communication distance between the edge node and the terminal is less than the communication distance between the terminal and the cloud server.
[0237] If it has available resources, it returns a task response to the terminal.
[0238] The receiving terminal executes the corresponding operation based on the task data sent in the task response and returns the execution result to the terminal.
[0239] The computer-readable storage medium provided in the above embodiments has similar implementation principles and technical effects to the above method embodiments, and will not be described again here.
[0240] In one embodiment, a computer-readable storage medium is provided having a computer program stored thereon, the computer program performing the following steps when executed by a processor:
[0241] Receive task requests; the task requests include the terminal identifier of the terminal;
[0242] Based on the terminal identifier, the target edge node is determined from at least one edge node with idle resources; the communication distance between the terminal and the edge node is less than the communication distance between the terminal and the cloud server; the target edge node is the edge node with the closest communication distance to the terminal.
[0243] The terminal returns a first task response and sends control commands to the target edge node. The first task response instructs the terminal to send task data to the target edge node, and the control commands instruct the target edge node to perform corresponding operations based on the task data and return the execution results to the terminal.
[0244] The computer-readable storage medium provided in the above embodiments has similar implementation principles and technical effects to the above method embodiments, and will not be described again here.
[0245] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments of the methods described above. Any references to memory, storage, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, or optical storage, etc. Volatile memory can include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM), etc.
[0246] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0247] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are relatively specific and detailed, they should not be construed as limiting the scope of the invention patent. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this patent application should be determined by the appended claims.
Claims
1. A resource scheduling method, characterized in that, The method includes: Determine the correspondence between different edge nodes and the types of tasks they are suitable for execution; The task type is determined based on the task data to be processed, and the target edge node is determined from multiple edge nodes based on the correspondence between the task type and the different edge nodes and the task types they are suitable for execution. The task data to be processed is sent to the target edge node, so that the target edge node determines the task data processing method corresponding to the task data based on the correspondence between task type and task data processing method, and performs the corresponding operation according to the task data processing method; wherein, the task data processing method includes at least one of calling computing resources to perform computing operations, allocating computing resources and calling computing resources to perform computing operations, and delaying the execution of task data processing, or displaying the type of task data and requesting the user to select task data processing; the correspondence between task type and task data processing method is obtained by training using machine learning methods; Receive the execution result sent by the target edge node.
2. The method of claim 1, wherein, The step of determining the target edge node from multiple edge nodes based on the task type and the correspondence between different edge nodes and the task types they are suitable for execution includes: Based on the communication distance, a first edge node is determined from multiple edge nodes that match the task type, and a task request is sent to the first edge node; If a first task response is received from the first edge node, the first edge node is identified as the target edge node; the first task response is used to indicate that the first edge node has idle resources.
3. The method of claim 2, wherein, The method further includes: The system receives a second task response from the cloud server. The second task response includes an identifier of a target edge node. The target edge node is a second edge node with available resources that the cloud server requests to allocate to the terminal when the resources of the first edge node are insufficient. The communication distance between the second edge node and the terminal is greater than the communication distance between the first edge node and the terminal. The target edge node is determined based on the second task response.
4. The method of claim 1, wherein, The step of determining the target edge node from multiple edge nodes based on the task type and the correspondence between different edge nodes and the task types they are suitable for execution includes: Send a task request to the cloud server; The system receives a third task response from the cloud server; the third task response includes the identifier of the target edge node; the target edge node is the third edge node with idle resources among at least one of the multiple edge nodes that match the task type determined by the cloud server, and the edge node with the closest communication distance to the terminal. The target edge node is determined based on the third task response.
5. An image rendering method characterized by, The method includes: Determine the correspondence between different edge nodes and the types of tasks they are suitable for execution; Obtain rendering task data, and determine the target edge node from multiple edge nodes based on the correspondence between the rendering task data and the different edge nodes and the types of tasks they are suitable for execution; The rendering task data is sent to the target edge node, so that the target edge node determines the task data processing method corresponding to the rendering task data based on the correspondence between the rendering task and the task data processing method, and executes the rendering task according to the task data processing method; wherein, the task data processing method includes at least one of calling computing resources to perform computing operations, allocating computing resources and calling computing resources to perform computing operations, and delaying the execution of task data processing, or displaying the type of task data and requesting the user to select task data processing; the correspondence between the rendering task and the task data processing method is obtained by training using machine learning methods; Receive the rendered image data sent by the target edge node.
6. The method of claim 5, wherein, The rendering task is real-time image rendering, and the method includes: Once the rendering task is completed, a command to shut down the rendering process is sent; the command to shut down the rendering process is used to instruct the target edge node to close the rendering operation and release the rendering resources.
7. The method of claim 5, wherein, The method is applied to a medical device, and the method further includes: If the rendering resources of the medical device are insufficient, the target edge node is determined within the distance threshold range of the medical device.
8. The method of claim 5, wherein, The method is applied to a terminal, and the method includes: If the local resources of the terminal are insufficient, an idle edge node will be identified as the target edge node; The rendering task data is sent to the idle edge node so that the idle edge node can execute the corresponding rendering task; the communication distance between the idle edge node and the terminal is less than the communication distance between the terminal and the cloud server. 9.A computer device, comprising a memory and a processor, wherein the memory stores a computer program, and the computer device is configured to perform the method according to any one of claims 1-8 when the computer program is executed by the processor. When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 8.
Citation Information
Patent Citations
Node device selection method and a related device
CN109802997A
Mobile user terminal task unloading method under distributed edge computing service system
CN111262906A