Simulation Models


Running a Model in Parallel Mode

If you are building a simulation model on a machine that has a multicore processor, then you can select the Parallel Mode option from the Run menu or the parallel mode icon An M/M/1 Queueing Model on the toolbar to improve the run-time performance of the model. When you select Parallel Mode, different design points and replications are distributed on different cores simultaneously. The actual distribution of design points and replications depends on the number of cores available along with the number of design points and replications that are selected to run. If you do not select Parallel Mode, then one single core is used to run the model. When Parallel Mode is selected, the progress bar displays the percentage of replications that have completed execution, and you can use the Start, Augment, Pause, and Reset run options on the toolbar or on the Run menu in the same way as in nonparallel mode (see the section Running a Model).

The Parallel Mode option is intended to decrease the amount of time it takes to run a model. Because in parallel mode more than one design point or replication is being run at the same time, the simulation clock, replication count, animation, and trace are disabled. If you want to run a model in parallel mode, then you have to ensure that your model does not attempt to save output data to the same location while multiple replications or design points are executing. For example, if you use the Dataset Writer block to write a data set during the simulation run, Simulation Studio might attempt to open and write to the same data set simultaneously for different replications in parallel mode, resulting in a SEVERE log message. Similarly, using the SAS Program block during a simulation run can cause an error if multiple replications attempt to write to the same data set during the execution of the SAS program. Because the data collection blocks (such as the Number Holder, Bucket, and Stats Collector blocks) automatically save data to a different location for each replication and design point at the end of a run, using these blocks in a model does not cause any problems in parallel mode.

Note: In parallel mode, SAS should be used to read or write data during a simulation run and to execute code by using the SAS Program block. JMP should not be used in parallel mode to load data, write data, or execute a JSL script.