ABSTRACT

A computer software-based model is typically designed to produce a trace of system evolution over time. The actual process of computing the model state and producing the state values as the simulation time is advanced is called model execution. Models could be designed with a specific execution technique in mind, or could be generally amenable to multiple execution techniques. Two popular methods that are used to execute models are time-stepped method and discrete-event method. Each of these methods could in turn be executed either sequentially (on a single processor), or in parallel (using multiple processors concurrently). In this chapter, we describe the time-stepped and discrete-event execution methods and outline some of the common approaches to their sequential and parallel execution. Execution concepts common to the methods are described followed by implementation details of the methods.