This directory contains the source code for the move-base case study. It corresponds to Section 6 of the paper.
The code is based on the pyCPA for compositional performance analysis. It consists of two parts: ros.py
, which extends pyCPA with the analysis described in the paper, and move_base.py
, which creates the system model, runs the analysis and visualizes the results.
- Install pyCPA as described here
To reproduce the graphs in the paper, simply run the move_base.py script. It generates the graphs (latency_per_budget.pdf
and latency_per_jitter.pdf
) as well as visualizations of the system model (<model name>-<number of reservations>.pdf
) as generated by pyCPA's graph_system
function.
Note: Generating the graphs will generate a couple of warnings of the form
WARNING: load too high: load on R0 is 1.225124
. This is normal and expected, and appears when the pyCPA analysis detects, that a given reservation assignment is unschedulable. The graph only shows schedulable systems.