|Contacts||Philipp Merkle (http://sdq.ipd.kit.edu/people/philipp merkle/)|
|Is Stand-alone Analysis?||Yes|
Event-driven Simulator for Palladio models originally geared towards highly complex simulation models, where SimuCom might suffer from scalability and performance issues. Evolved to a platform for modular, non-invasive simulation extensions.
EventSim is a performance simulator for software systems modelled by the Palladio component (meta-)model. EventSim is most comparable to the SimuCom simulator and is primarily geared towards highly complex simulation models, where SimuCom might suffer from scalability and performance issues. Namely, the event-oriented simulation employed in EventSim allows for highly intensive workloads of 100,000 concurrent requests and more. In this respect, EventSim aims at complementing SimuCom and is not meant to replace it. The greatest disadvantage of EventSim when contrasted to SimuCom is its compararatively small number of features supported.
- Extensible through Simulation Modules
- can be enabled/disabled on a per-simulation basis via EventSim's launch confguration tab
- non-invasive extension via Eclipse/Equinox Extension Points, combined with Google Guice dependency injection
- no preceeding model-2-code transformation required; EventSim operates directly on the model
- measurement processing decoupled from simulation, making better use of multi-core processors
- Flexible measurements through customized instrumentation descriptions
- remove unneeded probes to save processing time and storage space
- add model-specific probes, such as: "measure execution times of InternalAction x, executed in the scope of AssemblyContext y"
- Measurements are managed and persisted using R project, a leading software for statistical computing and graphics
- Powerful visualization of measurements
- filter measurements by:
- metric (Response Time, Utilization, ...)
- simulation time
- trigger type (User, Request)
- trigger instance (1st/2nd/... Request)
- assembly context
- measuring point (ExternalCall, InternalAction, AcquireAction, ...)
- build custom ggplot2 diagrams for filtered measurements, without writing a single line of R code: Histograms, Cumulative Distribution Functions (CDFs), Point/Bar/Line Charts
- calculate statistics for filtered measurements, without writing a single line of R code: mean, quartiles, quantiles
- use R code generated by EventSim's visualization as a basis for more complex filter expressions or diagrams, executed manually in R
- filter measurements by:
- Measurement postprocessors
- consolidate raw simulation data, e.g. calculate mean queue length (windowed) from raw queue length measurements to save storage space (around 50%)
- transform irregular time series measurements into regular (equidistantly spaced) measurements so that statistics and plots yield meaningful results
- extension point allows custom postprocessors
Feature requests and bugs are tracked via Jira.
Please feel free to contribute bugs and feature requests.