CN111008065A - Multi-branch parallel simulation method - Google Patents

Multi-branch parallel simulation method Download PDF

Info

Publication number
CN111008065A
CN111008065A CN201911234744.9A CN201911234744A CN111008065A CN 111008065 A CN111008065 A CN 111008065A CN 201911234744 A CN201911234744 A CN 201911234744A CN 111008065 A CN111008065 A CN 111008065A
Authority
CN
China
Prior art keywords
simulation
clock
task
module
flow
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.)
Pending
Application number
CN201911234744.9A
Other languages
Chinese (zh)
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.)
Nanjing Ketaizhihui Technology Co Ltd
Original Assignee
Nanjing Ketaizhihui Technology Co Ltd
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 Nanjing Ketaizhihui Technology Co Ltd filed Critical Nanjing Ketaizhihui Technology Co Ltd
Priority to CN201911234744.9A priority Critical patent/CN111008065A/en
Publication of CN111008065A publication Critical patent/CN111008065A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

The invention provides a multi-branch parallel simulation method, which comprises the following steps of S1, defining a simulation soft bus, wherein the simulation soft bus is a virtual bus running in a plurality of simulators; s2, each simulator receives a simulation task for simulation and is connected to the same virtual bus; s3, dividing each simulation task into three communication data of clock flow, control flow and data flow; s4, dividing the three communication data into different subtasks according to the subordinate simulation tasks; s5, each of the plurality of simulators is assigned to execute one or more corresponding subtasks of the simulation task; s6, executing the simulation task by calling each simulator to execute the corresponding sub-task; the method has the advantages of fast and stable simulation operation.

Description

Multi-branch parallel simulation method
Technical Field
The invention belongs to the technical field of simulation, and particularly relates to a multi-branch parallel simulation method.
Background
The traditional simulation scheduling belongs to hard real-time scheduling, the simulation progress is strictly consistent with a physical clock, and the simulation model is easy to overtime, so that the simulation fails; in the dispatching center, the interactive data of the distributed model interface which can be stored is limited and far less than the requirement of large data volume of a modern simulation system; as the multi-branch parallel simulation system develops to multi-user concurrent simulation, it becomes more important to ensure the safe operation of the simulation system.
Disclosure of Invention
The invention aims to provide a multi-branch parallel simulation method to solve the problems that the traditional simulation mode cannot meet the requirements of the development of the existing sub-parallel simulation system to multi-user concurrent simulation, the simulation failure is easy to cause, the interactive data of a distributed model interface is limited, and the like.
The invention provides the following technical scheme:
a multi-branch parallel simulation method comprises the following steps: s1, defining a simulation soft bus which is a virtual bus running in a plurality of simulators; s2, each simulator receives a simulation task for simulation and is connected to the same virtual bus; s3, dividing each simulation task into three communication data of clock flow, control flow and data flow; s4, dividing the three communication data into different subtasks according to the subordinate simulation tasks; s5, each of the plurality of simulators is assigned to execute one or more corresponding subtasks of the simulation task; s6, executing the simulation task by calling each simulator to execute the corresponding sub-task.
Further, the simulator comprises a clock domain module, a control module, an interface module and a simulation module.
Further, the clock domain module is configured to obtain communication data of a clock stream and output a plurality of clock excitation information to the control module; the control module is used for acquiring communication data of control flow, distributing and controlling the clock excitation information, sending clock scheduling driving signals to the plurality of simulation tasks and monitoring the data of the simulation tasks in real time; the hardware module is used for describing the operation of the hardware interface in the form of a simulation task language; and the simulation module is used for carrying out independent operation once under the driving of the clock scheduling driving signal of the control module and completing corresponding hardware interface operation once through the hardware module.
Furthermore, the subtasks are divided into a control flow use control subtask, a clock flow use clock subtask and a data flow use data subtask according to the clock flow, the control flow and the data flow.
Furthermore, the simulation task is composed of at least one simulation scheduling engine, at least one simulation model and a simulation soft bus, and is distributed and deployed to a plurality of simulators according to the consumption of the simulation model and the calculation resources of the simulation model, wherein the calculation resources refer to the percentage of the CPU occupied by the simulation model and the size of the memory occupied space, and the calculation resources are distributed and deployed to the plurality of simulators according to the requirements.
Further, the CPU is configured to represent the simulation task as a hierarchical tree structure and divide the simulation task into the subtasks by recursively traversing the hierarchical tree structure.
The invention has the beneficial effects that:
the invention relates to a multi-branch parallel simulation method, which realizes the concurrent execution of multi-simulation tasks of a multi-purpose simulator through the design of a simulation soft bus; the correct operation of the distributed parallel simulation system is ensured by adding the simulation scheduling backup; the simulation task is executed by calling each simulator to execute the corresponding distributed subtasks, and parallel processing is used for reducing simulation time; the problem of limited interaction data of the distributed model interface is solved through a plurality of simulators.
Drawings
The accompanying drawings, which are included to provide a further understanding of the invention and are incorporated in and constitute a part of this specification, illustrate embodiments of the invention and together with the description serve to explain the principles of the invention and not to limit the invention. In the drawings:
FIG. 1 is a schematic flow diagram of the process of the present invention.
Detailed Description
As shown in fig. 1, a multi-branch parallel simulation method includes the following steps:
s1, defining a simulation soft bus which is a virtual bus running in a plurality of simulators;
s2, each simulator receives a simulation task for simulation and is connected to the same virtual bus;
s3, dividing each simulation task into three communication data of clock flow, control flow and data flow;
the simulator comprises a clock domain module, a control module, an interface module and a simulation module.
The clock domain module is used for acquiring communication data of clock streams and outputting a plurality of clock excitation information to the control module; the control module is used for acquiring communication data of control flow, distributing and controlling clock excitation information, sending clock scheduling driving signals to the plurality of simulation tasks and monitoring the data of the simulation tasks in real time; the hardware module is used for describing the operation of the hardware interface in the form of a simulation task language; and the simulation module is used for carrying out independent operation once under the driving of the clock scheduling driving signal of the control module and completing corresponding hardware interface operation once through the hardware module.
S4, dividing the three communication data into different subtasks according to the subordinate simulation tasks;
the subtasks are divided into a control flow use control subtask, a clock flow use clock subtask, and a data flow use data subtask according to a clock flow, a control flow, and a data flow.
S5, each of the plurality of simulators is assigned to execute one or more corresponding subtasks of the simulation task;
and S6, executing the simulation task by calling each simulator to execute the corresponding sub-task.
The simulation task consists of at least one simulation scheduling engine, at least one simulation model and a simulation soft bus, and is distributed and deployed into a plurality of simulators according to the consumption of the simulation model and the calculation resources, namely the percentage of the simulation model occupying the CPU and the size of the memory occupying space, as required, so that at least one simulation model operates in each simulator; the CPU is configured to represent the simulation task as a hierarchical tree structure and to divide the simulation task into subtasks by recursively traversing the hierarchical tree structure.
Although the present invention has been described in detail with reference to the foregoing embodiments, it will be apparent to those skilled in the art that changes may be made in the embodiments and/or equivalents thereof without departing from the spirit and scope of the invention. Any modification, equivalent replacement, or improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.

Claims (6)

1. A multi-branch parallel simulation method is characterized by comprising the following steps:
s1, defining a simulation soft bus which is a virtual bus running in a plurality of simulators;
s2, each simulator receives a simulation task for simulation and is connected to the same virtual bus;
s3, dividing each simulation task into three communication data of clock flow, control flow and data flow;
s4, dividing the three communication data into different subtasks according to the subordinate simulation tasks;
s5, each of the plurality of simulators is assigned to execute one or more corresponding subtasks of the simulation task;
s6, executing the simulation task by calling each simulator to execute the corresponding sub-task.
2. The method of claim 1, wherein the simulator comprises a clock domain module, a control module, an interface module and a simulation module.
3. The method according to claim 2, wherein the clock domain module is configured to obtain communication data of a clock stream and output a plurality of clock excitation information to the control module; the control module is used for acquiring communication data of control flow, distributing and controlling the clock excitation information, sending clock scheduling driving signals to the plurality of simulation tasks and monitoring the data of the simulation tasks in real time; the hardware module is used for describing the operation of the hardware interface in the form of a simulation task language; and the simulation module is used for carrying out independent operation once under the driving of the clock scheduling driving signal of the control module and completing corresponding hardware interface operation once through the hardware module.
4. The method of claim 1, wherein the subtasks are divided into a control flow use subtask, a clock flow use clock subtask, and a data flow use data subtask according to clock flow, control flow, and data flow.
5. The method according to claim 1, wherein the simulation task comprises at least one simulation scheduling engine, at least one simulation model and a simulation soft bus, and the simulation scheduling engine, the at least one simulation model and the simulation soft bus are distributed and deployed to a plurality of simulators according to the consumption of the simulation model and the calculation resources, namely the percentage of the simulation model occupying the CPU and the size of the memory occupying space, according to needs, so that at least one simulation model runs in each simulator.
6. The method according to claim 5, wherein said CPU is configured to represent said simulation tasks as a hierarchical tree structure and to divide said simulation tasks into said subtasks by recursively traversing said hierarchical tree structure.
CN201911234744.9A 2019-12-05 2019-12-05 Multi-branch parallel simulation method Pending CN111008065A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911234744.9A CN111008065A (en) 2019-12-05 2019-12-05 Multi-branch parallel simulation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911234744.9A CN111008065A (en) 2019-12-05 2019-12-05 Multi-branch parallel simulation method

Publications (1)

Publication Number Publication Date
CN111008065A true CN111008065A (en) 2020-04-14

Family

ID=70114780

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911234744.9A Pending CN111008065A (en) 2019-12-05 2019-12-05 Multi-branch parallel simulation method

Country Status (1)

Country Link
CN (1) CN111008065A (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140052430A1 (en) * 2012-04-27 2014-02-20 Mentor Graphics Corporation Partitionless Multi User Support For Hardware Assisted Verification
CN107220107A (en) * 2017-06-29 2017-09-29 上海新跃联汇电子科技有限公司 A kind of multi-clock multi-task parallel real-time emulation system and method
CN109800054A (en) * 2018-12-24 2019-05-24 四川知周科技有限责任公司 A kind of distributed parallel real-time simulation scheduling implementation method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140052430A1 (en) * 2012-04-27 2014-02-20 Mentor Graphics Corporation Partitionless Multi User Support For Hardware Assisted Verification
CN107220107A (en) * 2017-06-29 2017-09-29 上海新跃联汇电子科技有限公司 A kind of multi-clock multi-task parallel real-time emulation system and method
CN109800054A (en) * 2018-12-24 2019-05-24 四川知周科技有限责任公司 A kind of distributed parallel real-time simulation scheduling implementation method

Similar Documents

Publication Publication Date Title
US8069446B2 (en) Parallel programming and execution systems and techniques
Coakley et al. Exploitation of high performance computing in the FLAME agent-based simulation framework
CN112286645B (en) GPU resource pool scheduling system and method
CN108710536B (en) Multilevel fine-grained virtualized GPU (graphics processing Unit) scheduling optimization method
CN109814990A (en) A kind of distributed parallel collaborative simulation framework
CN102279766A (en) Method and system for concurrently simulating processors and scheduler
KR20050000487A (en) Scheduling method and realtime processing system
CN105830026A (en) Apparatus and method for scheduling graphics processing unit workloads from virtual machines
CN111552550A (en) Task scheduling method, device and medium based on GPU (graphics processing Unit) resources
CN103369054A (en) Acquisition task management method and system
US8768680B2 (en) Simulator of multi-core system employing reconfigurable processor cores and method of simulating multi-core system employing reconfigurable processor cores
CN115146582A (en) Simulation method, simulation device, electronic apparatus, and computer-readable storage medium
CN103077068A (en) Realizing method for shared memory based high-performance simulation system
CN102508696B (en) A kind of asymmetric resource regulating method and device
US7614056B1 (en) Processor specific dispatching in a heterogeneous configuration
CN103020008B (en) The reconfigurable micro server that computing power strengthens
CN111008065A (en) Multi-branch parallel simulation method
CN102331961A (en) Method, system and dispatcher for simulating multiple processors in parallel
US10592473B2 (en) Method for improving energy efficiency of map-reduce system and apparatus thereof
DE102020113932A1 (en) VIRTUALIZATION AND MULTIPLE CLIENT SUPPORT IN GRAPHICS PROCESSORS
CN112560184B (en) Parallel computing system and method for aircraft simulation model
CN114004730A (en) Deep neural network multi-model parallel reasoning method based on graphics processor
Liu et al. BSPCloud: A hybrid distributed-memory and shared-memory programming model
CN114610440A (en) Method and system for constructing operating environment of simulator system
CN113504966A (en) GPU cluster scheduling strategy simulation method and GPU cluster simulator

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20200414

RJ01 Rejection of invention patent application after publication