Resource scheduling method and related device

By adopting resource scheduling methods in the environment of industrial digital upgrades, and using time slot scheduling and network channel transmission time slot scheduling algorithms, the problem of increasing production and manufacturing costs caused by the increase of intelligent devices and intelligent technologies is solved, and the resource investment of computing networks is reduced and Ensure the efficient operation of the production line.

CN119497232AActive Publication Date: 2025-02-21PURPLE MOUNTAIN LAB
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
CN202411623701.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-13
Publication Date
2025-02-21
Estimated Expiration
2044-11-13

AI Technical Summary

Technical Problem

With the upgrading of industrial digitalization and the increase of intelligent devices and intelligent technologies, the way of configuring exclusive computing devices and pulling dedicated network links between devices for each intelligent device has led to a significant increase in production and manufacturing costs, and a reduction in computing network resources is needed. Invest in ways to reduce costs and increase efficiency.

Method used

A resource scheduling method is adopted to obtain the maximum execution time, generation period and maximum allowable response time of data processing tasks, as well as the topology and transmission bandwidth of the data processing network, and to utilize the time slot scheduling algorithm and network channel transmission time slot scheduling algorithm. The calculation time slot and transmission time slot are planned, and the equipment in the data processing network is then resource scheduling.

Benefits of technology

It is realized that without increasing the network resource investment, it is ensured that every data processing task on the digital production line can be completed within the specified time, thereby ensuring efficient and orderly operation of the production line and reducing production and manufacturing costs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119497232A_ABST
    Figure CN119497232A_ABST
Patent Text Reader

Abstract

The invention provides a resource scheduling method and a related device. The method comprises the following steps: acquiring the longest execution time, the generation period and the maximum allowable response time of a data processing task and the topological structure and the transmission bandwidth of a data processing network; based on the longest execution time, the generation period and the maximum allowable response time of the data processing task, a time slot scheduling algorithm is used for planning a calculation time slot, and a calculation time slot scheduling decision is obtained; based on the topological structure and the transmission bandwidth of the data processing network and a calculation time slot scheduling decision, planning a transmission time slot by using a network channel transmission time slot scheduling algorithm to obtain a network channel transmission time slot decision; and performing resource scheduling on the equipment in the data processing network based on the calculation time slot scheduling decision and the network channel transmission time slot decision. Compared with configuration of exclusive computing equipment for each intelligent equipment, the method and the device have the advantages that investment of computing network resources is reduced, and cost reduction and benefit increase can be realized.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of communication technology, and in particular to a resource scheduling method and related devices. Background Art

[0002] With the development of intelligent technology and the continuous increase in labor costs, it has become an inevitable trend for the industrial industry to introduce a large number of intelligent equipment and intelligent technologies into the actual production and manufacturing process, create digital production lines and digital factories, reduce labor costs, and improve production efficiency.

[0003] In the early stages of industrial digitalization, relatively few smart devices and technologies were introduced, and the amount of data and communication generated was relatively small. It was only necessary to configure a computing device for each smart device and then deploy a professional network link between the devices to meet the real-time requirements of data processing and data transmission. However, as the upgrading process of industrial digitalization continues to advance, more and more smart devices and smart technologies are involved in the production and manufacturing process. The configuration of dedicated computing devices for each smart device and the way of pulling dedicated network links between devices will significantly increase the production and manufacturing costs. Summary of the invention

[0004] In view of this, the purpose of this application is to provide a resource scheduling method and related devices to reduce the investment in computing network resources and achieve cost reduction and efficiency improvement. The specific technical solution is as follows:

[0005] In a first aspect, the present application provides a resource scheduling method, the method comprising:

[0006] Obtaining the longest execution time, generation cycle and maximum allowed response time of the data processing task and the topology and transmission bandwidth of the data processing network, wherein the data processing network includes the device corresponding to the data processing task;

[0007] Based on the longest execution time, generation cycle and maximum allowed response time of the data processing task, a time slot scheduling algorithm is used to plan the computing time slots to obtain a computing time slot scheduling decision;

[0008] Based on the topological structure and transmission bandwidth of the data processing network and the calculation time slot scheduling decision, a network channel transmission time slot scheduling algorithm is used to plan the transmission time slot to obtain a network channel transmission time slot decision;

[0009] Based on the computing time slot scheduling decision and the network channel transmission time slot decision, resources are scheduled for devices in the data processing network.

[0010] In a possible implementation, the planning of computing time slots by using a time slot scheduling algorithm based on the longest execution time, generation cycle and maximum allowed response time of the data processing task to obtain a computing time slot scheduling decision includes:

[0011] Sorting the longest execution times of the data processing tasks to obtain an execution time matrix;

[0012] Calculate the shortest transmission delay of each data processing task in the execution time matrix to each computing device in the data processing network;

[0013] Sorting computing devices in the data processing network to obtain a computing device matrix;

[0014] According to the order of the data processing tasks in the execution time matrix and the order of the computing devices in the computing device matrix, based on the generation cycle of the data processing tasks, the maximum allowed response time and the shortest transmission delay, the time slots of the computing devices are allocated to the data processing tasks;

[0015] All data processing tasks in the execution time matrix are traversed to obtain the computing time slot scheduling decision.

[0016] In a possible implementation, after sorting the longest execution times of the data processing tasks to obtain an execution time matrix, the method further includes:

[0017] According to the initial order of the data processing tasks, based on the longest execution time of the data processing tasks, construct a task execution time matrix;

[0018] Based on the mapping relationship between the data processing tasks in the task execution time matrix and the data processing tasks in the execution time matrix, a mapping relationship matrix is ​​constructed.

[0019] In a possible implementation, traversing all data processing tasks in the execution time matrix to obtain the computing time slot scheduling decision includes:

[0020] Traversing all data processing tasks in the execution time matrix to obtain time slot allocation results for each data processing task;

[0021] The time slot allocation results are sequentially adjusted based on the mapping relationship matrix to obtain the calculation time slot scheduling decision.

[0022] In a possible implementation, the planning of transmission time slots using a network channel transmission time slot scheduling algorithm based on the topology structure and transmission bandwidth of the data processing network and the calculation time slot scheduling decision to obtain a network channel transmission time slot decision includes:

[0023] Based on the calculation time slot scheduling decision, determining the sending end, receiving end and maximum transmission delay of each data processing task;

[0024] Based on the topological structure and transmission bandwidth of the data processing network as well as the sending end, receiving end and maximum transmission delay of each data processing task, the network channel transmission time slot scheduling algorithm is used to plan the transmission time slot to obtain the network channel transmission time slot decision.

[0025] In a second aspect, the present application further provides a resource scheduling device, the device comprising:

[0026] An acquisition module, used to acquire the longest execution time, generation cycle and maximum allowed response time of the data processing task and the topology and transmission bandwidth of the data processing network, wherein the data processing network includes the device corresponding to the data processing task;

[0027] A computing time slot scheduling module is used to plan computing time slots using a time slot scheduling algorithm based on the longest execution time, generation cycle and maximum allowed response time of the data processing task to obtain a computing time slot scheduling decision;

[0028] A transmission time slot scheduling module, configured to plan transmission time slots using a network channel transmission time slot scheduling algorithm based on the topology and transmission bandwidth of the data processing network and the calculation time slot scheduling decision, and obtain a network channel transmission time slot decision;

[0029] A resource scheduling module is used to schedule resources for devices in the data processing network based on the computing time slot scheduling decision and the network channel transmission time slot decision.

[0030] In a possible implementation, the calculation time slot scheduling module includes:

[0031] A time sorting unit, used to sort the longest execution time of the data processing tasks to obtain an execution time matrix;

[0032] A delay calculation unit, used to calculate the shortest transmission delay of each data processing task in the execution time matrix to each computing device in the data processing network;

[0033] A device sorting unit, used to sort the computing devices in the data processing network to obtain a computing device matrix;

[0034] a time slot allocation unit, configured to allocate time slots of computing devices to the data processing tasks according to the order of the data processing tasks in the execution time matrix and the order of computing devices in the computing device matrix, based on the generation cycle of the data processing tasks, the maximum allowed response time and the shortest transmission delay;

[0035] The task traversal unit is used to traverse all data processing tasks in the execution time matrix to obtain the computing time slot scheduling decision.

[0036] In a third aspect, the present application further provides a computer device, including: a memory and a processor;

[0037] Wherein, the memory is used to store computer programs;

[0038] The processor is used to execute the computer program in the memory to implement the method described in the first aspect or any one of the first aspects.

[0039] In a fourth aspect, the present application further provides a computer-readable storage medium storing instructions, which, when executed on a computer, enables the computer to execute the method described in the first aspect or any one of the first aspects.

[0040] In a fifth aspect, the present application further provides a computer program product, including a computer program / instruction, wherein the computer program / instruction implements the method described in the first aspect or any one of the first aspects when the computer program / instruction is executed on a computer.

[0041] In this application, the longest execution time, generation cycle and maximum allowed response time of the data processing task and the topological structure and transmission bandwidth of the data processing network are obtained, and the data processing network includes the equipment corresponding to the data processing task; based on the longest execution time, generation cycle and maximum allowed response time of the data processing task, the time slot scheduling algorithm is used to plan the calculation time slot to obtain the calculation time slot scheduling decision; based on the topological structure and transmission bandwidth of the data processing network and the calculation time slot scheduling decision, the network channel transmission time slot scheduling algorithm is used to plan the transmission time slot to obtain the network channel transmission time slot decision; based on the calculation time slot scheduling decision and the network channel transmission time slot decision, the equipment in the data processing network is resource scheduled. This application uses the time slot scheduling algorithm to allocate calculation time slots for data processing tasks, and uses the network channel transmission time slot scheduling algorithm to allocate transmission time slots for data processing tasks, so that the interaction time between devices in the data processing network for data processing tasks is determined, which can ensure that each data processing task on the production line can be completed within the specified time, thereby ensuring the efficient and orderly operation of the production line. Compared with configuring a dedicated computing device for each smart device, this application reduces the investment in computing network resources and can achieve cost reduction and efficiency improvement. BRIEF DESCRIPTION OF THE DRAWINGS

[0042] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.

[0043] Figure 1 A schematic diagram of the structure of a computing power network scheduling system provided in an embodiment of the present application is shown;

[0044] Figure 2 A flow chart of a resource scheduling method provided by an embodiment of the present application is shown;

[0045] Figure 3 A schematic diagram of the structure of a resource scheduling device provided in an embodiment of the present application is shown. DETAILED DESCRIPTION

[0046] In order to make the purpose, technical solution and advantages of the embodiments of the present application clearer, the technical solution in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.

[0047] With the development of intelligent technology and the continuous increase in labor costs, it has become an inevitable trend for the industrial industry to introduce a large number of intelligent devices and intelligent technologies into the actual production and manufacturing process, build digital production lines and digital factories, reduce labor costs, and improve production efficiency. In order to achieve efficient operation of digital production lines and digital factories and ensure production quality, two major conditions must be met. First, the industrial data continuously generated by intelligent devices involved in production and manufacturing can be processed in a timely manner. Second, the processing results of industrial data can be transmitted to the intelligent devices or employees who need these processing results in a timely manner, so as to achieve effective interaction between multiple devices and multiple production links on the digital production line.

[0048] In the early stages of industrial digitalization upgrades, relatively few smart devices and smart technologies were introduced, and the amount of data and communication generated at this time was relatively small. It was only necessary to configure a computing device for each smart device and then deploy a professional network link between the devices to meet the real-time requirements of data processing and data transmission. However, as the upgrade process of industrial digitalization continues to advance, more and more smart devices and smart technologies are involved in the production and manufacturing process. Configuring exclusive computing devices for each smart device and pulling dedicated network links between devices will significantly increase production and manufacturing costs. Therefore, a new low-cost method is needed to support the timely processing and transmission of industrial data, thereby ensuring the production efficiency of digital production lines.

[0049] The embodiment of the present application proposes a computing power network scheduling system to build a deterministic computing and network integrated scheduling system that can be applied to industrial environments, realize efficient sharing of computing equipment and network resources, reduce the investment in computing and network resources, and ensure the efficient operation of digital production lines, thereby helping industrial environments to achieve cost reduction, efficiency improvement and digital transformation.

[0050] The structure of the computing power network scheduling system is as follows: Figure 1 As shown, the computing power network scheduling system may include a facility layer, an information layer, and a scheduling layer.

[0051] The facility layer can include all smart devices involved in production and manufacturing, all available computing devices in the digital factory, and time-sensitive networks. Among them, the time-sensitive network can be understood as a data processing network. The time-sensitive network technology is used to connect the smart devices involved in production and manufacturing and the computing devices configured in the digital factory to form a network structure that can process and transmit data processing tasks on the digital production line. Time-Sensitive Networking (TSN) is a network technology that supports real-time communication and time-sensitive applications. It is designed to meet the needs of industrial automation, vehicle-to-vehicle communications, smart grids and other fields for precise synchronization and low latency.

[0052] The information layer may include an information management module for data processing tasks of smart devices, an information management module for computing devices, and an information management module for time-sensitive networks. Among them, the information management module for data processing tasks of smart devices is used to manage the information of data processing tasks generated by smart devices. The information of data processing tasks generated by smart devices may include the generation cycle of all data processing tasks generated by all smart devices and the maximum acceptable response time of data processing tasks. The information management module of computing devices is used to manage the computing information of computing devices in response to various data processing tasks. The computing information may include the computing time taken by each computing device to execute each data processing task generated by the smart device. The information management module of time-sensitive networks is used to manage the information of time-sensitive networks connecting smart devices and computing devices. The information of time-sensitive networks may include network topology and network bandwidth of each link.

[0053] It should be noted that the embodiments of the present application may assume that each smart device can only generate one periodic data processing task. In the actual production process, each smart device can generate multiple periodic data processing tasks, which can be achieved by logically backing up multiple smart devices. That is, if one smart device can generate three periodic data processing tasks, it can be assumed that three smart devices are deployed at the location of this smart device, and each smart device generates one periodic data processing task.

[0054] The scheduling layer may include a computing device computing time slot scheduling module, a network channel transmission time slot scheduling module, and a decision distribution module. The computing device computing time slot scheduling module allocates a computing device to each data processing task and specifies the time slot in which the computing device responds to the data processing task. The network channel transmission time slot scheduling module allocates transmission time slots for each data transmission between the smart device and the computing device. The decision distribution module is responsible for distributing the computing time slot scheduling decisions and the network channel transmission time slot decisions to the device layer and deploying them on the corresponding smart devices, computing devices, and switches in the time-sensitive network.

[0055] See also Figure 2 , shows a flow chart of a resource scheduling method provided by an embodiment of the present application. The embodiment of the present application can be applied to a computing power network scheduling system, and at least includes the following steps:

[0056] S11, obtaining the longest execution time, generation cycle and maximum allowed response time of the data processing task and the topology structure and transmission bandwidth of the data processing network.

[0057] The digital production line can arrange the positions of intelligent devices according to the operation process of the products to be produced. After the arrangement is completed, the intelligent devices on the digital production line and the computing devices pre-deployed in the digital factory are interconnected through time-sensitive network technology to form a data processing network. Therefore, the data processing network can include devices corresponding to data processing tasks, that is, including intelligent devices and computing devices corresponding to data processing tasks. Intelligent devices are used to generate data processing tasks, and computing devices are used to execute data processing tasks.

[0058] After the data processing network is built, the embodiment of the present application can control the intelligent devices and computing devices in the data processing network to start running. All data processing tasks generated by the intelligent devices are run multiple times on each computing device to obtain the longest execution time of each data processing task on each computing device.

[0059] It should be noted that the specific number of times each data processing task is run on a computing device can be preset according to actual conditions, for example, 10 times. In addition, in order to avoid computing resource competition caused by multiple tasks running simultaneously on the same computing device, it is stipulated that each computing device can only execute one task in a time slot, and the execution process of each task cannot be interrupted.

[0060] In the embodiment of the present application, after the data processing network is built, the topology and transmission bandwidth of the data processing network can be obtained, and after the operation of the intelligent devices and computing devices in the data processing network is controlled, the maximum execution time, generation cycle and maximum allowed response time of the data processing task can be obtained. The data processing task can be one or more.

[0061] After obtaining the maximum execution time, the maximum execution time can be stored in the information management module of the computing device for management; after obtaining the generation cycle and the maximum allowed response time, the generation cycle and the maximum allowed response time can be stored in the information management module of the intelligent device data processing task for management; after obtaining the topology structure and the transmission bandwidth, the topology structure and the transmission bandwidth can be stored in the information management module of the time-sensitive network for management.

[0062] S12, based on the longest execution time, generation cycle and maximum allowed response time of the data processing task, a time slot scheduling algorithm is used to plan the computing time slots to obtain a computing time slot scheduling decision.

[0063] The computing time slot scheduling module of the computing device can obtain information from the information management module of the computing device and the information management module of the data processing task of the intelligent device, and based on this information, call the pre-designed computing time slot scheduling algorithm to obtain the computing time slot scheduling decision, that is, to allocate a computing device to each data processing task and occupy the time slot of the computing device. It can also obtain a schedule for data transmission between the computing device and the intelligent device based on the computing time slot scheduling decision and the maximum allowed response time of each data processing task.

[0064] Specifically, based on the longest execution time, generation cycle and maximum allowed response time of the data processing task, the time slot scheduling algorithm is used to plan the computing time slots to obtain the computing time slot scheduling decision, which may include the following steps:

[0065] S121, sorting the longest execution times of the data processing tasks to obtain an execution time matrix.

[0066] The computing device computing time slot scheduling module obtains the longest execution time of each data processing task on each computing device from the information management module of the computing device, and constructs a task execution time matrix, which is represented by oldtask. Oldtask is an N×M dimensional matrix, where N represents the number of data processing tasks in the computing power network scheduling system, M represents the number of computing devices in the computing power network scheduling system, and oldtask[i][j] represents the longest execution time of the i-th data processing task on the j-th computing device.

[0067] It should be noted that oldtask[i][j] is rounded up according to the agreed dimension. For example, the agreed dimension unit is second (s), and the longest execution time of the i-th data processing task on the j-th computing device is 5.6s, then it is rounded up to 6s.

[0068] The computing device computing time slot scheduling module obtains the generation period (period) and the maximum allowed response time (deadline, ddl) of each data processing task from the information management module of the intelligent device data processing task, and constructs the task generation period matrix and the task response time matrix respectively, which are represented by oldperiod and oldddl. Both oldperiod and oldddl are N-dimensional vectors. oldperiod and oldddl are consistent with the index directory in oldtask, that is, the corresponding index values ​​of the same data processing task in oldperiod, oldddl and oldtask are consistent. oldperiod and oldddl are consistent with the dimensions used by oldtask.

[0069] Sort oldtask according to the preset rules to form a new matrix, namely the execution time matrix, represented by newtask. The matrix size of newtask and oldtask are the same, and the meaning is the same, but the index value corresponding to the data processing task has changed. Therefore, new2oldindex is used to represent the mapping relationship between the task index value of the new matrix and the initial matrix. new2oldindex is an N-dimensional vector, that is, the task n in the new matrix corresponds to the task new2oldindex[n] in the initial matrix.

[0070] oldperiod and oldddl can also be sorted according to preset rules to form a new matrix, that is, to generate a period matrix and a response time matrix. The period matrix is ​​represented by newperiod, and the response time matrix is ​​represented by newddl. The matrix size of newperiod and oldperiod are the same, and the meaning is the same, but the index value corresponding to the data processing task changes; the matrix size of newddl and oldddl are the same, and the meaning is the same, but the index value corresponding to the data processing task changes.

[0071] Based on this, the embodiments of the present application can also construct a task execution time matrix according to the initial order of the data processing tasks and based on the longest execution time of the data processing tasks; and construct a mapping relationship matrix based on the mapping relationship between the data processing tasks in the task execution time matrix and the data processing tasks in the execution time matrix.

[0072] S122, calculating the shortest transmission delay of each data processing task in the execution time matrix to each computing device in the data processing network.

[0073] The topology structure and transmission bandwidth information are obtained from the information management module of the time-sensitive network. Based on this information, the shortest path algorithm such as Dijkstra algorithm or Bellman-Ford algorithm, Shortest Path Faster Algorithm (SPFA) is used to estimate the transmission delay of each intelligent device to each computing device based on the bandwidth information. An N×M dimensional matrix newpretransfer is used to represent the shortest transmission delay from each intelligent device to each computing device, and the transmission delay matrix is ​​obtained. The shortest transmission delay is aligned with the dimension of the processing time of the computing device, and rounded up. newpretransfer[i][j] represents the shortest transmission delay required for the i-th data processing task to transfer the data to be processed to the j-th computing device. The index directory in newpretransfer is consistent with that in newtask, that is, the index values ​​corresponding to the same data processing task in newpretransfer and newtask are consistent.

[0074] S123, sort the computing devices in the data processing network to obtain a computing device matrix.

[0075] The computing devices are sorted according to preset rules to form a computing device matrix, which is an M-dimensional vector.

[0076] S124, according to the order of the data processing tasks in the execution time matrix and the order of the computing devices in the computing device matrix, based on the generation cycle of the data processing tasks, the maximum allowed response time and the shortest transmission delay, allocate time slots of the computing devices to the data processing tasks.

[0077] S125, traverse all data processing tasks in the execution time matrix to obtain a computing time slot scheduling decision.

[0078] According to the order of newtask, starting from the first data processing task, a computing time slot is allocated to each data processing task until all data processing tasks get the corresponding computing time slot.

[0079] For the i-th data processing task, traverse from the first computing device according to the order of the computing device matrix, and allocate computing time slots to the i-th data processing task based on the generation cycle, maximum allowed response time and shortest transmission delay of the i-th data processing task.

[0080] The index values ​​of the same data task in newtask and oldtask are inconsistent. Therefore, after obtaining the time slot allocation results of each data processing task, it is necessary to map the time slot allocation results back to the initial index value.

[0081] Based on this, the embodiment of the present application can traverse all data processing tasks in the execution time matrix to obtain the time slot allocation results of each data processing task; sequentially adjust the time slot allocation results based on the mapping relationship matrix to obtain the calculation time slot scheduling decision.

[0082] The embodiment of the present application allocates computing time slots to each data processing task through a pre-designed time slot scheduling algorithm, so that the time slot for a computing device to execute any data processing task is determined. Multiple time slot scheduling algorithms can be pre-designed. When one time slot scheduling algorithm cannot allocate computing time slots for all data processing tasks, another time slot scheduling algorithm is used to allocate computing time slots for all data processing tasks. The specific process of planning computing time slots using a time slot scheduling algorithm will be described in subsequent embodiments.

[0083] S13, based on the topological structure and transmission bandwidth of the data processing network and the calculation time slot scheduling decision, the network channel transmission time slot scheduling algorithm is used to plan the transmission time slot and obtain the network channel transmission time slot decision.

[0084] The network channel transmission time slot scheduling module obtains the computing time slot scheduling decision from the computing device computing time slot scheduling module, obtains the topology structure and transmission bandwidth and other information from the information management module of the time-sensitive network, and based on this information, calls the pre-designed network channel transmission time slot scheduling algorithm to obtain the network channel transmission time slot decision, and allocates transmission time slots for each interaction between the computing device and the smart device.

[0085] The input of the network channel transmission time slot scheduling algorithm generally needs to clarify the sender, receiver, and maximum delay (transDDL) of each stream. The embodiment of the present application is based on the calculation time slot scheduling decision of each computing device obtained by the calculation time slot scheduling algorithm, combined with the generation cycle and maximum allowed response time of all data processing tasks generated by all intelligent devices, to obtain the sender, receiver, and transDDL of the stream related to each data processing task.

[0086] Specifically, there are two streams related to each data processing task. The sender of one stream is the intelligent device that generates the data processing task, and the receiver is the computing device that will execute the data processing task according to the computing time slot scheduling decision. transDDL can be calculated by subtracting the time when the data processing task is generated from the time of the first computing time slot allocated for the data processing task on the computing device; the sender of the other stream is the computing device that executes the data processing task, and the receiver is the intelligent device that generates the data processing task or other intelligent devices that need to receive the task execution results. transDDL can be calculated by subtracting the time of the last computing time slot allocated for the data processing task on the computing device from the maximum allowed response time.

[0087] Through the above method, the sender, receiver, and transDDL of all flows can be obtained. The network channel transmission time slot scheduling algorithm is called to plan the transmission time slot of the network channel according to the sender, receiver, and transDDL of each flow, and finally the channel transmission time slot scheduling decision is obtained.

[0088] Based on this, based on the topological structure and transmission bandwidth of the data processing network and the calculation time slot scheduling decision, the network channel transmission time slot scheduling algorithm is used to plan the transmission time slot, and the network channel transmission time slot decision is obtained, which can include the following steps:

[0089] S131, based on the calculation time slot scheduling decision, determine the sending end, receiving end and maximum transmission delay of each data processing task;

[0090] S132, based on the topological structure and transmission bandwidth of the data processing network as well as the sending end, receiving end and maximum transmission delay of each data processing task, the transmission time slot is planned using the network channel transmission time slot scheduling algorithm to obtain the network channel transmission time slot decision.

[0091] The network channel transmission time slot scheduling algorithm can be a time-sensitive network channel transmission time slot scheduling algorithm such as a scheduling algorithm based on time-aware shaping (TimeAware Shaper, TAS), a scheduling algorithm based on cyclic queuing and forwarding (CQF) or a scheduling algorithm based on a credit shaper.

[0092] If the network channel transmission time slot decision can be successfully obtained based on the pre-designed network channel transmission time slot scheduling algorithm, then enter step S14; if not, jump to step S12, and the computing device calculation time slot scheduling module calls other pre-designed calculation time slot scheduling algorithms to obtain another calculation time slot scheduling decision, as well as a schedule for data transmission between the computing device and the smart device. If the calculation time slot scheduling algorithm is called multiple times and still cannot successfully allocate a calculation time slot for each data processing task, the scheduling fails, the computing power network system ends, and the computing power network system needs to be adjusted. The optional adjustment plan is to adjust the production rhythm of the digital production line, or to re-plan the product operation process on the digital production line.

[0093] S14, based on the calculation time slot scheduling decision and the network channel transmission time slot decision, perform resource scheduling for the devices in the data processing network.

[0094] If the decision distribution module obtains the computing time slot scheduling decision from the computing device computing time slot scheduling module and the network channel transmission time slot decision from the network channel transmission time slot scheduling module, the above decision will be distributed to the smart device, computing device, and switch device of the time-sensitive network for deployment.

[0095] After the digital production line starts operating, each intelligent device transmits the data to be processed to the assigned computing device according to the assigned transmission time slot. The computing device executes the data processing task according to the computing time slot decision. The computing device then transmits the calculation results to the intelligent device corresponding to the data processing task according to the assigned transmission time slot.

[0096] In an embodiment of the present application, the maximum execution time, generation cycle and maximum allowed response time of a data processing task and the topological structure and transmission bandwidth of a data processing network are obtained, and the data processing network includes a device corresponding to the data processing task; based on the maximum execution time, generation cycle and maximum allowed response time of the data processing task, a time slot scheduling algorithm is used to plan the calculation time slots to obtain a calculation time slot scheduling decision; based on the topological structure and transmission bandwidth of the data processing network and the calculation time slot scheduling decision, a network channel transmission time slot scheduling algorithm is used to plan the transmission time slots to obtain a network channel transmission time slot decision; based on the calculation time slot scheduling decision and the network channel transmission time slot decision, resources are scheduled for the devices in the data processing network. The embodiment of the present application utilizes a time slot scheduling algorithm to allocate computing time slots to data processing tasks, and utilizes a network channel transmission time slot scheduling algorithm to allocate transmission time slots to data processing tasks, so that the interaction time between devices in the data processing network for data processing tasks is determined, and it can be ensured that each data processing task on the production line can be completed within the specified time, thereby ensuring that the production line operates efficiently and orderly. Compared with configuring a dedicated computing device for each smart device, the embodiment of the present application reduces the investment in computing network resources, and can achieve cost reduction and efficiency improvement.

[0097] Next, the specific process of calculating time slot planning using the time slot scheduling algorithm is introduced.

[0098] The present application embodiment discloses a computing device computing time slot scheduling algorithm, which is a PPF-CompSS algorithm and is applied to a computing power network scheduling system. Based on the algorithm, a computing time slot scheduling decision of a computing device can be obtained, which is as follows:

[0099] S21, construct the initial matrix: oldperiod, oldddl and oldtask.

[0100] The method of constructing oldperiod, oldddl and oldtask can refer to the method of constructing oldperiod, oldddl and oldtask in S121, and will not be repeated in the embodiment of the present application.

[0101] S22, construct a new matrix: new1period, new1ddl, new1task, new1pretransfer and PD.

[0102] Sort oldperiod, oldddl and oldtask according to the period of the data processing tasks from small to large, and sort the data processing tasks of the same period according to ddl from small to large to form a new matrix, namely the first generation period matrix, the first response time matrix and the first execution time matrix, which are represented by new1period, new1ddl and new1task respectively. The matrix size of new1task is consistent with that of oldtask, and the meanings they represent are consistent. The matrix size of new1period is consistent with that of oldperiod, and the meanings they represent are consistent. The matrix size of new1ddl is consistent with that of oldddl, and the meanings they represent are consistent. Only the index values ​​corresponding to the data processing tasks have changed. Therefore, new12oldindex is used to represent the mapping relationship between the task index values ​​of the new matrix and the initial matrix. new12oldindex is the first mapping relationship matrix of an N-dimensional vector, that is, the task n in the new matrix corresponds to the task new12oldindex[n] in the initial matrix. When the embodiment of the present application sorts oldperiod, oldddl and oldtask, only the rows of the matrix are transformed, and the columns of the matrix are not transformed. For example, the computing devices corresponding to each column of new1task and oldtask are the same.

[0103] The method of constructing the first transmission delay matrix may refer to the method of constructing newpretransfer in S122, and will not be described in detail in this embodiment of the present application. The first transmission delay matrix is ​​represented by new1pretransfer.

[0104] The computing devices are sorted from high to low according to the performance value to obtain a computing device matrix. The sorted computing device matrix is ​​represented as PD. PD is an M-dimensional vector, and PD[m] represents the computing device with the mth performance value ranking.

[0105] S23, determine the hyperperiod.

[0106] According to new1period or oldperiod, the lowest common multiple of the data processing task period is obtained as hyperperiod (abbreviated as hp). Hyperperiod represents a complete time unit that includes all task execution cycles.

[0107] S24, construct the M×hp dimensional matrix CompSS.

[0108] CompSS[a][b] indicates that time slot b of computing device a is occupied by task CompSS[a][b]. Initially, the values ​​in CompSS are all negative infinity, indicating that computing time slots have not been allocated. Next, computing time slots are allocated to each task.

[0109] S25, according to the order of new1task, starting from the first task, allocate computing time slots for each task according to S26-S27, until all tasks get the corresponding computing time slots, jump to S28; if the computing time slot allocation of some tasks fails, the computing device computing time slot scheduling module will feedback the allocation failure to the computing power network scheduling system, and the algorithm will end.

[0110] S26, traverse from the first device according to the order of PDs, and allocate computing time slots for task i according to S27. If the allocation is successful, return "allocation successful" to S25. If the time slot is not allocated for task i after the traversal, return "allocation failed" to S25.

[0111] S27, for task i and the h-th computing device PD[h] in PD, the computing time of task i on the computing device t=new1task[i][PD[h]], CompSS[PD[h]] is the current time slot allocation on the computing device PD[h], and the shortest transmission delay pret=new1pretransfer[i][PD[h]].

[0112] Divide CompSS[PD[h]] into k segments according to new1period[i]. For each of the k segments, skip the first pret time slots (regardless of whether the time slots are allocated), and then check whether there are t consecutive time slots that are not allocated in the segment. If some of the k segments do not have t consecutive time slots that are not allocated, jump to S26; if all of the k segments have t consecutive empty time slots, then from left to right, temporarily allocate the first t consecutive empty time slots after skipping the first pret time slots in each segment to task i. Then check whether the time interval between the last time slot temporarily allocated to task i in each segment and the initial time of each new1period[i] is within the range of new1ddl[i]. If some of the segment intervals exceed new1ddl[i], jump to S26; if all the segment intervals are within the range of new1ddl[i], then permanently allocate the first t consecutive empty time slots after skipping the first pret time slots in each segment to task i, and jump to S25.

[0113] S28, mapping the allocation results of each computing device and each computing time slot recorded in CompSS back to the initial task index value, that is, according to new12oldindex, performing two assignment operations of temp=CompSS[PD[h]][b], CompSS[PD[h]][b]=new12oldindex[temp]. Then, CompSS is the computing time slot scheduling decision obtained based on the computing device computing time slot scheduling algorithm (PPF-CompSS).

[0114] The embodiment of the present application discloses another computing time slot scheduling algorithm for computing devices, which is a DPF-CompSS algorithm and is applied to a computing power network scheduling system. Based on the algorithm, a computing time slot scheduling decision for computing devices can be obtained, which is as follows:

[0115] S31, construct the initial matrix: oldperiod, oldddl and oldtask.

[0116] The method of constructing oldperiod, oldddl and oldtask can refer to the method of constructing oldperiod, oldddl and oldtask in S121, and will not be repeated in the embodiment of the present application.

[0117] S32, construct new matrices: new2period, new2ddl, new2task, new2pretransfer and PD.

[0118] Sort oldperiod, oldddl and oldtask according to the ddl of the data processing task from small to large, and sort the data processing tasks of the same ddl according to period from small to large to form a new matrix, namely the first generation period matrix, the first response time matrix and the first execution time matrix, which are represented by new2period, new2ddl and new2task respectively. The matrix size of new2task is consistent with that of oldtask, and the meanings they represent are consistent. The matrix size of new2period is consistent with that of oldperiod, and the meanings they represent are consistent. The matrix size of new2ddl is consistent with that of oldddl, and the meanings they represent are consistent. Only the index values ​​corresponding to the data processing tasks have changed. Therefore, new22oldindex is used to represent the mapping relationship between the task index values ​​of the new matrix and the initial matrix. new22oldindex is a second mapping relationship matrix of an N-dimensional vector, i.e., the task n in the new matrix corresponds to the task new22oldindex[n] in the initial matrix. When the embodiment of the present application sorts oldperiod, oldddl and oldtask, only the row transformation of the matrix is ​​performed, and the column transformation of the matrix is ​​not performed. For example, the computing devices corresponding to each column of new2task and oldtask are the same.

[0119] The method of constructing the second transmission delay matrix can refer to the method of constructing newpretransfer in S122, which will not be described in detail in the present embodiment. The second transmission delay matrix is ​​represented by new2pretransfer.

[0120] The computing devices are sorted from high to low according to the performance value to obtain a computing device matrix. The sorted computing device matrix is ​​represented as PD. PD is an M-dimensional vector, and PD[m] represents the computing device with the mth performance value ranking.

[0121] S33, determine the hyperperiod.

[0122] According to new2period or oldperiod, the lowest common multiple of the data processing task period is obtained as hyperperiod (abbreviated as hp).

[0123] S34, construct the M×hp dimensional matrix CompSS.

[0124] CompSS[a][b] indicates that time slot b of computing device a is occupied by task CompSS[a][b]. Initially, the values ​​in CompSS are all negative infinity, indicating that computing time slots have not been allocated. Next, computing time slots are allocated to each task.

[0125] S35, according to the order of new2task, starting from the first task, allocate computing time slots for each task according to S36-S37, until all tasks get the corresponding computing time slots, jump to S38; if the computing time slot allocation of some tasks fails, the computing device computing time slot scheduling module will feedback the allocation failure to the computing power network scheduling system, and the algorithm will end.

[0126] S36, traverse from the first device according to the order of PDs, and allocate computing time slots for task i according to S37. If the allocation is successful, return "allocation successful" to S35. If the traversal is completed and no time slot is allocated for task i, return "allocation failed" to S35.

[0127] S37, for task i and the h-th computing device PD[h] in PD, the computing time of task i on the computing device t=new2task[i][PD[h]], CompSS[PD[h]] is the current time slot allocation on the computing device PD[h], and the shortest transmission delay pret=new2pretransfer[i][PD[h]].

[0128] Divide CompSS[PD[h]] into k segments according to new2period[i]. For each of the k segments, skip the first pret time slots (regardless of whether the time slots are allocated), and then check whether there are t consecutive time slots that are not allocated in the segment. If some of the k segments do not have t consecutive time slots that are not allocated, jump to S36; if all of the k segments have t consecutive empty time slots, then from left to right, temporarily allocate the first t consecutive empty time slots after skipping the first pret time slots in each segment to task i. Then check whether the time interval between the last time slot temporarily allocated to task i in each segment and the initial time of each new2period[i] is within the range of new2ddl[i]. If some of the segment intervals exceed new2ddl[i], jump to S36; if all segment intervals are within the range of new2ddl[i], then permanently allocate the first t consecutive empty time slots after skipping the first pret time slots in each segment to task i, and jump to S35.

[0129] S38, mapping the allocation results of each computing device and each computing time slot recorded in CompSS back to the initial task index value, that is, according to new22oldindex, performing two assignment operations of temp=CompSS[PD[h]][b], CompSS[PD[h]][b]=new22oldindex[temp]. Then, CompSS is the computing time slot scheduling decision obtained based on the computing device computing time slot scheduling algorithm (DPF-CompSS).

[0130] The embodiment of the present application discloses another computing device computing time slot scheduling algorithm, which is a PLF-CompSS algorithm and is applied to a computing power network scheduling system. Based on the algorithm, a computing time slot scheduling decision of a computing device can be obtained, which is as follows:

[0131] S41, construct the initial matrix: oldperiod, oldddl and oldtask.

[0132] The method of constructing oldperiod, oldddl and oldtask can refer to the method of constructing oldperiod, oldddl and oldtask in S121, and will not be repeated in the embodiment of the present application.

[0133] S42, construct a new matrix: new3period, new3ddl, new3task, new3pretransfer and indexLtask2device.

[0134] Sort oldperiod, oldddl and oldtask according to the period of the data processing tasks from small to large, and sort the data processing tasks of the same period according to ddl from small to large to form a new matrix, namely the third generation period matrix, the third response time matrix and the third execution time matrix, which are represented by new3period, new3ddl and new3task respectively. The matrix size of new3task is consistent with that of oldtask, and the meanings they represent are consistent. The matrix size of new3period is consistent with that of oldperiod, and the meanings they represent are consistent. The matrix size of new3ddl is consistent with that of oldddl, and the meanings they represent are consistent. Only the index values ​​corresponding to the data processing tasks have changed. Therefore, new32oldindex is used to represent the mapping relationship between the task index values ​​of the new matrix and the initial matrix. new32oldindex is a third mapping relationship matrix of an N-dimensional vector, that is, the task n in the new matrix corresponds to the task new32oldindex[n] in the initial matrix. When the embodiment of the present application sorts oldperiod, oldddl and oldtask, only the rows of the matrix are transformed, and the columns of the matrix are not transformed. For example, the computing devices corresponding to each column of new3task and oldtask are the same.

[0135] The method of constructing the third transmission delay matrix can refer to the method of constructing newpretransfer in S122, and will not be described in detail in the embodiment of the present application. The first transmission delay matrix is ​​represented by new3pretransfer.

[0136] According to the order of the shortest transmission delay calculated by each smart device to each computing device from short to long, the computing devices are sorted to obtain a computing device matrix, that is, the index of the sorted computing devices relative to each smart device is represented by an N×M dimensional matrix indexLtask2device. indexLtask2device[i][h] represents the index value of the computing device closest to the hth smart device i, that is, the sequence number.

[0137] S43, determine the hyperperiod.

[0138] According to new3period or oldperiod, the lowest common multiple of the data processing task period is obtained as hyperperiod (abbreviated as hp).

[0139] S44, construct the M×hp dimensional matrix CompSS.

[0140] CompSS[a][b] indicates that time slot b of computing device a is occupied by task CompSS[a][b]. Initially, the values ​​in CompSS are all negative infinity, indicating that computing time slots have not been allocated. Next, computing time slots are allocated to each task.

[0141] S45, according to the order of new3task, starting from the first task, allocate computing time slots for each task according to S46-S47, until all tasks get the corresponding computing time slots, jump to S48; if the computing time slot allocation of some tasks fails, the computing device computing time slot scheduling module will feedback the allocation failure to the computing power network scheduling system, and the algorithm will end.

[0142] S46, for task i, traverse from the first device according to the order of indexLtask2device[i], and allocate computing time slots for task i according to S47. If the allocation is successful, return "allocation successful" to S45. If the traversal is completed and no time slot is allocated for task i, return "allocation failed" to S45.

[0143] S47, for task i and the hth computing device indexLtask2device[i][h] in indexLtask2device[i], the computing device index value is recorded as cnt, cnt = indexLtask2device[i][h], the computing time of task i on the computing device cnt is t = new3task[i][cnt], CompSS[cnt] is the current time slot allocation on the computing device cnt, and the shortest transmission delay pret = new3pretransfer[i][cnt].

[0144] Divide CompSS[cnt] into k segments according to new3period[i]. For each segment in the k segments, skip the first pret time slots (regardless of whether the time slots are allocated), and then check whether there are t consecutive time slots in the segment that are not allocated. If some of the k segments do not have t consecutive time slots that are not allocated, jump to S46; if all of the k segments have t consecutive empty time slots, then from left to right, temporarily allocate the first t consecutive empty time slots after skipping the first pret time slots in each segment to task i. Then check whether the time interval between the last time slot temporarily allocated to task i in each segment and the initial time of each new3period[i] is within the range of new3ddl[i]. If some of the segment intervals exceed new3ddl[i], jump to S46; if all segment intervals are within the range of new3ddl[i], then permanently allocate the first t consecutive empty time slots after skipping the first pret time slots in each segment to task i, and jump to S45.

[0145] S48, mapping the allocation results of each computing device and each computing time slot recorded in CompSS back to the initial task index value, that is, according to new32oldindex, executing temp=CompSS[indexLtask2device[i][h]][b], CompSS[indexLtask2device[i][h]][b]=new32oldindex[temp] twice. Then, CompSS is the computing time slot scheduling decision obtained based on the computing device computing time slot scheduling algorithm (PLF-CompSS).

[0146] The embodiment of the present application discloses another computing device computing time slot scheduling algorithm, which is a DLF-CompSS algorithm and is applied to a computing power network scheduling system. Based on the algorithm, a computing time slot scheduling decision of a computing device can be obtained, which is as follows:

[0147] S51, construct the initial matrix: oldperiod, oldddl and oldtask.

[0148] The method of constructing oldperiod, oldddl and oldtask can refer to the method of constructing oldperiod, oldddl and oldtask in S121, and will not be repeated in the embodiment of the present application.

[0149] S52, construct a new matrix: new4period, new4ddl, new4task, new4pretransfer and indexLtask2device.

[0150] Sort oldperiod, oldddl and oldtask according to the ddl of the data processing task from small to large, and sort the data processing tasks of the same ddl according to period from small to large to form a new matrix, namely the fourth generation period matrix, the fourth response time matrix and the fourth execution time matrix, which are represented by new4period, new4ddl and new4task respectively. The matrix size of new4task is consistent with that of oldtask, and the meanings they represent are consistent. The matrix size of new4period is consistent with that of oldperiod, and the meanings they represent are consistent. The matrix size of new4ddl is consistent with that of oldddl, and the meanings they represent are consistent. Only the index values ​​corresponding to the data processing tasks have changed. Therefore, new42oldindex is used to represent the mapping relationship between the task index values ​​of the new matrix and the initial matrix. new42oldindex is the fourth mapping relationship matrix of an N-dimensional vector, that is, the task n in the new matrix corresponds to the task new42oldindex[n] in the initial matrix. When the embodiment of the present application sorts oldperiod, oldddl and oldtask, only the rows of the matrix are transformed, and the columns of the matrix are not transformed. For example, the computing devices corresponding to each column of new4task and oldtask are the same.

[0151] The method of constructing the fourth transmission delay matrix can refer to the method of constructing newpretransfer in S122, which will not be described in detail in this embodiment of the present application. The fourth transmission delay matrix is ​​represented by new4pretransfer.

[0152] According to the order of the shortest transmission delay calculated by each smart device to each computing device from short to long, the computing devices are sorted to obtain a computing device matrix, that is, the index of the sorted computing devices relative to each smart device is represented by an N×M dimensional matrix indexLtask2device. indexLtask2device[i][h] represents the index value of the computing device closest to the hth smart device i, that is, the sequence number.

[0153] S53, determine the hyperperiod.

[0154] According to new4period or oldperiod, the lowest common multiple of the data processing task period is obtained as hyperperiod (abbreviated as hp).

[0155] S54, construct the M×hp dimensional matrix CompSS.

[0156] CompSS[a][b] indicates that time slot b of computing device a is occupied by task CompSS[a][b]. Initially, the values ​​in CompSS are all negative infinity, indicating that computing time slots have not been allocated. Next, computing time slots are allocated to each task.

[0157] S55, according to the order of new4task, starting from the first task, allocate computing time slots for each task according to S56-S57, until all tasks get the corresponding computing time slots, jump to S58; if the computing time slot allocation of some tasks fails, the computing device computing time slot scheduling module will feedback the allocation failure to the computing power network scheduling system, and the algorithm will end.

[0158] S56, for task i, traverse from the first device according to the order of indexLtask2device[i], and allocate computing time slots to task i according to S57. If the allocation is successful, return "allocation successful" to S55. If the traversal is completed and no time slot is allocated to task i, return "allocation failed" to S55.

[0159] S57, for task i and the hth computing device indexLtask2device[i][h] in indexLtask2device[i], the computing device index value is recorded as cnt, cnt = indexLtask2device[i][h], the computing time of task i on the computing device cnt is t = new4task[i][cnt], CompSS[cnt] is the current time slot allocation on the computing device cnt, and the shortest transmission delay pret = new4pretransfer[i][cnt].

[0160] Divide CompSS[cnt] into k segments according to new4period[i]. For each segment in the k segments, skip the first pret time slots (regardless of whether the time slots are allocated), and then check whether there are t consecutive time slots in the segment that are not allocated. If some of the k segments do not have t consecutive time slots that are not allocated, jump to S56; if all of the k segments have t consecutive empty time slots, then from left to right, temporarily allocate the first t consecutive empty time slots after skipping the first pret time slots in each segment to task i. Then check whether the time interval between the last time slot temporarily allocated to task i in each segment and the initial time of each new4period[i] is within the range of new4ddl[i]. If some of the segment intervals exceed new4ddl[i], jump to S56; if all segment intervals are within the range of new4ddl[i], then permanently allocate the first t consecutive empty time slots after skipping the first pret time slots in each segment to task i, and jump to S55.

[0161] S58, map the allocation results of each computing device and each computing time slot recorded in CompSS back to the initial task index value, that is, according to new42oldindex, execute temp=CompSS[indexLtask2device[i][h]][b], CompSS[indexLtask2device[i][h]][b]=new42oldindex[temp] twice. Then, CompSS is the computing time slot scheduling decision obtained based on the computing device computing time slot scheduling algorithm (DLF-CompSS).

[0162] Among the above four computing device computing time slot scheduling algorithms, the PPF-CompSS algorithm sorts the longest execution time of all data processing tasks based on the period of the data processing tasks, and sorts all computing devices based on the performance of the computing devices, which can ensure that the data processing tasks with a shorter production cycle, that is, the high-frequency data processing tasks are processed first, thereby improving the task processing efficiency; the DPF-CompSS algorithm sorts the longest execution time of all data processing tasks based on the DDL of the data processing tasks, and sorts all computing devices based on the performance of the computing devices, which can ensure that the data processing tasks with a shorter maximum allowable response time, that is, the data processing tasks with a higher degree of urgency are processed first, thereby improving the task processing efficiency; the PLF-CompSS algorithm sorts the longest execution time of all data processing tasks based on the period of the data processing tasks, and sorts all computing devices based on the performance of the computing devices, thereby ensuring that the data processing tasks with a shorter maximum allowable response time, that is, the data processing tasks with a higher degree of urgency are processed first, thereby improving the task processing efficiency. The longest execution time of all data processing tasks is sorted, and all computing devices are sorted based on the shortest transmission delay between computing devices and smart devices. Compared with the PPF-CompSS algorithm, it can ensure that data processing tasks with shorter production cycles, that is, high-frequency data processing tasks are processed first, and it can also reduce transmission delays and reduce the probability of network congestion; the DLF-CompSS algorithm sorts the longest execution time of all data processing tasks based on the DDL of the data processing tasks, and sorts all computing devices based on the shortest transmission delay between computing devices and smart devices. Compared with the DPF-CompSS algorithm, it can ensure that data processing tasks with shorter maximum allowable response times, that is, data processing tasks with higher urgency are processed first, and it can also reduce transmission delays and reduce the probability of network congestion.

[0163] It is mentioned in step S13 that if the network channel transmission time slot decision cannot be successfully obtained based on the pre-designed network channel transmission time slot scheduling algorithm, then jump to step S12, and the computing device calculation time slot scheduling module calls other pre-designed calculation time slot scheduling algorithms to obtain another calculation time slot scheduling decision. As an example, the embodiment of the present application discloses a complete method and operation process for industrial computing power network calculation time slots and network channel transmission time slots, which acts on the industrial computing power network scheduling system. Based on this method, the computing device calculation time slot scheduling decision and the network channel transmission time slot scheduling decision applied in the industrial computing power network scheduling system can be obtained, and the above decisions can be deployed on the corresponding devices, as follows:

[0164] Step 101: Call the PPF-CompSS algorithm to obtain the computing device computing time slot scheduling decision CompSS. If successful, jump to step 102; if failed, jump to step 201;

[0165] Step 102: Based on CompSS and combined with the maximum allowed response time of each task obtained from the information management module of the smart device data processing task, the sender, receiver, and transDDL of all flows within a hyperperiod cycle are obtained.

[0166] Step 103: Call the time-sensitive network channel transmission time slot scheduling algorithm, and plan the transmission time slot of the network channel according to the sender, receiver, and transDDL of each flow obtained in step 102. If the planning is successful, the network channel transmission time slot decision TransferSS is obtained, and then CompSS and TransferSS are sent to the decision distribution module, and jump to step 501; if the planning fails, jump to step 201.

[0167] Step 201: Call the DPF-CompSS algorithm to obtain the computing device computing time slot scheduling decision CompSS. If successful, jump to step 202; if failed, jump to step 301;

[0168] Step 202: Based on CompSS and in combination with the maximum allowed response time of each task obtained from the information management module of the smart device data processing task, the sender, receiver, and transDDL of all flows within a hyperperiod are obtained.

[0169] Step 203: Call the time-sensitive network channel transmission time slot scheduling algorithm, and plan the transmission time slot of the network channel according to the sender, receiver, and transDDL of each flow obtained in step 202. If the planning is successful, the network channel transmission time slot decision TransferSS is obtained, and then CompSS and TransferSS are sent to the decision distribution module, and jump to step 501; if the planning fails, jump to step 301.

[0170] Step 301: Call the PLF-CompSS algorithm to obtain the computing device computing time slot scheduling decision CompSS. If successful, jump to step 302; if failed, jump to step 401;

[0171] Step 302: Based on CompSS and combined with the maximum allowed response time of each task obtained from the information management module of the smart device data processing task, the sender, receiver, and transDDL of all flows within a hyperperiod are obtained.

[0172] Step 303: Call the time-sensitive network channel transmission time slot scheduling algorithm, and plan the transmission time slot of the network channel according to the sender, receiver, and transDDL of each flow obtained in step 302. If the planning is successful, the network channel transmission time slot decision TransferSS is obtained, and then CompSS and TransferSS are sent to the decision distribution module, and jump to step 501; if the planning fails, jump to step 401.

[0173] Step 401: Call the DLF-CompSS algorithm to obtain the computing device computing time slot scheduling decision CompSS. If successful, jump to step 402; if failed, jump to step 501;

[0174] Step 402: Based on CompSS and combined with the maximum allowed response time of each task obtained from the information management module of the smart device data processing task, the sender, receiver, and transDDL of all flows within a hyperperiod cycle are obtained.

[0175] Step 403: Call the time-sensitive network channel transmission time slot scheduling algorithm, and plan the transmission time slot of the network channel according to the sender, receiver, and transDDL of each flow obtained in step 402. If the planning is successful, the network channel transmission time slot decision TransferSS is obtained, and then CompSS and TransferSS are sent to the decision distribution module, and jump to step 501; if the planning fails, jump to step 502.

[0176] Step 501: After receiving CompSS and TransferSS, the decision distribution module distributes the decision to the device layer and deploys it on the corresponding smart devices, computing devices, and switches in the time-sensitive network. After that, the smart devices, computing devices, and time-sensitive network devices can interact in accordance with the agreed mode to ensure the orderly operation of the production line. The decision-making process of this computing power network scheduling system ends here.

[0177] Step 502: If the computing power network scheduling system fails to coordinate the time slots of intelligent devices, computing devices, and time-sensitive network devices, it can restart from step 101 after adjusting the rhythm of the industrial production process.

[0178] It should be noted that the calling order of the PPF-CompSS algorithm, the DPF-CompSS algorithm, the PLF-CompSS algorithm and the DLF-CompSS algorithm can be set according to actual conditions, and the embodiments of the present application do not limit this.

[0179] The transmission delay of each interaction between the computing device and the smart device is determined under the scheduling of the time-sensitive network, and the time slot for the computing device to perform each task is pre-planned and determined. Therefore, the queuing time and processing time of each task on the computing device are also determined. In summary, the response time of each task generated by the smart device is determined, and as long as the module of the scheduling layer can successfully obtain the computing time slot scheduling decision and the network channel transmission time slot decision, then the response delay of each task, including transmission delay, processing delay, and queuing delay, must be within the maximum response time allowed by the task. Based on this, the embodiment of the present application can ensure that each task on the production line can be completed within the specified time, thereby ensuring the efficient and orderly operation of the digital production line.

[0180] Next, a resource scheduling device provided in an embodiment of the present application is introduced. The resource scheduling device introduced below and the resource scheduling method introduced above can refer to each other.

[0181] See also Figure 3 , shows a schematic diagram of the structure of a resource scheduling device provided in an embodiment of the present application, the device comprising:

[0182] An acquisition module 301 is used to acquire the longest execution time, generation cycle and maximum allowed response time of a data processing task and the topology and transmission bandwidth of a data processing network, wherein the data processing network includes a device corresponding to the data processing task;

[0183] A computing time slot scheduling module 302 is used to plan computing time slots using a time slot scheduling algorithm based on the longest execution time, generation cycle and maximum allowed response time of the data processing task to obtain a computing time slot scheduling decision;

[0184] The transmission time slot scheduling module 303 is used to plan the transmission time slots based on the topological structure and transmission bandwidth of the data processing network and the calculation time slot scheduling decision by using the network channel transmission time slot scheduling algorithm to obtain the network channel transmission time slot decision;

[0185] The resource scheduling module 304 is used to schedule resources for the devices in the data processing network based on the computing time slot scheduling decision and the network channel transmission time slot decision.

[0186] In the embodiment of the present application, the calculation time slot scheduling module 302 includes:

[0187] A time sorting unit, used to sort the longest execution time of the data processing tasks to obtain an execution time matrix;

[0188] A delay calculation unit, used to calculate the shortest transmission delay of each data processing task in the execution time matrix to each computing device in the data processing network;

[0189] A device sorting unit, used to sort the computing devices in the data processing network to obtain a computing device matrix;

[0190] a time slot allocation unit, configured to allocate time slots of computing devices to the data processing tasks according to the order of the data processing tasks in the execution time matrix and the order of computing devices in the computing device matrix, based on the generation cycle of the data processing tasks, the maximum allowed response time and the shortest transmission delay;

[0191] The task traversal unit is used to traverse all data processing tasks in the execution time matrix to obtain the computing time slot scheduling decision.

[0192] In the embodiment of the present application, the device further includes:

[0193] A time matrix construction module, used to construct a task execution time matrix according to the initial order of the data processing tasks and based on the longest execution time of the data processing tasks;

[0194] The relationship matrix construction module is used to construct a mapping relationship matrix based on the mapping relationship between the data processing tasks in the task execution time matrix and the data processing tasks in the execution time matrix.

[0195] In the embodiment of the present application, the task traversal unit is specifically used to:

[0196] Traversing all data processing tasks in the execution time matrix to obtain time slot allocation results for each data processing task;

[0197] The time slot allocation results are sequentially adjusted based on the mapping relationship matrix to obtain the calculation time slot scheduling decision.

[0198] In the embodiment of the present application, the transmission time slot scheduling module 303 includes:

[0199] A determination unit, configured to determine a sending end, a receiving end, and a maximum transmission delay of each data processing task based on the calculation time slot scheduling decision;

[0200] The time slot planning unit is used to plan the transmission time slots based on the topological structure and transmission bandwidth of the data processing network and the sending end, receiving end and maximum transmission delay of each data processing task, and obtain the network channel transmission time slot decision by using the network channel transmission time slot scheduling algorithm.

[0201] The embodiment of the present application also provides a computer device, including: a memory and a processor;

[0202] Wherein, the memory is used to store computer programs;

[0203] The processor is used to execute the computer program in the memory to implement the method described in the above method embodiment.

[0204] The embodiment of the present application also provides a computer-readable storage medium storing instructions, which, when executed on a computer, enables the computer to execute the method described in the above method embodiment.

[0205] The embodiment of the present application further provides a computer program product, including a computer program / instruction, which implements the method described in the above method embodiment when running on a computer.

[0206] In an embodiment of the present application, the acquisition module acquires the longest execution time, generation cycle and maximum allowed response time of the data processing task and the topological structure and transmission bandwidth of the data processing network, and the data processing network includes the equipment corresponding to the data processing task; the calculation time slot scheduling module uses the time slot scheduling algorithm to plan the calculation time slot based on the longest execution time, generation cycle and maximum allowed response time of the data processing task, and obtains the calculation time slot scheduling decision; the transmission time slot scheduling module uses the network channel transmission time slot scheduling algorithm to plan the transmission time slot based on the topological structure and transmission bandwidth of the data processing network and the calculation time slot scheduling decision, and obtains the network channel transmission time slot decision; the resource scheduling module performs resource scheduling on the equipment in the data processing network based on the calculation time slot scheduling decision and the network channel transmission time slot decision. The embodiment of the present application uses the time slot scheduling algorithm to allocate calculation time slots for data processing tasks, and uses the network channel transmission time slot scheduling algorithm to allocate transmission time slots for data processing tasks, so that the interaction time between devices in the data processing network of the data processing task is determined, which can ensure that each data processing task on the production line can be completed within the specified time, thereby ensuring the efficient and orderly operation of the production line. Compared with configuring a dedicated computing device for each smart device, the embodiment of the present application reduces the investment in computing network resources and can achieve cost reduction and efficiency improvement.

[0207] It should be noted that the same or similar parts between the various embodiments can be referred to each other. As for the device embodiment and the system embodiment, since they are 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.

[0208] For the above-mentioned embodiments, for the sake of simplicity, they are all described as a series of action combinations, but those skilled in the art should know that the present application is not limited by the order of the actions described, because according to the present application, some steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should also know that the embodiments described in the specification are all preferred embodiments, and the actions and modules involved are not necessarily required by the present application.

[0209] Finally, 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 presence of other identical elements in the process, method, article or device including the elements.

[0210] The above description of the disclosed embodiments enables those skilled in the art to implement or use the present application. Various modifications to these embodiments will be apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of the present application. Therefore, the present application will not be limited to the embodiments shown herein, but will conform to the widest scope consistent with the principles and novel features disclosed herein.

[0211] The above is only a preferred implementation of the present application. It should be pointed out that for ordinary technicians in this technical field, several improvements and modifications can be made without departing from the principles of the present application. These improvements and modifications should also be regarded as the scope of protection of the present application.

Claims

1. A resource scheduling method, characterized in that: The method comprises: Obtaining the longest execution time, generation cycle and maximum allowed response time of the data processing task and the topology and transmission bandwidth of the data processing network, wherein the data processing network includes the device corresponding to the data processing task; Based on the longest execution time, generation cycle and maximum allowed response time of the data processing task, a time slot scheduling algorithm is used to plan the computing time slots to obtain a computing time slot scheduling decision; Based on the topological structure and transmission bandwidth of the data processing network and the calculation time slot scheduling decision, a network channel transmission time slot scheduling algorithm is used to plan the transmission time slot to obtain a network channel transmission time slot decision; Based on the computing time slot scheduling decision and the network channel transmission time slot decision, resources are scheduled for devices in the data processing network.

2. The method according to claim 1, characterized in that: The method of planning the computing time slots by using a time slot scheduling algorithm based on the longest execution time, generation cycle and maximum allowed response time of the data processing task to obtain a computing time slot scheduling decision includes: Sorting the longest execution times of the data processing tasks to obtain an execution time matrix; Calculate the shortest transmission delay of each data processing task in the execution time matrix to each computing device in the data processing network; Sorting computing devices in the data processing network to obtain a computing device matrix; According to the order of the data processing tasks in the execution time matrix and the order of the computing devices in the computing device matrix, based on the generation cycle of the data processing tasks, the maximum allowed response time and the shortest transmission delay, the time slots of the computing devices are allocated to the data processing tasks; All data processing tasks in the execution time matrix are traversed to obtain the computing time slot scheduling decision.

3. The method according to claim 2, characterized in that After sorting the longest execution times of the data processing tasks to obtain an execution time matrix, the method further includes: According to the initial order of the data processing tasks, based on the longest execution time of the data processing tasks, construct a task execution time matrix; Based on the mapping relationship between the data processing tasks in the task execution time matrix and the data processing tasks in the execution time matrix, a mapping relationship matrix is ​​constructed.

4. The method according to claim 3, characterized in that The traversing all data processing tasks in the execution time matrix to obtain the computing time slot scheduling decision includes: Traversing all data processing tasks in the execution time matrix to obtain time slot allocation results for each data processing task; The time slot allocation results are sequentially adjusted based on the mapping relationship matrix to obtain the calculation time slot scheduling decision.

5. The method according to any one of claims 1 to 4, characterized in that: The method of planning transmission time slots based on the topological structure and transmission bandwidth of the data processing network and the calculation time slot scheduling decision, using a network channel transmission time slot scheduling algorithm to obtain a network channel transmission time slot decision, includes: Based on the calculation time slot scheduling decision, determining the sending end, receiving end and maximum transmission delay of each data processing task; Based on the topological structure and transmission bandwidth of the data processing network as well as the sending end, receiving end and maximum transmission delay of each data processing task, the network channel transmission time slot scheduling algorithm is used to plan the transmission time slot to obtain the network channel transmission time slot decision.

6. A resource scheduling device, characterized in that: The device comprises: An acquisition module, used to acquire the longest execution time, generation cycle and maximum allowed response time of the data processing task and the topology and transmission bandwidth of the data processing network, wherein the data processing network includes the device corresponding to the data processing task; A computing time slot scheduling module is used to plan computing time slots using a time slot scheduling algorithm based on the longest execution time, generation cycle and maximum allowed response time of the data processing task to obtain a computing time slot scheduling decision; A transmission time slot scheduling module, configured to plan transmission time slots using a network channel transmission time slot scheduling algorithm based on the topology and transmission bandwidth of the data processing network and the calculation time slot scheduling decision, and obtain a network channel transmission time slot decision; A resource scheduling module is used to schedule resources for devices in the data processing network based on the computing time slot scheduling decision and the network channel transmission time slot decision.

7. The device according to claim 6, characterized in that The computing time slot scheduling module comprises: A time sorting unit, used to sort the longest execution time of the data processing tasks to obtain an execution time matrix; A delay calculation unit, used to calculate the shortest transmission delay of each data processing task in the execution time matrix to each computing device in the data processing network; A device sorting unit, used to sort the computing devices in the data processing network to obtain a computing device matrix; a time slot allocation unit, configured to allocate time slots of computing devices to the data processing tasks according to the order of the data processing tasks in the execution time matrix and the order of computing devices in the computing device matrix, based on the generation cycle of the data processing tasks, the maximum allowed response time and the shortest transmission delay; The task traversal unit is used to traverse all data processing tasks in the execution time matrix to obtain the computing time slot scheduling decision.

8. A computer device, characterized in that: include: Memory and processor; The memory is used to store computer programs; The processor is configured to execute the computer program in the memory to implement the method according to any one of claims 1 to 5.

9. A computer-readable storage medium, characterized in that: The device stores instructions which, when executed on a computer, cause the computer to execute the method according to any one of claims 1 to 5.

10. A computer program product, characterized in that The method comprises a computer program / instruction, which implements the method according to any one of claims 1 to 5 when the computer program / instruction is executed on a computer.

Citation Information

Patent Citations

  • Traffic scheduling method and system based on time window

    CN109379281A

  • Electric power communication network task unloading system and method based on QoS (Quality of Service) and application

    CN114125063A

  • Transmission and calculation combined scheduling method, device and system based on information timeliness

    CN114205374A

  • Power service mapping scheduling method and system based on deterministic network

    CN115996248A

  • Deterministic network architecture for intelligent application and working method thereof

    CN117596605A