BOINC client simulator
sim_projects.xml:

sim_host.xml:

sim_prefs.xml:

cc_config.xml:

Duration: Time step:

Server uses workload?

Client uses RR CPU sched?

Client uses old work fetch policy?

DCF: Normal : Stats : Dual : None

HTML output lines per file:

"; } if ($_POST['submit']) { chdir("sim"); $x1 = file_put_contents("sim_projects.xml", $_POST['projects']); $x2 = file_put_contents("sim_host.xml", $_POST['host']); $x3 = file_put_contents("sim_prefs.xml", $_POST['prefs']); $x4 = file_put_contents("cc_config.xml", $_POST['cc_config']); if (!$x1 || !$x2 || !$x3 || !$x4) { echo "Can't write files - check permissions\n"; exit(); } $duration = $_POST['duration']; if ($duration > 100000) { echo "duration must be <= 100000"; exit(); } $delta = $_POST['delta']; if ($delta < 1) { echo "time step must be >= 1"; exit(); } $suw = ''; if ($_POST['suw']) { $suw = '--server_uses_workload'; } $rr_only = ''; if ($_POST['rr_only']) { $rr_only = '--cpu_sched_rr_only'; } $work_fetch_old = ''; if ($_POST['work_fetch_old']) { $work_fetch_old = '--work_fetch_old'; } $dcfflag = ""; $dcf = ($_POST['dcf']); if ($dcf == "stats") { $dcfflag = '--dcf_stats'; } else if ($dcf == 'none') { $dcfflag = '--dcf_dont_use'; } else if ($dcf == 'dual') { $dcfflag = '--dual_dcf'; } $llflag = ''; $line_limit = $_POST['line_limit']; if ($line_limit) { $llflag = "--line_limit $line_limit"; } Header("Location: sim/sim_out_0.html"); $cmd = "./sim --duration $duration --delta $delta $suw $dcfflag $rr_only $work_fetch_old $llflag"; system("/bin/rm sim_log.txt sim_out_*.html"); system($cmd); } else { show_form(); } ?>