Skip to content

Simulation of different heuristics for the Birkhoff–von Neumann scheduling in a switch.

License

Notifications You must be signed in to change notification settings

Berberer/BvN-Switch-Simulator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

55 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BvN-Switch-Simulator

Simluator for Birkhoff–von Neumann scheduling in a switch. Different heuristics for the scheduling are compared regarding metrics like packet delay, queue size, throughput, etc.

Getting Started

Install dependencies:

pip install -r requirements.txt

Run a single simulation

To run a single simulation with the desired configuration and write the evaluation results into a JSON file there are the following possibilities:

  • Run the simulator and select your simulation configuration interactively:
python src/Simulator.py
  • Specify your configuration manually. For example in the case of GLJD and 5 simulation runs for a 2x2 Switch:
python src/Simulator.py --heuristic GLJD --size 3 --runs 5
  • Get an explanation of a configuration parameters:
python src/Simulator.py --help

Run simulation suite

To run the simulation suite with simulation runs for all possible configurations and save the results into a CSV file:

python src/Simulation_Suite.py

About

Simulation of different heuristics for the Birkhoff–von Neumann scheduling in a switch.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages