Discrete Event Simulations are clearly preferable on sequential machines but parallel algorithms are hard due to need for dynamic load balancing (events are dynamic and not uniform throughout system) and synchronization (which events can be executed in parallel?)
|
There are several important approaches to DES of which best known is Time Warp method originally proposed by David Jefferson -- here one optimistically executes events in parallel and rolls back to an earlier state if this is found to be inconsistent
|
Conservative methods (only execute those events you are certain cannot be impacted by earlier events) have little paralellism
-
e.g. there is only one event with lowest global time
|
DES do not exhibit the classic loosely synchronous compute-communicate structure as there is no uniform global time
-
typically even with time warp, no scalable parallelism
|