MalekMFS / CSPE40824

M/M/1/K Queue Simulation and Analysis Modeling assignments for "Computer System Performance Evaluation" course.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

CSPE40824

M/M/1/K Queue Simulation and Analysis Modeler for Computer System Performance Evaluation course assignment. Which returns Blocked jobs and Overdue (timeout) jobs Probability to be imported into a Spreadsheet.

How to run

You could run the project with sbt run "<parameters>" or just run the .jar file followed by the following parameters (without quotes). Note that all parameters are optional and have default values, However, you need parameters.conf alongside of project as it's required by the examiner. Here are samples with default values:

  • -e 7 or --expOfCust 7: Indicates the number of Customers (Jobs) in terms of the power of ten. The default is 7 (i.e 10^7).
  • -k 12 or --queueSize 12: Server's queue size.
  • --examiner: Runs simulation only for lambda (λ) = 5, 10, 15
  • --debug: Prints out more info like Arrival, Done, and Overdue events.
  • -m fixed,--mode fixed: Switches between analysis mode and Simulation mode with fixed or exp theta (wait time) distributions.
  • -q fifo, --queueMode fifo: Select queue's service mode. fifo for First come, first served (a.k.a. FCFS), ps for Processor Sharing (ideal Round Robin), or dps for Discriminatory Processor Sharing with 2 classes.

Note: The Theta and Mu parameters are read from the parameters.conf as required by the examiner. And it will run for lambda (λ) = 0.1 to 20 by 0.1 steps (200 values) by default.

Build Standalone .jar file

sbt assembly

Dependencies

About

M/M/1/K Queue Simulation and Analysis Modeling assignments for "Computer System Performance Evaluation" course.

License:MIT License


Languages

Language:Scala 98.1%Language:Makefile 1.9%