Assignment and final lab for "Distributed Computing" course.
Objective: simulate and analyze a distributed system
Note: all parameters are optional (having default values) unless stated otherwise.
Example for understanding system state and events
usage: python3 ./sir.py [--population] [--infected] [--seed] [--avg-contact-time] [--avg-recovery-time] [--verbose] [--plot_interval]
--population:intthe total population of individuals to simulate--infected:intstarting number of infected people--seed:intrandom number generator seed--avg-contact-time:floataverage contact time between two individuals--avg-recovery-time:floataverage recovery time after infection--verbose: enable verbose mode--plot_interval:floatdata point collection frequency for the final plot
Simulation of a multi server FIFO queueign model.
- Jobs are spawned at a
lambdrate and are competed with amuprobability. - The simulation supports
nmultiple servers. - Each spawned job is inserted using a so called "SuperMarket model" in the emptyest queue selected from a
dsubset ofn- The SuperMarket model works just like when checking out at costco; you scan the nearest ~5 queues and select the one with less people waiting. In the same fashion, the supermarket model watches
dsevers (picked at random) and inserts the job in the queue with less jobs awaiting completion.
- The SuperMarket model works just like when checking out at costco; you scan the nearest ~5 queues and select the one with less people waiting. In the same fashion, the supermarket model watches
usage: python3 ./mmn_queue.py [--lambd] [--mu] [--max-t] [--n] [--d] [--csv]
--lambd:floatarrival rate of jobs--mu:floatservice rate of jobs--max-t:floatmaximum simulation time--n:intnumber of simulated servers--d:intnumber of servers to watch for the supermarket model--csv:strpath to csv file to save the simulation data
To be implemented :(