Method and system for dynamically adjusting speed versus accuracy of computer platform simulation
AssigneeCoWare, Inc.
InventorsNiels Vanspauwen, Tom Michiels, Karl Van Rompaey
Life of this patent
Estimating the term…
Abstract
Executing a simulation of a computer platform, the simulation including simulation models. A dynamic quantum is accessed whose current value specifies a maximum number of units of execution a simulation model is allowed to perform without synchronizing with another simulation model. The dynamic quantum may be received from a user. Respective simulation models are invoked for execution with the current value of the dynamic quantum provided to each of the simulation models. The method also comprises modifying the value of the dynamic quantum based on a simulation event.
Claims27
A computer-implemented method of executing a simulation of a computer platform, said simulation comprising a plurality of simulation models, said method comprising:
- accessing a dynamic quantum whose current value specifies a maximum number of units of execution that a first simulation model of said plurality of simulation models is allowed to perform;
- invoking respective simulation models of said plurality of simulation models for executing said first simulation model and a second simulation model simultaneously;
- and
- providing the current value of said dynamic quantum to each of said simulation models when invoking each of said simulation models,
- wherein said executing said first simulation model renders a unified view of said plurality of simulation models, and wherein said first simulation model directly accesses memory of said second simulation model to avoid invoking said second simulation model to avoid a dependency that would otherwise cause said first simulation model to halt prior to completing said maximum number of units of execution.
A computer readable medium having stored thereon instructions for implementing a method of simulating a computer platform, said instructions comprising:
- a plurality of simulations for modeling portions of said computer system platform;
- and
- a simulation engine operable to control execution of said plurality of simulations based on a dynamic quantum, wherein said simulation engine instructs respective simulations of said plurality of simulations to perform a number of execution units up to the current value of said dynamic quantum, wherein a first simulator of said plurality of simulations and a second simulator of said plurality of simulations are executed simultaneously, wherein said simulation engine detects a dependency of an event in said first simulator of said plurality of simulations involving said second simulator of said plurality of simulations, and wherein said simulation engine halts said first simulator in response to said detecting said dependency, and wherein said simulation engine modifies said current value of said dynamic quantum prior to invoking a next simulator of said plurality of simulations,
- wherein simulating said computer platform renders a unified view of said plurality of simulation models.
A computer readable medium having stored thereon instructions for implementing a method of simulating a computer platform comprising a plurality of simulation models, said method comprising:
- accessing a value for a dynamic quantum from user input, wherein said value specifies a maximum number of units of execution a simulation model of said plurality of simulation models is allowed to perform without synchronizing with another simulation model of said plurality of simulation models, wherein a first simulation model of said plurality of simulation models and a second simulation model of said plurality of simulations models are performed simultaneously;
- invoking respective simulation models of said plurality of simulation models;
- providing the value of said dynamic quantum to each of said simulation models, wherein each of said simulation models is allowed to execute for up to said value without synchronizing with another simulation model of said plurality of simulation models;
- and
- modifying said value of said dynamic quantum based on a simulation event,
- wherein simulating said computer platform renders a unified view of said plurality of simulation models, and wherein said first simulation model directly accesses memory of said second simulation model to avoid invoking said second simulation model to avoid a dependency that would otherwise cause said first simulation model to halt prior to completing said maximum number of units of execution.
Dependencies are inferred from the claim text.