CN113094246A - Edge heterogeneous computing environment simulation system - Google Patents

Edge heterogeneous computing environment simulation system Download PDF

Info

Publication number
CN113094246A
CN113094246A CN202110338640.3A CN202110338640A CN113094246A CN 113094246 A CN113094246 A CN 113094246A CN 202110338640 A CN202110338640 A CN 202110338640A CN 113094246 A CN113094246 A CN 113094246A
Authority
CN
China
Prior art keywords
task
machine
algorithm
simulation system
scheduling decision
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202110338640.3A
Other languages
Chinese (zh)
Other versions
CN113094246B (en
Inventor
任祖杰
郑守建
彭晓晖
王一帆
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Institute of Computing Technology of CAS
Zhejiang Lab
Original Assignee
Institute of Computing Technology of CAS
Zhejiang Lab
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Institute of Computing Technology of CAS, Zhejiang Lab filed Critical Institute of Computing Technology of CAS
Priority to CN202110338640.3A priority Critical patent/CN113094246B/en
Publication of CN113094246A publication Critical patent/CN113094246A/en
Application granted granted Critical
Publication of CN113094246B publication Critical patent/CN113094246B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3457Performance evaluation by simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3006Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3017Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is implementing multitasking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3433Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment for load management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3442Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for planning or managing the needed capacity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4488Object-oriented
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4488Object-oriented
    • G06F9/449Object-oriented method invocation or resolution

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

The invention discloses an edge heterogeneous computing environment Simulation system, which comprises a Core module and an Algorithm module, wherein the Core module comprises tasks, Application, Broker, Cluster, Machine and Scheduler roles, and a Simulation, Monitor and Algorithm component, and the Algorithm module is used for storing a group of migration scheduling decision algorithms defined by a user; the system adopts a loose coupling module design, so that the dependency among modules is reduced; the task resource requirements and the equipment computing capacity are described by adopting a plurality of groups of vectors, so that the system can effectively express a complex edge computing scene; a complete task life cycle is designed, the realization and the replacement of a custom algorithm are supported, the customizable capacity of the system is enhanced, and the subsequent continuous updating and maintenance of the system are facilitated.

Description

Edge heterogeneous computing environment simulation system
Technical Field
The invention relates to the technical field of distributed computing, heterogeneous computing and simulation systems, in particular to a task scheduling simulation system aiming at an edge environment.
Background
With the continuous emergence of new edge computing scenes, computing platforms and application programs aiming at the edge scenes are increasing, and the requirements on simulation of the edge environment are also gradually increased. Most of existing distributed system simulation systems adopt a single numerical value to represent task resource requirements and equipment computing capacity aiming at cloud computing environments with isomorphic computing resources and similar computing equipment capacity, and the representation capacity is weak. Computing resources in the edge environment are usually heterogeneous, and the device capabilities are greatly different, so that the existing simulation system cannot effectively simulate the edge computing scene.
At present, applications aiming at edge scenes are continuously appeared, such as intelligent sound box voice recognition, camera target detection, forest fire abnormity analysis and the like, and the applications usually have complex demands on computing power. Meanwhile, the edge environment contains abundant computing resources, and a large amount of idle equipment does not lack efficient special acceleration resources, such as a GPU, an NPU, an FPGA and the like. Therefore, a simulation system for edge environment needs to effectively cope with complex application resource requirements and heterogeneous device resource types.
Disclosure of Invention
In order to solve the defects of the prior art and achieve the purpose of improving the capability of a simulation system for meeting the complex application resource requirement and the equipment heterogeneous resource, the invention adopts the following technical scheme:
an edge heterogeneous computing environment Simulation system comprises a Core module and an Algorithm module, wherein the Core module comprises tasks, Application, Broker, Cluster, Machine and schedule roles, and a Simulation, Monitor and Algorithm component, and the Algorithm module comprises a set of customized migration scheduling decision Algorithm;
the Task is an abstract model of a Task entity in an edge computing scene and is used as the Task entity during migration scheduling;
the Application is an Application program with a specific function operated by a user and is used for selecting a Task;
the Broker monitors the Task selected by the Application and submits the Task to the Cluster at a proper time; receiving a Task ending notice sent by the Cluster, and transmitting the notice to the Application to update the Task selection information;
the Cluster is an abstract model of a specific edge computing scene, is used for overall management of the Machine and the Task, provides the available Machine and the Task information to be migrated for the Scheduler, receives and migrates the Task to the specified Machine according to the migration scheduling decision result of the Scheduler;
the Machine is an abstract model of computing equipment in an edge environment and is used as a computing equipment entity during migration scheduling;
the Scheduler is a scheduling system in the edge computing system, calls a migration scheduling decision algorithm in a certain period, transmits Machine and Task information provided by the Cluster as parameters to the migration scheduling decision algorithm, and sends a migration scheduling decision result to the Cluster;
the Simulation is a modeling of primary Simulation, and is used for Simulation event management, wherein the primary Simulation comprises a Cluster instance, a Broker instance and a Scheduler instance;
the Monitor is used for carrying out multifunctional monitoring and recording on the state of the system in the simulation process;
the Algorithm component is an abstract class, defines an interface of a migration scheduling decision Algorithm, and the migration scheduling decision Algorithm realizes the interface.
Further, the requirement of the Task on the resources and the heterogeneous resource capacity of the Machine are expressed in a vector form;
the requirement of the Task on the resources comprises a calculation requirement vector and a data requirement vector, the calculation requirement vector comprises the requirement quantity of the Task on various calculation resources, the measurement tool comprises a clock number, floating-point operations (FLOPs) and the like, and if the Task does not need certain resources, the corresponding element is 0; the data requirement represents the storage capacity of the data required by the Task on the Machine, and if the Machine does not contain the data required by the Task, the corresponding element is 0;
the heterogeneous resource capacity of the Machine comprises a computing capacity vector and a communication capacity vector, wherein the computing capacity vector comprises the capacity of the Machine on various heterogeneous resources, the capacity comprises clock frequency and floating-point operation per second (FLOPS), and if some kind of resources do not exist on the Machine, the corresponding element is 0; the communication capability vector includes the size of the communication capability between the machines, and if the machines cannot communicate with each other, the corresponding element is 0.
The traditional simulation system usually adopts a single numerical value to represent the resource requirement of a task and the computing capacity of equipment, and then obtains the execution time of the specified task on the specific equipment through operation. And the representation form of the vector effectively improves the representation capability of the simulation system to tasks and equipment.
Furthermore, the resource requirement of complex calculation tasks and the heterogeneous resource capability of the calculation equipment are expressed in a vector form, a user can perform self-defined setting on each element to form a plurality of combinations, different Task loads and equipment capabilities are accurately described, the heterogeneous characteristics of an edge calculation scene are better met, each vector is comprehensively calculated according to a set rule, the operation time of each Task on each Machine is estimated, and meanwhile, the use condition of resources on the equipment can be accurately described through fine-grained resource expression, so that the consideration of the equipment load condition is enhanced.
Further, the Task information and the Machine information are input into a migration scheduling decision algorithm, the migration scheduling decision algorithm outputs matching decisions of the Task and the Machine, and a specified part of the Task is migrated to the proper Machine, so that the system can adapt to various scheduling algorithms without limiting the design and implementation of the algorithms, and the performance indexes of the various scheduling algorithms are effectively evaluated.
Further, the Machine judges whether the Machine supports the execution of the specified Task, receives the migration decision of the Cluster, distributes computing resources for the Task, and computes the load balance degree of the Machine.
Furthermore, the Algorithm component is used as an abstract class, the implementation specification of the migration scheduling decision Algorithm is specified, an abstract method is set firstly, the running clock, Task information and Machine information are used as parameters, the migration scheduling decision Algorithm is implemented by inheriting the abstract class, then a Scheduler class object is constructed by using the migration scheduling decision Algorithm and finally applied to the running environment of the simulation system, the Algorithm abstract class is inherited to implement a custom migration scheduling decision Algorithm, the freedom degree of designing the scheduling Algorithm is improved, the simple and complete input parameter and vectorization resource representation method are used, a user can design the scheduling Algorithm aiming at the heterogeneous edge environment, and the specific operation flow of the system is not required to be concerned.
Further, the migration scheduling decision algorithm can be expanded by users in a self-defined mode.
Further, the Application specifies the submission time of the Task, the initial submission time is specified by the configuration file, and the time is the submission time of the first Task, and the submission time of the last Task is the same as the ending time of the previous Task. The start execution time, the data transmission end time and the end execution time are recorded and saved at the time of operation.
Further, the Application comprises a plurality of tasks and maintains the dependency relationship among the tasks.
Further, the migration scheduling decision algorithm called in the Scheduler is assigned at the time of system construction.
Further, the Monitor records include the equipment load balance degree, the number of tasks to be migrated, the number of completed tasks, and the like.
Further, the Task attribute includes a calculation amount and data distribution, which respectively correspond to a calculation amount vector and a data distribution vector of the Task in the resource relevance degree, and represent the calculation resource and data resource requirements of the Task fine granularity.
Further, the attributes of the Machine include computing power and communication power, which respectively correspond to the computing power vector and the communication power vector of the computing device in the resource relevance degree, and the fine granularity represents the computing and communication conditions of the Machine.
The invention has the advantages and beneficial effects that:
the invention provides an edge environment simulation system ESP based on an SimPy simulation framework aiming at heterogeneous edge computing environments, and solves the problems that the application complex resource requirements and the equipment heterogeneous resource capacity are difficult to express, the user-defined scheduling algorithm is limited and the like. The ESP edge environment simulation system adopts a loose coupling module design method to reduce the dependency among modules; the task resource requirements and the equipment computing capacity are described by adopting a plurality of groups of vectors, so that the simulation system can effectively express a complex edge computing scene; a complete task life cycle is designed, the realization and the replacement of a custom algorithm are supported, the customizable capacity of the system is enhanced, and the subsequent continuous updating and maintenance of the system are facilitated.
Drawings
FIG. 1 is a schematic diagram of the overall architecture of the system of the present invention.
FIG. 2 is a schematic diagram of the complete life cycle of the tasks in the system of the present invention.
FIG. 3 is a schematic diagram of the inheritance relationship of the custom scheduling algorithm in the system of the present invention.
Fig. 4 is a schematic diagram of an example of the configuration of the devices in the system of the present invention.
Detailed Description
The following detailed description of embodiments of the invention refers to the accompanying drawings. It should be understood that the detailed description and specific examples, while indicating the present invention, are given by way of illustration and explanation only, not limitation.
The invention provides a job scheduling simulation system aiming at an edge heterogeneous environment based on an SimPy simulation framework, effectively evaluates the comprehensive performance of a scheduling algorithm and supports the custom realization of the scheduling algorithm.
The overall architecture of the ESP simulation system is shown in FIG. 1, and comprises two parts, Core and Algorithm. The Core part models each entity in the task scheduling problem of the edge computing scene, and abstracts 6 roles such as schedule, Broker and the like and 3 components such as Monitor and Algorithm and the like. The Algorithm module is used for realizing a self-defined task scheduling decision Algorithm.
The complete life cycle of the tasks in the ESP simulation system is shown in fig. 2, and comprises 9 processes:
1. the Application selects the Task to be executed;
2. the Broker submits the Task to Cluster;
3. cluster calls a Scheduler decision algorithm;
4. the Scheduler makes a migration decision;
5. cluster migrates the Task to a decision-making designated Machine;
6. the Machine allocates computing resources and communication resources and executes Task;
7. the Machine informs the Cluster of the Task ending information;
8. the Cluster informs the browser of the Task ending information;
9. the Broker notifies the Application of the Task end information.
1) Loosely coupled simulation system module
A complete simulation system is formed by a plurality of modules together, and the system simulates the whole process from submission and scheduling to ending of tasks through mutual cooperation of the modules, so that the execution effect of a scheduling algorithm in an actual environment is estimated. The degree of coupling between the modules is reduced, so that the customization capability of the system can be enhanced, and the subsequent continuous updating and maintenance of the system are facilitated.
The ESP Simulation system sufficiently reduces the coupling degree of the whole system, and divides the system into two parts of Core and Algorithm, wherein the Core part comprises 6 corners such as Application, Task, Machine, Cluster, Broker and Scheduler and 3 components such as Algorithm, Monitor and Simulation, and the main responsibilities are shown in the table 1. By splitting the modules, the responsibility of each module is clearer, and the follow-up updating and maintenance of the system are facilitated.
Persona/component Major responsibility
Application Application abstraction; generating a task;
Task abstracting a task; calculating time and predicting transmission time;
Machine edge device abstraction; providing computing, communicationA resource;
Cluster abstracting a cluster; task, device, network management; performing decision making;
Broker constructing application; submitting a task;
Scheduler a scheduler abstraction; scheduling decisions;
Algorithm self-defining a scheduling calculation abstract class and defining a scheduling interface;
Monitor monitoring the state;
Simulation managing simulation events;
table 1 Core module role and component primary responsibilities
Application
Application is an Application program of a specific function run by a user, and can be decomposed into several tasks. Dependencies between tasks are maintained by the Application itself. The role can select tasks to be submitted, and the tasks are submitted by the Broker at proper time. The initial submission time of the Application is specified by the configuration file, and the time is the submission time of the first task, and the submission time of the subsequent task is the same as the end time of the previous task.
Task
The Task is an abstract model of a Task entity in an edge computing scene, and is a Task entity for the scheduling system to perform migration scheduling. The submission time of the Task is specified by Application, and the start execution time, the end time of data transmission and the end execution time are recorded and saved during the operation. The Task has 2 attributes of calculated quantity, data distribution and the like, respectively corresponds to a Task calculated quantity vector and a data distribution vector, and expresses the requirements of the Task on fine-grained calculation resources and data resources.
Machine
The Machine is an abstract model of computing equipment in an edge environment and is an equipment entity for performing migration scheduling by a scheduling system. The computing capacity and the communication capacity attribute of the role respectively correspond to the computing capacity vector and the communication capacity vector of the equipment, and the computing and communication conditions of the equipment are represented in a fine-grained manner. The Machine can judge whether the execution of the specified task is supported, can accept the migration decision of the Cluster, allocate computing resources for the task and calculate the load balance degree of the Machine.
Cluster
The Cluster is an abstract model of a specific edge computing scene, computing equipment and tasks in the management system are arranged in a coordinated mode, the Cluster provides available computing equipment and information of tasks to be migrated for the Scheduler, receives scheduling decision results of the Scheduler, and migrates the tasks to designated equipment according to decisions.
Broker
And monitoring the tasks selected by the Application by the Broker, and submitting the tasks to the Cluster according to the set submission time. The role can receive the task ending notice sent by the Cluster and transmit the notice to the Application so that the Application updates the task selection information.
Scheduler
Scheduler is a scheduling system in an edge computing system, and a specific migration decision algorithm is assigned at the time of system construction. The Scheduler calls a decision algorithm in a certain period, transmits the equipment and task information provided by the Cluster to the algorithm as parameters, and finally sends a migration scheduling decision result to the Cluster.
Algorithm
The Algorithm component is an abstract class that defines the interface of the scheduling Algorithm that a specific custom scheduling Algorithm must implement.
Monitor
The Monitor is used for performing multifunctional monitoring and recording on the state of the system in the simulation process, and the recording contents comprise equipment load balance degree, the number of tasks to be migrated, the number of completed tasks and the like.
Simulation
Simulination is the modeling of a one-time Simulation that must contain a Cluster instance, a Broker instance, a Scheduler instance, etc. Before simulation begins, Machine, Application and Task instances need to be constructed according to configuration files and submitted to a Cluster instance and a Broker instance respectively.
2) Vectorized representation of heterogeneous resource requirements and capabilities
The heterogeneity of the edge environment is a remarkable characteristic and is also an important problem of a simulation system. Conventional simulation systems usually use a single numerical value to represent the resource requirements of a task and the computing power of a device, and then obtain the execution time of the specified task on the specific device through calculation. However, in the edge calculation scenario, various calculation resources, such as CPU, GPU, NPU, etc., are often included, and the single numerical value representation is not accurate, so that the accuracy of the final simulation result is not high.
The invention adopts a vector form to express the complex requirements of the task on resources and the heterogeneous resource capacity of the equipment. The task resource requirements comprise two aspects of calculation requirements and data requirements, the calculation requirement vector comprises the quantity of the task required by various calculation resources, the measurement tool can use clock number, floating-point operations (FLOPs) and the like, and if the task does not need certain resources, the corresponding element is 0; the data requirement represents the amount of storage of data on each device required by the task. If a device does not contain the data required by the task, the corresponding element is 0. The device capability includes two aspects of computing capability and communication capability, the computing capability vector includes the capability of the device on various resources, and may adopt clock frequency, floating-point operations per second (FLOPS ) and the like, if there is no resource on the device, the corresponding element is 0; the communication capability vector contains the communication capability of a certain device and other devices, and if the two devices cannot communicate, the corresponding element is 0.
The representation form of the vector effectively improves the representation capability of the simulation system on tasks and equipment. In the edge computing scene, the computing task often contains complex resource requirements, meanwhile, the computing equipment also has heterogeneous resource capacity, and by adopting a vector representation form, a user can perform custom setting on each element to form a plurality of combinations, so that different task loads and equipment capacities are accurately depicted, and the heterogeneous characteristics of the edge computing scene are better met. And then, carrying out comprehensive operation on the vectors according to a set rule, and estimating the operation time of each task on each device. Meanwhile, the fine-grained resource representation can more accurately depict the service condition of the resources on the equipment, and further is beneficial to enhancing the consideration of the equipment load condition.
3) Flexible custom scheduling algorithm design
The task scheduling simulation system has the key point of effectively evaluating the performance indexes of various scheduling algorithms, so the system can adapt to various scheduling algorithms and does not limit the design and implementation of the algorithms. The basic flow of scheduling is to extract several tasks from a set of tasks and assign them to migrate to the appropriate device. Thus, the inputs to the scheduling algorithm are task information and device information, and the outputs are matching decisions of tasks and devices.
The specification of the implementation of the scheduling Algorithm is specified by the Algorithm abstract class, as shown in FIG. 3, the __ call __ method is set as the abstract method, the running clock, the task information and the equipment information are used as parameters, the user realizes the custom scheduling Algorithm by inheriting the Algorithm abstract class, then the custom scheduling Algorithm is used for constructing the Scheduler class object, and the Scheduler class object is finally applied to the running environment of the simulation system. The user-defined scheduling Algorithm is realized by inheriting the Algorithm abstract class, the freedom degree of designing the scheduling Algorithm is improved, and the simple and complete input parameter and vectorized resource representation method enable a user to design the scheduling Algorithm aiming at the heterogeneous edge environment without concerning the specific operation flow of the system.
The ESP edge simulation system proposed by the present invention is further described in detail by constructing simulation system examples of 4 devices shown in table 2 and using 5 tasks shown in table 3 as simulation loads.
Figure DEST_PATH_IMAGE002
TABLE 2 Equipment parameter Specification Table
Figure DEST_PATH_IMAGE004
TABLE 3 task resource Requirements Table
The invention can freely set the number of devices for system simulation, and configure the devices in a CSV file form, as shown in FIG. 4, the devices 1-8 calculate the devices, wherein the devices 1 and 5 are OPPO A57, the devices 2 and 6 are Nubia Z11, the devices 3 and 7 are Samsung 550R5L, the devices 3 and 8 are NPU machines, and the devices 9 and 10 network devices only play a role of network connection and cannot be used for task calculation. The operation load of the simulation system is also configured in the form of a CSV file, a certain proportion of application load is set in the configuration file, the simulation system randomly selects application from all the configuration loads with the same probability during operation, and then submits tasks in the role of the application. Thus, the simulation system runtime load ratio is approximately the same as the profile load ratio. The user designs and realizes the self-defined scheduling Algorithm, inherits the Algorithm abstract class during realization, and realizes the __ call __ method.
After the preparation work is finished, a user constructs an ESP Simulation system example by using a task, a device configuration file path and a custom scheduling algorithm object, sets a Simulation system ending condition, and executes a run method of a Simulation object and a SimPy framework Environment object, so that the Simulation system example can run.
In the running process of the simulation system, the execution conditions of tasks and equipment, scheduling decision processes and results and the like are output to a file in a log mode, and after the simulation is finished, the execution conditions of the tasks are summarized and information such as total execution time, average execution time and the like is output.
The above examples are only intended to illustrate the technical solution of the present invention, but not to limit it; although the present invention has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some or all of the technical features may be equivalently replaced; and the modifications or the substitutions do not make the essence of the corresponding technical solutions depart from the scope of the technical solutions of the embodiments of the present invention.

Claims (10)

1. An edge heterogeneous computing environment Simulation system comprises a Core module and an Algorithm module, and is characterized in that the Core module comprises tasks, Application, Broker, Cluster, Machine and Scheduler roles, and a Simulation, Monitor and Algorithm component, and the Algorithm module comprises a group of migration scheduling decision algorithms;
the Task is an abstract model of a Task entity and is used as the Task entity during migration and scheduling;
the Application is an Application program and is used for selecting Task;
the Broker monitors the Task selected by the Application and submits the Task to the Cluster; receiving a Task ending notice sent by the Cluster, and transmitting the notice to the Application;
the Cluster is used for overall management of the Machine and the Task, providing available Machine and Task information to be migrated for the Scheduler, receiving and migrating the Task to the appointed Machine according to a migration scheduling decision result of the Scheduler;
the Machine is an abstract model of the computing equipment and is used as a computing equipment entity during migration scheduling;
the Scheduler is a scheduling system, calls a migration scheduling decision algorithm, transmits Machine and Task information provided by the Cluster as parameters to the migration scheduling decision algorithm, and sends a migration scheduling decision result to the Cluster;
the Simulation is used for modeling Simulation and managing Simulation events;
the Monitor is used for monitoring and recording the state of the system in the simulation process;
the Algorithm component is an abstract class, defines an interface of a migration scheduling decision Algorithm, and the migration scheduling decision Algorithm realizes the interface.
2. The edge heterogeneous computing environment simulation system of claim 1, wherein the Task's demand for resources and the Machine's owned heterogeneous resource capabilities are expressed in vector form;
the requirement of the Task on the resources comprises a calculation requirement vector and a data requirement vector, the calculation requirement vector comprises the requirement of the Task on various calculation resources, and if the Task does not need certain resources, the corresponding element is 0; the data requirement represents the storage capacity of the data required by the Task on the Machine, and if the Machine does not contain the data required by the Task, the corresponding element is 0;
the heterogeneous resource capacity of the Machine comprises a computing capacity vector and a communication capacity vector, the computing capacity vector comprises the capacity of the Machine on various heterogeneous resources, and if no certain resource exists on the Machine, the corresponding element is 0; the communication capability vector includes communication capabilities between the machines, and if the machines cannot communicate with each other, the corresponding element is 0.
3. The edge heterogeneous computing environment simulation system of claim 2, wherein each element is customized and configured to form a combination, and each Task is computed synthetically according to a set rule to predict the computation time of each Task on each Machine.
4. The edge heterogeneous computing environment simulation system of claim 1, wherein the Task information and the Machine information are input to a migration scheduling decision algorithm, the migration scheduling decision algorithm outputs a matching decision of the Task and the Machine, and the designated portion of the Task is migrated to the appropriate Machine.
5. The edge heterogeneous computing environment simulation system of claim 1, wherein the Machine determines whether it supports execution of a specified Task, accepts a Cluster migration decision, allocates computing resources for Task, and calculates its own load balancing.
6. The edge heterogeneous computing environment simulation system according to claim 1, wherein the Algorithm component is used as an abstract class to specify a specification for implementing the migration scheduling decision Algorithm, the abstract method is firstly set, the migration scheduling decision Algorithm is implemented by inheriting the abstract class with a running clock, Task information and Machine information as parameters, and then a Scheduler class object is constructed by using the migration scheduling decision Algorithm and is applied to the operating environment of the simulation system.
7. The edge heterogeneous computing environment simulation system of claim 1, wherein the migration scheduling decision algorithm is custom extensible by a user.
8. The edge heterogeneous computing environment simulation system of claim 1, wherein the Application specifies a Task commit time, an initial commit time is specified by the configuration file and is the first Task commit time, and the Task commit time thereafter is the same as the previous Task end time.
9. The edge heterogeneous computing environment simulation system of claim 1, wherein the Application includes multiple tasks and maintains dependencies between the tasks.
10. The edge heterogeneous computing environment simulation system of claim 1, wherein the migration scheduling decision algorithm invoked in the Scheduler is assigned at system build time.
CN202110338640.3A 2021-03-30 2021-03-30 Edge heterogeneous computing environment simulation system Active CN113094246B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110338640.3A CN113094246B (en) 2021-03-30 2021-03-30 Edge heterogeneous computing environment simulation system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110338640.3A CN113094246B (en) 2021-03-30 2021-03-30 Edge heterogeneous computing environment simulation system

Publications (2)

Publication Number Publication Date
CN113094246A true CN113094246A (en) 2021-07-09
CN113094246B CN113094246B (en) 2022-03-25

Family

ID=76671134

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110338640.3A Active CN113094246B (en) 2021-03-30 2021-03-30 Edge heterogeneous computing environment simulation system

Country Status (1)

Country Link
CN (1) CN113094246B (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114531448A (en) * 2022-02-21 2022-05-24 联想(北京)有限公司 Calculation force determination method and device and calculation force sharing system
CN116450486A (en) * 2023-06-16 2023-07-18 浪潮电子信息产业股份有限公司 Modeling method, device, equipment and medium for nodes in multi-element heterogeneous computing system
CN116701104A (en) * 2023-05-05 2023-09-05 北京瑞祺皓迪技术股份有限公司 Algorithm adjustment method, device and monitoring system in edge monitoring equipment

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108509276A (en) * 2018-03-30 2018-09-07 南京工业大学 A kind of video task dynamic migration method in edge calculations environment
CN109684083A (en) * 2018-12-11 2019-04-26 北京工业大学 A kind of multilevel transaction schedule allocation strategy towards under edge-cloud isomery
CN110719206A (en) * 2019-10-21 2020-01-21 中国科学院空间应用工程与技术中心 Space-based FPGA (field programmable Gate array) virtualization computing service system, method and readable storage medium
CN111443990A (en) * 2020-03-25 2020-07-24 中南大学 Edge calculation task migration simulation system
US20200336408A1 (en) * 2019-04-16 2020-10-22 Deke Guo Implementation method of unstructured data sharing mechanism for edge computing and the system
CN112118287A (en) * 2020-08-07 2020-12-22 北京工业大学 Network resource optimization scheduling decision method based on alternative direction multiplier algorithm and mobile edge calculation
US20210029052A1 (en) * 2019-07-22 2021-01-28 Research & Business Foundation Sungkyunkwan University Methods and apparatuses for packet scheduling for software- defined networking in edge computing environment
CN112506627A (en) * 2020-11-19 2021-03-16 西安电子科技大学 Method, system, medium, device and terminal for scheduling directed acyclic graph tasks
CN112532751A (en) * 2021-02-09 2021-03-19 中关村科学城城市大脑股份有限公司 Method and system for scheduling distributed heterogeneous computing power of urban brain AI computing center

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108509276A (en) * 2018-03-30 2018-09-07 南京工业大学 A kind of video task dynamic migration method in edge calculations environment
CN109684083A (en) * 2018-12-11 2019-04-26 北京工业大学 A kind of multilevel transaction schedule allocation strategy towards under edge-cloud isomery
US20200336408A1 (en) * 2019-04-16 2020-10-22 Deke Guo Implementation method of unstructured data sharing mechanism for edge computing and the system
US20210029052A1 (en) * 2019-07-22 2021-01-28 Research & Business Foundation Sungkyunkwan University Methods and apparatuses for packet scheduling for software- defined networking in edge computing environment
CN110719206A (en) * 2019-10-21 2020-01-21 中国科学院空间应用工程与技术中心 Space-based FPGA (field programmable Gate array) virtualization computing service system, method and readable storage medium
CN111443990A (en) * 2020-03-25 2020-07-24 中南大学 Edge calculation task migration simulation system
CN112118287A (en) * 2020-08-07 2020-12-22 北京工业大学 Network resource optimization scheduling decision method based on alternative direction multiplier algorithm and mobile edge calculation
CN112506627A (en) * 2020-11-19 2021-03-16 西安电子科技大学 Method, system, medium, device and terminal for scheduling directed acyclic graph tasks
CN112532751A (en) * 2021-02-09 2021-03-19 中关村科学城城市大脑股份有限公司 Method and system for scheduling distributed heterogeneous computing power of urban brain AI computing center

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ANUM MASOOD ET AL: "HETS: Heterogeneous Edge and Task Scheduling Algorithm for Heterogeneous Computing Systems", 《2015 IEEE 17TH INTERNATIONAL CONFERENCE ON HIGH PERFORMANCE COMPUTING AND COMMUNICATIONS, 2015 IEEE 7TH INTERNATIONAL SYMPOSIUM ON CYBERSPACE SAFETY AND SECURITY, AND 2015 IEEE 12TH INTERNATIONAL CONFERENCE ON EMBEDDED SOFTWARE AND SYSTEMS》 *
张平等: "区块链赋能的边缘异构计算系统中资源调度研究", 《通信学报》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114531448A (en) * 2022-02-21 2022-05-24 联想(北京)有限公司 Calculation force determination method and device and calculation force sharing system
CN114531448B (en) * 2022-02-21 2024-02-27 联想(北京)有限公司 Calculation force determining method and device and calculation force sharing system
CN116701104A (en) * 2023-05-05 2023-09-05 北京瑞祺皓迪技术股份有限公司 Algorithm adjustment method, device and monitoring system in edge monitoring equipment
CN116701104B (en) * 2023-05-05 2024-01-26 北京瑞祺皓迪技术股份有限公司 Algorithm adjustment method, device and monitoring system in edge monitoring equipment
CN116450486A (en) * 2023-06-16 2023-07-18 浪潮电子信息产业股份有限公司 Modeling method, device, equipment and medium for nodes in multi-element heterogeneous computing system
CN116450486B (en) * 2023-06-16 2023-09-05 浪潮电子信息产业股份有限公司 Modeling method, device, equipment and medium for nodes in multi-element heterogeneous computing system

Also Published As

Publication number Publication date
CN113094246B (en) 2022-03-25

Similar Documents

Publication Publication Date Title
CN113094246B (en) Edge heterogeneous computing environment simulation system
CN104317658B (en) A kind of loaded self-adaptive method for scheduling task based on MapReduce
CN110389820B (en) Private cloud task scheduling method for resource prediction based on v-TGRU model
Hiessl et al. Optimal placement of stream processing operators in the fog
CN102929725B (en) Dynamic reconfiguration method of signal processing parallel computing software
Mechalikh et al. PureEdgeSim: A simulation framework for performance evaluation of cloud, edge and mist computing environments
CN113037877B (en) Optimization method for time-space data and resource scheduling under cloud edge architecture
CN111429142B (en) Data processing method and device and computer readable storage medium
US20200183743A1 (en) Modeling workloads using micro workloads representing normalized units of resource consumption metrics
CN103870324A (en) Efficient execution of human machine interface applications in a heterogeneous multiprocessor environment
CN109409746A (en) A kind of production scheduling method and device
CN109865292A (en) A kind of game resource construction method and device based on game engine
Incerto et al. Symbolic performance adaptation
Sinclair et al. Hindsight learning for mdps with exogenous inputs
CN115169634A (en) Task allocation optimization processing method and device
CN114675975A (en) Job scheduling method, device and equipment based on reinforcement learning
CN113010296B (en) Formalized model based task analysis and resource allocation method and system
Fard et al. Budget-constrained resource provisioning for scientific applications in clouds
Su et al. A Robust Predictive—Reactive Allocating Approach, Considering Random Design Change in Complex Product Design Processes
CN116501503B (en) Architecture mapping method and device for load task, computer equipment and medium
CN115964182B (en) Resource scheduling method and system
CN116896591A (en) Scheduling method and device for network data analysis model and computer equipment
CN116248520A (en) Benchmark test method and system for collaborative optimization of network platform manufacturing service
Xu et al. EdgeWorkflow: One click to test and deploy your workflow applications to the edge
CN115185683A (en) Cloud platform stream processing resource allocation method based on dynamic optimization model

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant