Task scheduling method, device, electronic device and readable medium
The task orchestration information is obtained through the task scheduling method and the target equipment is determined using the computing power scheduling knowledge base, which solves the problem of limited computing power resources in cloud-edge collaboration, and realizes flexible resource scheduling and efficient resource utilization.
Patent Information
- Application Number
- CN202411773079.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-04
- Publication Date
- 2025-04-08
AI Technical Summary
In cloud-edge collaboration, the computing power resources of cloud resources and edge devices are limited, resulting in the deployment of computing tasks being prone to failure, or the computing power resources of the equipment being over-occupied or wasted.
A task scheduling method is provided, by obtaining task orchestration information associated with the computing task, using the preset computing power scheduling knowledge base to determine the target computing power equipment and configuration information of the computing task, and sending configuration information through accessing the scheduling plug-in of the target computing power equipment to run the computing task.
It realizes flexible computing power scheduling based on computing power scheduling knowledge base and task orchestration information, avoids failure in computing task deployment and resource waste, and improves resource utilization efficiency.
Smart Images

Figure CN119781920A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of data processing technology, and in particular to a task scheduling method, a task scheduling device, an electronic device and a computer-readable medium. Background Art
[0002] With the rapid development of technologies such as AI, cloud computing, and edge computing, AI application scenarios based on cloud-edge collaboration are becoming more and more abundant, covering the intelligent needs of various fields. However, in cloud-edge collaboration, cloud resources and edge devices are usually limited and constrained by computing resources (usually including CPU, GPU, NPU, memory and storage capacity, etc.), and as the workload and environment continue to change, the computing resources of the device will also change dynamically. These problems will pose great challenges to the scheduling of computing resources, and it is easy to cause the deployment of the target device to fail because the computing resources do not meet the minimum deployment requirements of the computing task, or the computing resources of the device are over-occupied or wasted. The traditional and commonly used cloud-edge collaboration method is to manually deploy large computing tasks on cloud resources and deploy small computing tasks on the edge. However, this method will take up huge labor costs and there will be a large waste of computing resources. Summary of the invention
[0003] The embodiment of the present invention provides a task scheduling method, device, electronic device and computer-readable storage medium to solve the problem that computing task deployment is prone to failure.
[0004] An embodiment of the present invention discloses a task scheduling method, which is applied to an application management unit, wherein the application management unit is used to manage a distributed computing architecture, wherein the distributed computing architecture includes at least one computing device, and the method includes:
[0005] Obtaining task scheduling information associated with a computing task;
[0006] Determine the target computing power device corresponding to the computing task and the configuration information of the computing task according to the preset computing power scheduling knowledge base and the task scheduling information;
[0007] The configuration information of the computing task is sent by accessing the scheduling plug-in of the target computing power device; the scheduling plug-in of the target computing power device is used to run the computing task in the target computing power device based on the configuration information of the computing task.
[0008] Optionally, the step of obtaining task scheduling information associated with the computing task includes:
[0009] Task scheduling information generated based on a preset task scheduling template is obtained, where the task scheduling information records at least one computing task and computing power scheduling requirement information of the computing task.
[0010] Optionally, the method further comprises:
[0011] The computing power information of the computing power device is collected through the scheduling plug-in of the computing power device, and the computing power information of the computing power device is sent to a preset computing power scheduling knowledge base.
[0012] Optionally, the step of determining the target computing power device corresponding to the computing task and the configuration information of the computing task according to the preset computing power scheduling knowledge base and the task scheduling information includes:
[0013] Call the preset computing power scheduling engine, obtain the computing power information of the computing power device from the preset computing power scheduling knowledge base, and determine the target computing power device corresponding to the computing task and the configuration information of the computing task according to the computing power information of the computing power device and the task scheduling information.
[0014] Optionally, the step of determining a target computing device corresponding to the computing task and configuration information of the computing task according to the computing power information of the computing device and the task scheduling information includes:
[0015] Extracting the business tag and computing power scheduling tag corresponding to the computing task in the task scheduling information;
[0016] Determine, among the computing devices, an optional computing device corresponding to the service tag;
[0017] Acquire a computing power scheduling strategy corresponding to the computing power scheduling tag from the computing power scheduling knowledge base, wherein the computing power scheduling strategy records an indicator range corresponding to at least one computing power indicator and weight information corresponding to at least one computing power indicator;
[0018] Based on the computing power scheduling strategy and the computing power information corresponding to the optional computing power device, determine the target computing power device corresponding to the computing task and the configuration information of the computing task.
[0019] Optionally, the method further comprises:
[0020] During the execution of the computing task, the real-time status of the computing task sent by the scheduling plug-in of the target computing power device is received.
[0021] Optionally, the method further comprises:
[0022] By calling the preset computing power sensor, it is detected whether the computing power device can be called normally, and the detection result is stored in the preset computing power scheduling knowledge base.
[0023] An embodiment of the present invention further provides a task scheduling device, which is applied to an application management unit, wherein the application management unit is used to manage a distributed computing architecture, wherein the distributed computing architecture includes at least one computing device, and the device includes:
[0024] A scheduling information acquisition module, used to acquire task scheduling information associated with a computing task;
[0025] A target computing power device determination module is used to determine the target computing power device corresponding to the computing task and the configuration information of the computing task according to a preset computing power scheduling knowledge base and the task scheduling information;
[0026] The task running module is used to send the configuration information of the computing task by accessing the scheduling plug-in of the target computing power device; the scheduling plug-in of the target computing power device is used to run the computing task in the target computing power device based on the configuration information of the computing task.
[0027] Optionally, the arrangement information acquisition module includes:
[0028] The scheduling information acquisition submodule is used to obtain task scheduling information generated based on a preset task scheduling template, where the task scheduling information records at least one computing task and computing power scheduling requirement information of the computing task.
[0029] Optionally, the device further comprises:
[0030] The computing power information acquisition module is used to collect the computing power information of the computing power device through the scheduling plug-in of the computing power device, and send the computing power information of the computing power device to a preset computing power scheduling knowledge base.
[0031] Optionally, the target computing power device determination module includes:
[0032] The target computing power device determination submodule is used to call a preset computing power scheduling engine, obtain the computing power information of the computing power device from a preset computing power scheduling knowledge base, and determine the target computing power device corresponding to the computing task and the configuration information of the computing task based on the computing power information of the computing power device and the task scheduling information.
[0033] Optionally, the target computing power device determining submodule step includes:
[0034] A label extraction unit, used to extract a business label and a computing power scheduling label corresponding to the computing task in the task scheduling information;
[0035] An optional computing power device determining unit, used to determine the optional computing power device corresponding to the service tag in the computing power device;
[0036] A strategy acquisition unit, configured to acquire a computing power scheduling strategy corresponding to the computing power scheduling tag from the computing power scheduling knowledge base, wherein the computing power scheduling strategy records an indicator range corresponding to at least one computing power indicator and weight information corresponding to at least one computing power indicator;
[0037] The target computing power device determination unit is used to determine the target computing power device corresponding to the computing task and the configuration information of the computing task based on the computing power scheduling strategy and the computing power information corresponding to the optional computing power device.
[0038] Optionally, the device further comprises:
[0039] The task status detection module is used to receive the real-time status of the computing task sent by the scheduling plug-in of the target computing power device during the execution of the computing task.
[0040] Optionally, the device further comprises:
[0041] The computing power device detection module is used to detect whether the computing power device can be called normally by calling the preset computing power sensor, and store the detection result in the preset computing power scheduling knowledge base.
[0042] The embodiment of the present invention further discloses an electronic device, comprising a processor, a communication interface, a memory and a communication bus, wherein the processor, the communication interface and the memory communicate with each other via the communication bus;
[0043] The memory is used to store computer programs;
[0044] The processor is used to implement the method described in the embodiment of the present invention when executing the program stored in the memory.
[0045] The embodiment of the present invention further discloses one or more computer-readable media on which instructions are stored. When executed by one or more processors, the processors are enabled to execute the method described in the embodiment of the present invention.
[0046] The embodiments of the present invention include the following advantages:
[0047] Through the task scheduling method provided by the embodiment of the present invention, the task scheduling information associated with the computing task is obtained; according to the preset computing power scheduling knowledge base and the task scheduling information, the target computing power device corresponding to the computing task and the configuration information of the computing task are determined; by accessing the scheduling plug-in of the target computing power device, the configuration information of the computing task is sent; the scheduling plug-in of the target computing power device is used to run the computing task in the target computing power device based on the configuration information of the computing task. It can be realized to select the computing power device suitable for the current computing task based on the computing power scheduling knowledge base and the task scheduling information, and realize flexible computing power scheduling. BRIEF DESCRIPTION OF THE DRAWINGS
[0048] Figure 1 is a flowchart of a task scheduling method provided in an embodiment of the present invention;
[0049] Figure 2 is a structural diagram of a task scheduling system provided in an embodiment of the present invention;
[0050] Figure 3 is a structural block diagram of a task scheduling device provided in an embodiment of the present invention;
[0051] Figure 4 is a block diagram of an electronic device provided in an embodiment of the present invention;
[0052] Figure 5 is a schematic diagram of a computer-readable medium provided in an embodiment of the present invention. DETAILED DESCRIPTION
[0053] In order to make the above-mentioned objects, features and advantages of the present invention more obvious and easy to understand, the present invention is further described in detail below with reference to the accompanying drawings and specific embodiments.
[0054] Reference Figure 1 , showing a step flow chart of a task scheduling method provided in an embodiment of the present invention, which is applied to an application management unit, and the application management unit is used to manage a distributed computing architecture, and the distributed computing architecture includes at least one computing device.
[0055] In an embodiment of the present invention, an application management unit may be provided, and the application management unit may be used to manage applications with different functions. When an application needs to be run, at least one computing task may need to be run accordingly. The application management unit may be used to manage at least one computing device in a distributed computing structure to call the computing device to run a computing task.
[0056] Among them, the distributed computing structure can be a structure that distributes computing power devices in different locations. In an embodiment of the present invention, the distributed computing structure can specifically adopt a cloud-edge collaborative architecture. The cloud-edge collaborative architecture can refer to an architecture that combines the advantages of cloud computing and edge computing to achieve more efficient and reliable data processing and application deployment. It can use computing power devices related to cloud computing as the central devices of the distributed computing structure, and computing power devices related to edge computing as the edge devices of the distributed computing structure.
[0057] Computing power equipment can refer to equipment used to perform computing tasks. Computing power equipment generally includes processors, graphics processing units (GPUs), application-specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), and other hardware that can be used to perform computing tasks.
[0058] The method may specifically include the following steps:
[0059] Step 101, obtaining task scheduling information associated with a computing task;
[0060] Specifically, the computing task can be issued in the form of task scheduling. A task scheduling template associated with the application can be created, and at least one computing task required to run the application can be written into it. Therefore, when the application needs to be started, the task scheduling information corresponding to the application can be called accordingly, so that the task scheduling information associated with the computing task can be obtained.
[0061] Step 102, determining the target computing device corresponding to the computing task and the configuration information of the computing task according to the preset computing power scheduling knowledge base and the task scheduling information;
[0062] In an embodiment of the present invention, a computing power scheduling knowledge base may be pre-set. The computing power scheduling knowledge base may record computing power information corresponding to different computing power devices. The computing power information may include at least one computing power that a computing power device can provide, such as the number of CPU cores, accelerator card type, video memory, memory, and storage capacity.
[0063] The task scheduling information may record the computing power required for the normal operation of the computing task. Therefore, at least one computing power device suitable for the current computing task can be found in the computing power scheduling knowledge base as the target computing power device. At the same time, the configuration information of the computing task can be determined, which may record the management method of the computing task and the computing power required for the computing task.
[0064] Step 103, sending the configuration information of the computing task by accessing the scheduling plug-in of the target computing power device; the scheduling plug-in of the target computing power device is used to run the computing task in the target computing power device based on the configuration information of the computing task.
[0065] In an embodiment of the present invention, a scheduling plug-in may be configured in the target computing power device, and the scheduling plug-in may be used to manage computing tasks. The configuration information of the computing task may be sent by accessing the scheduling plug-in of the target computing power device. Thereafter, the scheduling plug-in may allocate corresponding computing power to the computing task based on the configuration information of the computing task, and create and run the computing task, thereby completing the allocation and operation of the computing task.
[0066] Through the task scheduling method provided by the embodiment of the present invention, the task scheduling information associated with the computing task is obtained; according to the preset computing power scheduling knowledge base and the task scheduling information, the target computing power device corresponding to the computing task and the configuration information of the computing task are determined; by accessing the scheduling plug-in of the target computing power device, the configuration information of the computing task is sent; the scheduling plug-in of the target computing power device is used to run the computing task in the target computing power device based on the configuration information of the computing task. It can be realized to select the computing power device suitable for the current computing task based on the computing power scheduling knowledge base and the task scheduling information, and realize flexible computing power scheduling.
[0067] In one embodiment of the present invention, the step of obtaining task scheduling information associated with the computing task includes:
[0068] S11, obtaining task scheduling information generated based on a preset task scheduling template, wherein the task scheduling information records at least one computing task and computing power scheduling requirement information of the computing task.
[0069] In a specific implementation, a pre-set task scheduling template may be set, and the user may form task scheduling information by filling in at least one computing task required for the application to run and computing power scheduling requirement information corresponding to the computing task in the task scheduling template.
[0070] Among them, the computing power scheduling requirement information may refer to the computing power corresponding to at least one hardware required for the normal operation of the computing task.
[0071] In one embodiment of the present invention, the method further comprises:
[0072] S21, collecting computing power information of the computing power device through the scheduling plug-in of the computing power device, and sending the computing power information of the computing power device to a preset computing power scheduling knowledge base.
[0073] Specifically, in order to facilitate the application management unit to know the computing power that different computing power devices can provide, the scheduling plug-in in the computing power device can also have the ability to collect computing power information of the computing power device. The scheduling plug-in can use a preset period to collect the computing power that the current computing power device can provide, obtain computing power information, and send the computing power information of the computing power device to the computing power scheduling knowledge base, so that in the process of allocating computing tasks, the appropriate computing power device can be allocated according to the computing power that the computing power device can provide.
[0074] In one embodiment of the present invention, the step of determining the target computing power device corresponding to the computing task and the configuration information of the computing task according to the preset computing power scheduling knowledge base and the task scheduling information includes:
[0075] S31, calling a preset computing power scheduling engine, obtaining the computing power information of the computing power device from a preset computing power scheduling knowledge base, and determining the target computing power device corresponding to the computing task and the configuration information of the computing task according to the computing power information of the computing power device and the task scheduling information.
[0076] In an embodiment of the present invention, in addition to the application management unit, a computing power scheduling management unit may be provided, which may be used to manage and schedule computing power devices in a distributed computing architecture. The computing power scheduling management unit may include a computing power scheduling knowledge base, and may also include a computing power scheduling engine, which may be used to analyze and determine the target computing power device corresponding to the computing task. Thus, in the case where it is necessary to determine the target computing power device corresponding to the computing task, the application management unit may call the computing power scheduling engine, which obtains the computing power information of the computing power device from the computing power scheduling knowledge base, and determines the target computing power device corresponding to the computing task based on the computing power information of the computing power device and the task scheduling information. Thereafter, the application management unit may generate the configuration information required to configure the computing task for the target computing power device.
[0077] In one embodiment of the present invention, the step of determining the target computing device corresponding to the computing task and the configuration information of the computing task according to the computing power information of the computing device and the task scheduling information includes:
[0078] S41, extracting the business tag and computing power scheduling tag corresponding to the computing task in the task scheduling information;
[0079] Specifically, the task scheduling information may record the business tags and computing power scheduling tags corresponding to the computing tasks. Among them, the business tags may refer to the business functions that need to be implemented for the computing tasks, such as cloud-side model training, cloud-side model reasoning, and edge-side model reasoning. The computing power scheduling tags may refer to the tendency of computing tasks to allocate computing power. For example, cloud-side computing power scheduling strategy and edge-side computing power scheduling strategy.
[0080] S42, determining, in the computing power devices, an optional computing power device corresponding to the service tag;
[0081] Therefore, among the computing devices, according to the business tags, computing devices that support running corresponding business functions can be selected as optional computing devices.
[0082] S43, obtaining a computing power scheduling strategy corresponding to the computing power scheduling tag from the computing power scheduling knowledge base, wherein the computing power scheduling strategy records an indicator range corresponding to at least one computing power indicator and weight information corresponding to at least one computing power indicator;
[0083] The computing power scheduling knowledge base may store computing power scheduling strategies corresponding to computing power scheduling tags, and the computing power scheduling strategies may specifically record the computing power allocation method.
[0084] Specifically, the computing power scheduling strategy may include a filtering strategy and a scoring strategy. The filtering strategy may include an indicator range corresponding to at least one computing power indicator in the computing power device. The computing power indicator may include the number of CPU cores, accelerator card type, video memory, memory and storage capacity, etc.
[0085] The scoring strategy may include scoring weight information corresponding to at least one computing power indicator in the computing power device.
[0086] S44, based on the computing power scheduling strategy and the computing power information corresponding to the optional computing power device, determine the target computing power device corresponding to the computing task and the configuration information of the computing task.
[0087] Therefore, according to the computing power scheduling strategy, the scores that can be obtained by the computing power information corresponding to the optional computing power devices can be calculated respectively, and the computing power devices with higher scores can be selected as the target computing power devices corresponding to the computing tasks. At the same time, the configuration information of the computing tasks is generated by the application management unit.
[0088] In one embodiment of the present invention, the method further comprises:
[0089] S51, during the execution of the computing task, receiving the real-time status of the computing task sent by the scheduling plug-in of the target computing power device.
[0090] In a specific implementation, during the running of a computing task, the real-time status of the computing task can be detected by the scheduling plug-in of the target computing power device and sent to the application management unit, so that the application management unit can know the running status of the computing task and ensure that the computing task remains running normally.
[0091] In one embodiment of the present invention, the method further comprises:
[0092] S61, by calling the preset computing power sensor, detect whether the computing power device can be called normally, and store the detection result in the preset computing power scheduling knowledge base.
[0093] Specifically, a computing power sensor can also be set in the computing power scheduling management unit, which can be used to detect whether the computing power device can be called normally. If the computing power device can be called normally, it can be considered that the computing power device can operate normally and is marked as "activated". If the computing power device cannot be called normally, it can be considered that the computing power device cannot operate normally and is marked as "to be activated". The detection results can be stored in the computing power scheduling knowledge base. In the process of selecting the target computing power device in the subsequent computing power scheduling engine, the computing power device in the "activated" state can be selected to ensure that the computing tasks can be distributed normally.
[0094] As a specific example of the present invention, Figure 2 It is a structural diagram of a task scheduling system provided in an embodiment of the present invention.
[0095] Among them, the task scheduling system can apply the management unit, the computing power scheduling management unit, and the computing power equipment.
[0096] The computing power scheduling management unit may include computing power scheduling management, a computing power scheduling engine, a computing power scheduling knowledge base, and a computing power sensor.
[0097] Among them, the computing power scheduling knowledge base can be used to store the computing power information of computing power equipment and computing power scheduling strategies.
[0098] The computing power information of the computing power device may include business tags (including: cloud-side model training, cloud-side model reasoning, edge model reasoning, etc.), accessible addresses, computing power indicators (including: number of CPU cores, acceleration card type (including: GPU, NPU, etc.), video memory, memory and storage capacity, etc.), status (including: activated / to be activated)
[0099] The computing power scheduling strategy may include a filtering strategy and a scoring strategy. The filtering strategy may include an indicator range corresponding to at least one computing power indicator of the computing power device (such as the number of CPU cores, accelerator card type, video memory, memory, and storage capacity). Specifically, the indicator range may include a minimum filtering threshold, such as 8 cores, GPU = 8GB or 16GB or 100GB, etc.
[0100] The scoring strategy may include scoring weights corresponding to computing power indicators (such as the number of CPU cores, accelerator card type, video memory, memory, and storage capacity), such as 0.1, 0.2, 0.4, 0.2, 0.1, etc.
[0101] The computing power scheduling management can be used to provide computing power information of computing power devices and computing power scheduling strategy creation, deletion, update, query and other API interfaces, so as to call the computing power scheduling management unit to manage the computing power information and computing power scheduling strategy of computing power devices. It also provides a computing power scheduling API interface to call the computing power calling engine to determine the computing power device information list corresponding to the computing task.
[0102] The computing power scheduling application can be used to load the computing power scheduling strategy and the computing power devices corresponding to the business tags and whose status is "activated" from the computing power scheduling knowledge base according to the business tags and computing power scheduling tags in the task scheduling information, determine the target computing power devices corresponding to the computing tasks according to the computing power scheduling strategy, and form a computing power device information list.
[0103] The computing power sensor can be used to read the computing power device information from the computing power scheduling knowledge base and access the scheduling plug-in in the computing power device. If the access is successful and the computing power information of the computing power device is obtained, the corresponding computing power information in the computing power scheduling knowledge base is updated and the status is set to "activated". If the access is unsuccessful, the status of the corresponding computing power device in the computing power scheduling knowledge base is updated to "pending activation".
[0104] The application management unit may include an application knowledge base, application management, and a computing task orchestration engine.
[0105] The application knowledge base can be used to store computing task scheduling templates and application information.
[0106] A computing task scheduling template can be a template that describes the configuration information of an application. The template includes:
[0107] Name: Application name
[0108] Template name: computing task scheduling template name
[0109] Task: computing task configuration, including: Name: computing task name; Task quantity: the number of identical computing tasks started; Business tags: cloud-side model training, cloud-side model reasoning, and edge-side model reasoning, etc.; Computing power scheduling strategy: computing power scheduling strategy name; Model: model address; Data: data address;
[0110] Application information: including the configuration based on the computing task orchestration template and the running status of each computing task in the template.
[0111] Application management can be used to provide computing task scheduling templates and API interfaces such as creation, deletion, update, and query of application information.
[0112] The computing task scheduling engine can be used to load the corresponding computing task scheduling template from the application knowledge base by inputting application information, and start the corresponding template parsing program to parse the application information, parse each computing task configuration, call the computing power scheduling API of the computing power scheduling management unit, input the business scenario, computing power scheduling strategy and the required number of computing power devices (i.e. the number of computing tasks), and obtain the optimal computing power scheduling device information list. Access the scheduling plug-in of the scheduled computing power device and send the corresponding computing task configuration information.
[0113] A computing power scheduling plug-in can be added to the computing power device, and the computing power scheduling plug-in can include computing task management and computing power resource detectors.
[0114] The computing task management can be used to receive the computing task configuration information from the application management unit and manage the computing tasks locally, including the creation, deletion, and update of computing tasks. After the computing task is established, the model set and data set required for the computing task can be called from the preset storage unit to run the computing task.
[0115] The computing power resource detector can be used to periodically detect the computing power information of the local device and save it locally, providing a computing power query API interface for the computing power scheduling management unit to query the latest computing power information of the computing power device.
[0116] As a specific example of the present invention, the task scheduling method can be used in a real-time traffic monitoring scenario based on cloud-edge collaboration. The method includes:
[0117] (1) Start the application management unit and the computing power scheduling management unit;
[0118] (2) Calling the API interface for creating computing power information of computing power devices in the computing power scheduling management unit, and creating computing power information of computing power devices in the computing power knowledge base, including: computing power information of cloud-side computing power devices and computing power information of edge-side computing power devices.
[0119] (3) The computing resource detector of the scheduling plug-in of the computing device periodically detects the computing power information of the computing device and saves it locally;
[0120] (4) The computing power sensor of the computing power scheduling management unit periodically calls the computing power query API of the computing power scheduling plug-in of the computing power device. If the API call is successful, the computing power information of the computing power device is obtained, and the status of the computing power device is activated. The status and computing power information of the computing power device are synchronized to the computing power scheduling knowledge base. Otherwise, the status of the computing power device is not activated, and the status of the computing power device is synchronized to the computing power scheduling knowledge base.
[0121] (5) Call the computing power scheduling strategy creation API of the computing power scheduling management unit, create filtering strategy and scoring strategy, and obtain the computing power scheduling strategy. The cloud-side computing power scheduling strategy and the edge-side computing power scheduling strategy can be created separately in the computing power scheduling knowledge base.
[0122] (6) Create a computing task scheduling template. Call the computing task scheduling template creation API of the application management unit to create the required computing task scheduling template in the application knowledge base. Template example:
[0123] a. Name: Real-time Traffic Monitoring
[0124] b. Template name: Real-time traffic monitoring template
[0125] c. Tasks:
[0126] (1) Name: Cloudside Reasoning
[0127] (2) Number of tasks: 1
[0128] (3) Business tag: cloud-side model reasoning
[0129] (4) Computing power scheduling strategy: Cloud-side computing power scheduling strategy
[0130] (5) Model: Downloadable large model address
[0131] d. Tasks:
[0132] (1) Name: Lateral Reasoning
[0133] (2) Number of tasks: 50
[0134] (3) Business label: side model reasoning
[0135] (4) Computing power scheduling strategy: Edge computing power scheduling strategy
[0136] (5) Model: Downloadable small model address
[0137] (7) Create an application. Call the application creation API of the application management unit to trigger the computing task scheduling engine to parse the application.
[0138] The computing task scheduling engine loads application information, parses each computing task, and calls the computing power scheduling API of the computing power scheduling management unit to obtain the optimal scheduling computing power device information list.
[0139] (8) Access the scheduling plug-in of the scheduled computing device and send the pre-started computing task configuration information.
[0140] (9) The computing task management of the scheduling plug-in of the computing power device parses the computing task configuration information and starts the computing task locally.
[0141] (10) Regularly synchronize the running status of the computing task. The computing task management of the computing power scheduling plug-in of the computing power device regularly calls the task status update API of the specified application of the application management of the application management unit to synchronize the running status of the computing task.
[0142] It should be noted that, for the sake of simplicity, the method embodiments are described as a series of action combinations, but those skilled in the art should be aware that the embodiments of the present invention are not limited by the order of the actions described, because according to the embodiments of the present invention, certain steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should also be aware that the embodiments described in the specification are all preferred embodiments, and the actions involved are not necessarily required by the embodiments of the present invention.
[0143] Reference Figure 3 , shows a structural block diagram of a task scheduling device provided in an embodiment of the present invention, which is applied to an application management unit, the application management unit is used to manage a distributed computing architecture, the distributed computing architecture includes at least one computing device, and the device may specifically include the following modules:
[0144] The scheduling information acquisition module 301 is used to acquire task scheduling information associated with the computing task;
[0145] The target computing power device determination module 302 is used to determine the target computing power device corresponding to the computing task and the configuration information of the computing task according to the preset computing power scheduling knowledge base and the task scheduling information;
[0146] The task running module 303 is used to send the configuration information of the computing task by accessing the scheduling plug-in of the target computing power device; the scheduling plug-in of the target computing power device is used to run the computing task in the target computing power device based on the configuration information of the computing task.
[0147] Optionally, the arrangement information acquisition module includes:
[0148] The scheduling information acquisition submodule is used to obtain task scheduling information generated based on a preset task scheduling template, where the task scheduling information records at least one computing task and computing power scheduling requirement information of the computing task.
[0149] Optionally, the device further comprises:
[0150] The computing power information acquisition module is used to collect the computing power information of the computing power device through the scheduling plug-in of the computing power device, and send the computing power information of the computing power device to a preset computing power scheduling knowledge base.
[0151] Optionally, the target computing power device determination module includes:
[0152] The target computing power device determination submodule is used to call a preset computing power scheduling engine, obtain the computing power information of the computing power device from a preset computing power scheduling knowledge base, and determine the target computing power device corresponding to the computing task and the configuration information of the computing task based on the computing power information of the computing power device and the task scheduling information.
[0153] Optionally, the target computing power device determining submodule step includes:
[0154] A label extraction unit, used to extract a business label and a computing power scheduling label corresponding to the computing task in the task scheduling information;
[0155] An optional computing power device determining unit, used to determine the optional computing power device corresponding to the service tag in the computing power device;
[0156] A strategy acquisition unit, configured to acquire a computing power scheduling strategy corresponding to the computing power scheduling tag from the computing power scheduling knowledge base, wherein the computing power scheduling strategy records an indicator range corresponding to at least one computing power indicator and weight information corresponding to at least one computing power indicator;
[0157] The target computing power device determination unit is used to determine the target computing power device corresponding to the computing task and the configuration information of the computing task based on the computing power scheduling strategy and the computing power information corresponding to the optional computing power device.
[0158] Optionally, the device further comprises:
[0159] The task status detection module is used to receive the real-time status of the computing task sent by the scheduling plug-in of the target computing power device during the execution of the computing task.
[0160] Optionally, the device further comprises:
[0161] The computing power device detection module is used to detect whether the computing power device can be called normally by calling the preset computing power sensor, and store the detection result in the preset computing power scheduling knowledge base.
[0162] As for the device embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiment.
[0163] In addition, an embodiment of the present invention further provides an electronic device, such as Figure 4 As shown, it includes a processor 401, a communication interface 402, a memory 403 and a communication bus 404, wherein the processor 401, the communication interface 402, and the memory 403 communicate with each other through the communication bus 404.
[0164] Memory 403, used for storing computer programs;
[0165] The processor 401 is used to execute the program stored in the memory 403 to implement the following steps:
[0166] Obtaining task scheduling information associated with a computing task;
[0167] Determine the target computing power device corresponding to the computing task and the configuration information of the computing task according to the preset computing power scheduling knowledge base and the task scheduling information;
[0168] The configuration information of the computing task is sent by accessing the scheduling plug-in of the target computing power device; the scheduling plug-in of the target computing power device is used to run the computing task in the target computing power device based on the configuration information of the computing task.
[0169] Optionally, the step of obtaining task scheduling information associated with the computing task includes:
[0170] Task scheduling information generated based on a preset task scheduling template is obtained, where the task scheduling information records at least one computing task and computing power scheduling requirement information of the computing task.
[0171] Optionally, the method further comprises:
[0172] The computing power information of the computing power device is collected through the scheduling plug-in of the computing power device, and the computing power information of the computing power device is sent to a preset computing power scheduling knowledge base.
[0173] Optionally, the step of determining the target computing power device corresponding to the computing task and the configuration information of the computing task according to the preset computing power scheduling knowledge base and the task scheduling information includes:
[0174] Call the preset computing power scheduling engine, obtain the computing power information of the computing power device from the preset computing power scheduling knowledge base, and determine the target computing power device corresponding to the computing task and the configuration information of the computing task according to the computing power information of the computing power device and the task scheduling information.
[0175] Optionally, the step of determining a target computing device corresponding to the computing task and configuration information of the computing task according to the computing power information of the computing device and the task scheduling information includes:
[0176] Extracting the business tag and computing power scheduling tag corresponding to the computing task in the task scheduling information;
[0177] Determine, among the computing devices, an optional computing device corresponding to the service tag;
[0178] Acquire a computing power scheduling strategy corresponding to the computing power scheduling tag from the computing power scheduling knowledge base, wherein the computing power scheduling strategy records an indicator range corresponding to at least one computing power indicator and weight information corresponding to at least one computing power indicator;
[0179] Based on the computing power scheduling strategy and the computing power information corresponding to the optional computing power device, determine the target computing power device corresponding to the computing task and the configuration information of the computing task.
[0180] Optionally, the method further comprises:
[0181] During the execution of the computing task, the real-time status of the computing task sent by the scheduling plug-in of the target computing power device is received.
[0182] Optionally, the method further comprises:
[0183] By calling the preset computing power sensor, it is detected whether the computing power device can be called normally, and the detection result is stored in the preset computing power scheduling knowledge base.
[0184] The communication bus mentioned in the above terminal can be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus, etc. The communication bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, only one thick line is used in the figure, but it does not mean that there is only one bus or one type of bus.
[0185] The communication interface is used for communication between the above terminal and other devices.
[0186] The memory may include a random access memory (RAM) or a non-volatile memory, such as at least one disk memory. Optionally, the memory may also be at least one storage device located away from the aforementioned processor.
[0187] The above-mentioned processor can be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; it can also be a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components.
[0188] like Figure 5 As shown, in another embodiment provided by the present invention, a computer-readable storage medium 501 is also provided, in which instructions are stored. When the computer-readable storage medium is run on a computer, the computer executes the task scheduling method described in the above embodiment.
[0189] In another embodiment of the present invention, a computer program product including instructions is provided. When the computer program product is run on a computer, the computer executes the task scheduling method described in the above embodiment.
[0190] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When implemented by software, 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 the computer program instructions are loaded and executed on a computer, the process or function described in the embodiment of the present invention 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 device. The 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, the computer instructions can be transmitted from a website site, computer, server or data center to another website site, computer, server or data center by wired (e.g., coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that includes one or more available media integrated. The available medium can be a magnetic medium (e.g., a floppy disk, a hard disk, a tape), an optical medium (e.g., a DVD), or a semiconductor medium (e.g., a solid-state hard disk Solid State Disk (SSD)), etc.
[0191] It should be noted that, in this article, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, the elements defined by the sentence "comprise a ..." do not exclude the existence of other identical elements in the process, method, article or device including the elements.
[0192] Each embodiment in this specification is described in a related manner, and the same or similar parts between the embodiments can be referred to each other, and each embodiment focuses on the differences from other embodiments. In particular, for the system embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiment.
[0193] The above description is only a preferred embodiment of the present invention and is not intended to limit the protection scope of the present invention. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present invention are included in the protection scope of the present invention.
Claims
1. A task scheduling method, characterized in that: The method is applied to an application management unit, the application management unit is used to manage a distributed computing architecture, the distributed computing architecture includes at least one computing device, and the method includes: Obtaining task scheduling information associated with a computing task; Determine the target computing power device corresponding to the computing task and the configuration information of the computing task according to the preset computing power scheduling knowledge base and the task scheduling information; The configuration information of the computing task is sent by accessing the scheduling plug-in of the target computing power device; the scheduling plug-in of the target computing power device is used to run the computing task in the target computing power device based on the configuration information of the computing task.
2. The method according to claim 1, characterized in that The step of obtaining task scheduling information associated with the computing task includes: Task scheduling information generated based on a preset task scheduling template is obtained, where the task scheduling information records at least one computing task and computing power scheduling requirement information of the computing task.
3. The method according to claim 1, characterized in that The method further comprises: The computing power information of the computing power device is collected through the scheduling plug-in of the computing power device, and the computing power information of the computing power device is sent to a preset computing power scheduling knowledge base.
4. The method according to claim 3, characterized in that The step of determining the target computing power device corresponding to the computing task and the configuration information of the computing task according to the preset computing power scheduling knowledge base and the task scheduling information includes: Call the preset computing power scheduling engine, obtain the computing power information of the computing power device from the preset computing power scheduling knowledge base, and determine the target computing power device corresponding to the computing task and the configuration information of the computing task according to the computing power information of the computing power device and the task scheduling information.
5. The method according to claim 4, characterized in that The step of determining the target computing device corresponding to the computing task and the configuration information of the computing task according to the computing power information of the computing device and the task scheduling information includes: Extracting the business tag and computing power scheduling tag corresponding to the computing task in the task scheduling information; Determine, among the computing devices, an optional computing device corresponding to the service tag; Acquire a computing power scheduling strategy corresponding to the computing power scheduling tag from the computing power scheduling knowledge base, wherein the computing power scheduling strategy records an indicator range corresponding to at least one computing power indicator and weight information corresponding to at least one computing power indicator; Based on the computing power scheduling strategy and the computing power information corresponding to the optional computing power device, determine the target computing power device corresponding to the computing task and the configuration information of the computing task.
6. The method according to claim 1, characterized in that The method further comprises: During the execution of the computing task, the real-time status of the computing task sent by the scheduling plug-in of the target computing power device is received.
7. The method according to claim 1, characterized in that The method further comprises: By calling the preset computing power sensor, it is detected whether the computing power device can be called normally, and the detection result is stored in the preset computing power scheduling knowledge base.
8. A task scheduling device, characterized in that: It is applied to an application management unit, the application management unit is used to manage a distributed computing architecture, the distributed computing architecture includes at least one computing device, and the device includes: A scheduling information acquisition module, used to acquire task scheduling information associated with a computing task; A target computing power device determination module is used to determine the target computing power device corresponding to the computing task and the configuration information of the computing task according to a preset computing power scheduling knowledge base and the task scheduling information; The task running module is used to send the configuration information of the computing task by accessing the scheduling plug-in of the target computing power device; the scheduling plug-in of the target computing power device is used to run the computing task in the target computing power device based on the configuration information of the computing task.
9. An electronic device, characterized in that: It includes a processor, a communication interface, a memory and a communication bus, wherein the processor, the communication interface and the memory communicate with each other through the communication bus; The memory is used to store computer programs; The processor is used to implement the method according to any one of claims 1 to 7 when executing the program stored in the memory.
10. A computer-readable medium having instructions stored thereon, which, when executed by one or more processors, cause the processors to perform the method according to any one of claims 1 to 7.