Increasing the performance of a Discrete Event System Specification simulator by means of computational resource usage "activity" models. (December 2017) - Van Tendeloo, Yentl; Vangheluwe, Hans
Domain-specific simulators often have an edge on general-purpose simulators in terms of performance. Their intricate knowledge of the domain allows them to aggressively optimize and take shortcuts. In contrast, simulators for more general formalisms, such as Discrete Event System Specification (DEVS ), need to support a wider set of models. Their inability to use domain information preventsDEVS simulators from achieving as high performance as their domain-specific variants. To solve this problem, we introduce a way to enhance the simulation performance ofDEVS models through the use of computational resource usage models, often termed "activity" models. These models augment general-purposeDEVS models with domain-specific information, which can be used by the simulator. We apply this information in the context of data structure optimization, load balancing, and model allocation. Activity-awareness is a non-invasive extension to theDEVS formalism, meaning that activity-augmented models remain perfectly valid for use in activity-unaware simulators. Similarly, models without activity can still be simulated by an activity-aware simulator. Our approach is validated by making PythonPDEVS, aParallel DEVS simulator, activity-aware and evaluating the performance impact on a set of benchmark models.