Skip to content

Getting Started

Clayton Johnson edited this page Jul 17, 2018 · 4 revisions

How to Run

(May have to change some of the files mentioned to tailor for your stuff)

  • Two ways:
    • Scripts (Not too different from EdgeCloudSim)
      • May require changes in bash scripts to point at your desired files
      • Compile with compile.sh
      • Run single scenario with scenario_runner.sh
      • Run multiple scenarios with run_scenarios.sh
       ./run_scenarios.sh 1 1
      
      • The numbers passed into the script are the number of cores and iterations desired, respectively
      • When these are run, they will create directories inside of the output file in the linked directory. A sample run may look like the following:
       ~$ ./run_scenarios 1 1
       ~$ tail -f /pFogSim/scripts/sample_application/output/11-07-2018_11-52/default_config/ite1.log
       Simulation setting file, output folder and iteration number are not provided! Using default ones...
       Simulation started at 11/07/2018 11:52:21
       ----------------------------------------------------------------------
       Scenario started at 11/07/2018 11:52:21
       Scenario: PUDDLE_ORCHESTRATOR - Policy: NEXT_FIT - #iteration: 1
       Duration: 0.5 hour(s) - Poisson: 5.0 - #devices: 500
       CloudSim.init reached
       ScenarioFactory reached
       Creating tasks...Done, 
       SimManager reached
       SimManager is starting...
      
    • mainApp.java (IDEs, we used Eclipse but any will work)
      • Will output to console
      • It is the same file given by EdgeCloudSim with some additions
      • pFogSim/sim_results/ite(#) directory should exist at time of run (or run with appropriate permissions)
If running on CentOS, make sure you have javafx within your path.

Creating Custom Scenarios

  • Customizable Files:
    • Change DataInterpreter to fit data sets into XML formats
    • All files that may need to be customized if desired:
      • node_test.xml, link_test.xml
      • config files
      • Everything will run appropriately