Package for RD-Gen and SchedulingVisualizer, and Templete for program of thesis. Sample procedures are described in each jupyter notebook (.ipynb).
pip3 install -r ./requirements.txt
get DAG status from RD-Gen (https://github.com/azu-lab/RD-Gen)
RDG_DAG takes as input the array of execution times and the array of edges
in addition, methods related to graph structures use the networkx library
for detail, please refer src/dag_rd_gen.py
visualize scheduling result
visualisation is done in an external library (https://github.com/atsushi421/Scheduling_Visualization)
two methods have been implemented: to prepare objects for visualisation and to provide arrays of data
minimum workflow of scheduling simulation
scheduler/ directory is a simple implementation of list scheduling
For details of sample list scheduling, refer to the following: https://github.com/rokamu623/list_scheduling
a sample of evaluate scheduling algorithm
implementation is refered in src/simulate.py
scheduling algorithm is implemented in src.simulate.simulate function
src.simulate.simulate return evaluated value (ex. WCRT)
src.simulate.simulate_taskset return list of evaluated values for all DAG (dags)
Instead of using the simulate_taskset function, the unit tests are written in .py files and all loops are done in .ipynb
↓ appendix (not refactored) ↓
- output/ : graphs and files are outputted here
- sample_input/ : input files of samples are here
- sample_shceduler/ : scheduling algorithm using sample (not refactored)
- src/
- dag_rd_gen.py : RDG_DAG class which can load data from RD-Gen file is implemented
- sched_vis_util.py: Visualize helper class is implemented
- simulate.py : sample function of evaluate scheduling algorithm
- n.xxx.ipynb : sample of function of this repository
- README.md : this
- requirements.txt : package list of requirement packages