sim_projects.xml:

sim_host.xml:

sim_prefs.xml:

cc_config.xml:


Time step:
Duration:
(may not exceed TimeStep*10000)

Server does EDF simulation based on current workload?

Client uses Round-Robin (old-style) CPU scheduling?

Client uses old work fetch policy?

Duration correction factor: 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']; $delta = $_POST['delta']; if ($delta < 1) { echo "time step must be >= 1"; exit(); } if ($duration/$delta > 10000) { echo "duration/step must be <= 10000"; 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 { page_head("BOINC client simulator"); echo " This is a web interface to the BOINC client simulator. Fill in the following form to specify the parameters of your simulation. Click here for more info. "; show_form(); } ?>