An algorithm adaptive scheduling system and method based on application scenarios
By introducing a machine learning model based on application scenarios into the algorithm scheduling system, automatically analyzing resource information and algorithm capabilities, and generating a scheduling solution suitable for the current scenario, the problems of inefficient and wasteful resource management in traditional scheduling solutions are solved, and efficient resource utilization and rationality of task scheduling are achieved.
Patent Information
- Application Number
- CN202111622444.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-12-28
- Publication Date
- 2025-04-22
- Estimated Expiration
- 2041-12-28
AI Technical Summary
Traditional algorithm scheduling solutions lack agile support and adaptive capabilities, resulting in inefficient algorithm resource management, insufficient resource scheduling and utilization, and serious resource waste.
Design an algorithm adaptive scheduling system based on application scenarios, including information statistics module, coordination algorithm module, construction module, algorithm management module and algorithm service module. Use machine learning models to automatically analyze resource information and algorithm capabilities in application scenarios, generate algorithm scheduling solutions suitable for the current scenario, and perform start-stop and resource redistribution of different algorithms.
Through the adaptive scheduling system, the resource orchestration of different algorithms in different time periods is optimized, resource utilization efficiency is improved, resource waste is reduced, and task scheduling is achieved rationality and efficiency.
Smart Images

Figure CN114168350B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of resource scheduling, and in particular to an algorithm adaptive scheduling system and method based on application scenarios. Background Art
[0002] With the breakthroughs of deep learning algorithms in speech and visual recognition, the implementation and commercial development of the artificial intelligence industry has become possible. Currently, the application of artificial intelligence in various fields is becoming more and more extensive. It has become the core driving force of a new round of industrial transformation and a strategic technology leading future development, and has received high attention from all walks of life.
[0003] Against the backdrop of breakthroughs in the industrial technology and applications of artificial intelligence, algorithm research is no longer the key point restricting the development of this field. Instead, in an artificial intelligence engineering solution, the key is how to quickly schedule algorithms, coordinate tasks and resources, and thus better and more quickly adapt to the implementation scenarios of artificial intelligence.
[0004] Traditional algorithm scheduling solutions are applicable to single, repetitive and inefficient scenarios, and lack agile support and adaptive capabilities for the artificial intelligence research and development process, resulting in inefficient algorithm resource management, insufficient resource scheduling and utilization, and serious resource waste. Summary of the invention
[0005] The present invention aims to solve the problems that traditional algorithm scheduling schemes lack agile support, lack adaptive capabilities, rely on manual intervention, and thus have inefficient algorithm resource management, insufficient resource scheduling and utilization, and cause serious resource waste. An algorithm adaptive scheduling system and method based on application scenarios are provided.
[0006] First, the present invention discloses an algorithm adaptive scheduling system based on application scenarios, and the technical solution adopted to solve the above technical problems is as follows:
[0007] An algorithm adaptive scheduling system based on application scenarios, the structure of which includes:
[0008] Information statistics module, used to periodically obtain hardware resource information of the current application scenario;
[0009] The coordination algorithm module is used to regularly obtain the capabilities and loads of different algorithms, the loads and resource utilization of various tasks in different time periods, the operation and backlog information of various tasks, and user usage habits, and regularly upload the obtained information to the information statistics module;
[0010] The construction module is used to build a machine learning model of resource usage. The machine learning model automatically analyzes the information obtained regularly by the information statistics module in a certain application scenario, and learns to simulate an algorithm scheduling solution suitable for the current application scenario;
[0011] The algorithm management module is used to start and stop different algorithms and reallocate resources based on the algorithm scheduling scheme output by the machine learning model;
[0012] The algorithm service module is used to upload the algorithm's capacity and load, the load and resource utilization of various tasks in different time periods, the operation and backlog information of various tasks, and user usage habits to the coordination algorithm module based on the start and stop and resource reallocation results of different algorithms.
[0013] Optionally, after the machine learning model automatically analyzes the information statistics module periodically acquired in a certain application scenario, the following information can be obtained:
[0014] (a) Based on the load conditions of various types of tasks in different time periods in the past, the load distribution of different types of tasks in each time period in the current application scenario is obtained;
[0015] (b) Obtain the GPU, CPU, and storage hardware resources consumed by different types of tasks in different time periods, and how many algorithm services of a certain type can be started with the current hardware resources in a certain time period;
[0016] (c) Determine the user's habit of issuing tasks and predict the type of tasks that the user will issue in a certain period of time in the future.
[0017] Further optionally, through the load of various types of tasks in different time periods and the type preferences of tasks issued by users, the machine learning model learns and simulates an algorithm scheduling plan, where the algorithm scheduling plan includes the type and number of algorithms started in different time periods.
[0018] Optionally, based on the algorithm scheduling scheme output by the machine learning model, the algorithm management module starts and stops different algorithms and reallocates resources. In this process:
[0019] According to the task types in different application scenarios, the algorithm management module is responsible for importing, exporting, and retrieving algorithm service image packages through the algorithm agile integration framework, and quickly instantiating the algorithm. Then, through this algorithm rapid instantiation start and stop method, the number of various algorithm services at the current moment is consistent with the number in the algorithm scheduling plan, so that the number of algorithm services is optimally matched with the current scenario, task type, load, CPU, and GPU resources.
[0020] Optionally, based on the algorithm scheduling scheme output by the machine learning model, the algorithm management module starts and stops different algorithms and reallocates resources. In this process:
[0021] The algorithm management module interacts with the view management module to create, upgrade, and rollback storage indexes for algorithm service results.
[0022] Secondly, the present invention discloses an algorithm adaptive scheduling method based on application scenarios, and the technical solution adopted to solve the above technical problems is as follows:
[0023] An algorithm adaptive scheduling method based on application scenarios, the scheduling process includes:
[0024] (1) Regularly obtain the hardware resource information of the current application scenario, and at the same time, regularly obtain the capabilities and loads of different algorithms, the loads and resource utilization of various tasks in different time periods, the operation and backlog information of various tasks, and user usage habits;
[0025] (2) Build a machine learning model of resource usage. The machine learning model automatically analyzes the information in step (1) and learns to simulate an algorithm scheduling solution suitable for the current application scenario.
[0026] (3) Start and stop different algorithms and reallocate resources based on the algorithm scheduling scheme output by the machine learning model;
[0027] (4) Based on the start / stop and resource reallocation results of different algorithms, the algorithm capacity and load, the load and resource utilization of various tasks in different time periods, the operation and backlog information of various tasks, and user usage habits are uploaded regularly to update the information in step (1).
[0028] Optionally, after executing step (2), the machine learning model automatically analyzes the information in step (1), the following information can be obtained:
[0029] (i) Based on the load conditions of various types of tasks in different time periods in the past, the load distribution of different types of tasks in each time period in the current application scenario is obtained;
[0030] (ii) Determine the GPU, CPU, and storage hardware resources consumed by different types of tasks in different time periods, and how many algorithm services of a certain type can be started with the current hardware resources in a certain time period;
[0031] (iii) Derive the user’s task-issuing habits and predict the type of tasks that the user will issue in a certain period of time in the future.
[0032] Further optionally, through the load of various types of tasks in different time periods and the type preferences of tasks issued by users, the machine learning model learns and simulates an algorithm scheduling plan, where the algorithm scheduling plan includes the type and number of algorithms started in different time periods.
[0033] Optionally, step (3) is performed to start and stop different algorithms and reallocate resources based on the algorithm scheduling scheme output by the machine learning model. In this process:
[0034] According to the task types in different application scenarios, the algorithm agile integration framework is responsible for importing, exporting, and retrieving algorithm service image packages, and quickly instantiating the algorithm. Then, the algorithm is quickly instantiated and started and stopped to make the number of various algorithm services at the current moment consistent with the number in the algorithm scheduling plan, so that the number of algorithm services is optimally matched with the current scenario, task type, load, CPU, and GPU resources.
[0035] The algorithm adaptive scheduling system and method based on application scenarios of the present invention have the following beneficial effects compared with the prior art:
[0036] (1) The present invention can start and stop different algorithms in different time periods based on application scenarios after considering resource utilization, and optimize the remaining capacity arrangement of different algorithms in different time periods, so that statistical information in different time periods is more inclined to process a certain task, so that limited resources are used more efficiently and task scheduling is more reasonable;
[0037] (2) The present invention can solve the problem that traditional algorithm scheduling schemes have inefficient algorithm resource management, insufficient resource scheduling and utilization, and cause serious resource waste. BRIEF DESCRIPTION OF THE DRAWINGS
[0038] Attached Figure 1 It is a flow chart of the connection of each module of the present invention.
[0039] The information of each reference number in the accompanying drawings indicates:
[0040] 1. Information statistics module, 2. Coordination algorithm module, 3. Construction module, 4. Machine learning model,
[0041] 5. Algorithm management module, 6. Algorithm service module, 7. View management module. DETAILED DESCRIPTION
[0042] In order to make the technical solution, the technical problem solved and the technical effect of the present invention more clearly understood, the technical solution of the present invention is clearly and completely described below in conjunction with specific embodiments.
[0043] Embodiment 1:
[0044] Combined with Figure 1 This embodiment proposes an algorithm adaptive scheduling system based on application scenarios, whose structure includes: information statistics module 1, coordination algorithm module 2, construction module 3, machine learning model 4, algorithm management module 5, algorithm service module 6, and view management module 7.
[0045] Through the information statistics module 1, the hardware resource information of the current application scenario is obtained regularly.
[0046] Through the coordination algorithm module 2, the capabilities and loads of different algorithms, the loads and resource utilization of various tasks in various time periods, the operation and backlog information of various tasks, and user usage habits are regularly obtained, and the obtained information is regularly uploaded to the information statistics module 1.
[0047] By constructing module 3, a machine learning model 4 of resource usage is constructed. The machine learning model 4 automatically analyzes the information regularly obtained by the information statistics module 1 in a certain application scenario, and the following information can be obtained:
[0048] (a) Based on the load conditions of various types of tasks in different time periods in the past, the load distribution of different types of tasks in each time period in the current application scenario is obtained;
[0049] (b) Obtain the GPU, CPU, and storage hardware resources consumed by different types of tasks in different time periods, and how many algorithm services of a certain type can be started with the current hardware resources in a certain time period;
[0050] (c) Obtain the user's habit of issuing tasks and predict the type of tasks that the user will issue in a certain period of time in the future;
[0051] Based on the obtained results, the machine learning model 4 learns and simulates an algorithm scheduling scheme suitable for the current application scenario, and the algorithm scheduling scheme includes the type and number of algorithms started in different time periods.
[0052] The algorithm management module 5 starts and stops different algorithms and reallocates resources based on the algorithm scheduling scheme output by the machine learning model 4. In this process:
[0053] (i) According to the task types in different application scenarios, the algorithm management module 5 is responsible for importing, exporting, and retrieving the algorithm service image package through the algorithm agile integration framework, and quickly instantiates the algorithm. Then, through this algorithm fast instantiation start and stop method, the number of various algorithm services at the current moment is consistent with the number in the algorithm scheduling plan, so that the number of algorithm services and the current scenario, task type, load, CPU, GPU resources are optimally matched;
[0054] (ii) The algorithm management module 5 interacts with the view management module 7 to create, upgrade, and roll back storage indexes for algorithm service results.
[0055] Based on the start and stop and resource reallocation results of different algorithms, the algorithm service module 5 regularly uploads the algorithm's capacity and load, the load and resource utilization of various tasks in each time period, the operation and backlog information of various tasks, and user usage habits to the coordination algorithm module.
[0056] Embodiment 2:
[0057] Combined with Figure 1 This embodiment proposes an algorithm adaptive scheduling method based on application scenarios, and its scheduling process includes:
[0058] (1) Regularly obtain the hardware resource information of the current application scenario. At the same time, regularly obtain the capabilities and loads of different algorithms, the loads and resource utilization of various tasks in different time periods, the operation and backlog information of various tasks, and user usage habits.
[0059] (2) Construct a machine learning model of resource usage. The machine learning model automatically analyzes the information in step (1). Then, the following information can be obtained:
[0060] (i) Based on the load conditions of various types of tasks in different time periods in the past, the load distribution of different types of tasks in each time period in the current application scenario is obtained;
[0061] (ii) Determine the GPU, CPU, and storage hardware resources consumed by different types of tasks in different time periods, and how many algorithm services of a certain type can be started with the current hardware resources in a certain time period;
[0062] (iii) derive the user’s habit of issuing tasks and predict the type of tasks that the user will issue in a certain period of time in the future;
[0063] Based on the obtained results, the machine learning model learns and simulates an algorithm scheduling scheme suitable for the current application scenario, where the algorithm scheduling scheme includes the type and number of algorithms started in different time periods.
[0064] (3) Based on the algorithm scheduling scheme output by the machine learning model, different algorithms are started and stopped and resources are reallocated. In this process:
[0065] According to the task types in different application scenarios, the algorithm agile integration framework is responsible for importing, exporting, and retrieving algorithm service image packages, and quickly instantiating the algorithm. Then, the algorithm is quickly instantiated and started and stopped to make the number of various algorithm services at the current moment consistent with the number in the algorithm scheduling plan, so that the number of algorithm services is optimally matched with the current scenario, task type, load, CPU, and GPU resources.
[0066] (4) Based on the start / stop and resource reallocation results of different algorithms, the algorithm capacity and load, the load and resource utilization of various tasks in different time periods, the operation and backlog information of various tasks, and user usage habits are uploaded regularly to update the information in step (1).
[0067] In summary, the algorithm adaptive scheduling system and method based on application scenarios of the present invention can be used to start and stop different algorithms according to the application scenarios after considering the resource utilization in different time periods, and optimize the remaining capacity scheduling of different algorithms in different time periods, so that statistical information in different time periods is more inclined to process a certain task, so that limited resources are used more efficiently and task scheduling is more reasonable, thereby solving the problems of inefficient algorithm resource management, insufficient resource scheduling and utilization, and serious resource waste caused by traditional algorithm scheduling schemes.
[0068] The above specific examples are used to explain the principles and implementation methods of the present invention in detail. These examples are only used to help understand the core technical content of the present invention. Based on the above specific embodiments of the present invention, any improvements and modifications made by technicians in this technical field without departing from the principles of the present invention should fall within the scope of patent protection of the present invention.
Claims
1. An algorithm adaptive scheduling system based on application scenarios, characterized in that: Its structure includes: Information statistics module, used to periodically obtain hardware resource information of the current application scenario; The coordination algorithm module is used to regularly obtain the capabilities and loads of different algorithms, the loads and resource utilization of various tasks in different time periods, the operation and backlog information of various tasks, and user usage habits, and regularly upload the obtained information to the information statistics module; A construction module is used to construct a machine learning model of resource usage. The machine learning model automatically analyzes the information obtained by the information statistics module at regular intervals in a certain application scenario, thereby obtaining the following information: (a) based on the load of each type of task in different time periods in the past, the load distribution of different types of tasks in each time period in the current application scenario is obtained; (b) the GPU, CPU, and storage hardware resources consumed by different types of tasks in different time periods are obtained, and how many algorithm services of a certain type can be started with the current hardware resources in a certain time period; (c) the user's habit of issuing tasks is obtained, and the type preference of the user's task issuance in a certain time period in the future is predicted; based on the load of each type of task in different time periods and the type preference of the user's task issuance, the machine learning model then learns to simulate an algorithm scheduling scheme suitable for the current application scenario, and the algorithm scheduling scheme suitable for the current application scenario refers to an algorithm scheduling scheme that matches the current application scenario, and the algorithm scheduling scheme includes the type and number of algorithms started in different time periods; The algorithm management module is used to start and stop different algorithms and reallocate resources based on the algorithm scheduling scheme output by the machine learning model. In this process: according to the task type in different application scenarios, the algorithm management module is responsible for importing, exporting, and retrieving the algorithm service image package through the algorithm agile integration framework, and quickly instantiates the algorithm. Then, through this algorithm fast instantiation start and stop method, the number of various algorithm services at the current moment is consistent with the number in the algorithm scheduling scheme, so that the number of algorithm services and the current scenario, task type, load, CPU, GPU resource matching relationship is optimal; The algorithm service module is used to upload the algorithm's capacity and load, the load and resource utilization of various tasks in different time periods, the operation and backlog information of various tasks, and user usage habits to the coordination algorithm module based on the start and stop and resource reallocation results of different algorithms.
2. The algorithm adaptive scheduling system based on application scenarios according to claim 1 is characterized in that: Based on the algorithm scheduling scheme output by the machine learning model, the algorithm management module starts and stops different algorithms and reallocates resources. During this process: The algorithm management module interacts with the view management module to create, upgrade, and rollback storage indexes for algorithm service results.
3. An algorithm adaptive scheduling method based on application scenarios, characterized in that: The scheduling process includes: (1) Regularly obtain the hardware resource information of the current application scenario, and at the same time, regularly obtain the capabilities and loads of different algorithms, the loads and resource utilization of various tasks in different time periods, the operation and backlog information of various tasks, and user usage habits; (2) Constructing a machine learning model of resource usage. The machine learning model automatically analyzes the information in step (1) to obtain the following information: (i) based on the load of each type of task in different time periods in the past, obtain the load distribution of different types of tasks in each time period in the current application scenario; (ii) obtain the GPU, CPU, and storage hardware resources consumed by different types of tasks in different time periods, and how many algorithm services of a certain type can be started with the current hardware resources in a certain time period; (iii) obtain the user's habit of issuing tasks, and predict the type preference of the user's task issuance in a certain time period in the future; based on the load of each type of task in different time periods and the type preference of the user's task issuance, the machine learning model learns to simulate an algorithm scheduling scheme suitable for the current application scenario. The algorithm scheduling scheme suitable for the current application scenario refers to an algorithm scheduling scheme that matches the current application scenario, and the algorithm scheduling scheme includes the type and number of algorithms started in different time periods; (3) Based on the algorithm scheduling scheme output by the machine learning model, different algorithms are started and stopped and resources are reallocated. In this process: according to the task types in different application scenarios, the algorithm agile integration framework is responsible for importing, exporting, and retrieving the algorithm service image package, and the algorithm is quickly instantiated. Then, this algorithm is quickly instantiated and started and stopped to make the number of various algorithm services at the current moment consistent with the number in the algorithm scheduling scheme, so that the number of algorithm services and the current scenario, task type, load, CPU, and GPU resources are optimally matched; (4) Based on the start / stop and resource reallocation results of different algorithms, regularly upload the algorithm's capacity and load, the load and resource utilization of various tasks in different time periods, the operation and backlog information of various tasks, and user usage habits to update the information in step (1).
Citation Information
Patent Citations
Artificial intelligent platform system based on deep learning
CN108881446A
Intelligent behavior analysis engine system of deep learning technology and control method
CN111614769A