X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/2a6a0f637631eb1781bbda4b8e0c2edabbbddd4d..7d1dc2ebb532ebc2ce507519cae63cd6b213e881:/examples/simdag/scheduling/minmin_test.c diff --git a/examples/simdag/scheduling/minmin_test.c b/examples/simdag/scheduling/minmin_test.c index a779dee702..3a0788d18f 100644 --- a/examples/simdag/scheduling/minmin_test.c +++ b/examples/simdag/scheduling/minmin_test.c @@ -65,7 +65,7 @@ static xbt_dynar_t get_ready_tasks(xbt_dynar_t dax) xbt_dynar_push(ready_tasks, &task); } } - DEBUG1("There are %lu ready tasks", xbt_dynar_length(ready_tasks)); + XBT_DEBUG("There are %lu ready tasks", xbt_dynar_length(ready_tasks)); return ready_tasks; } @@ -80,12 +80,11 @@ static double finish_on_at(SD_task_t task, SD_workstation_t workstation) SD_task_t parent, grand_parent; xbt_dynar_t parents, grand_parents; - int grand_parent_nworkstations; SD_workstation_t *grand_parent_workstation_list; parents = SD_task_get_parents(task); - if (xbt_dynar_length(parents)) { + if (!xbt_dynar_is_empty(parents)) { /* compute last_data_available */ last_data_available = -1.0; xbt_dynar_foreach(parents, i, parent) { @@ -95,13 +94,11 @@ static double finish_on_at(SD_task_t task, SD_workstation_t workstation) grand_parents = SD_task_get_parents(parent); if (xbt_dynar_length(grand_parents) > 1) { - ERROR1("Warning: transfer %s has 2 parents", + XBT_ERROR("Warning: transfer %s has 2 parents", SD_task_get_name(parent)); } xbt_dynar_get_cpy(grand_parents, 0, &grand_parent); - grand_parent_nworkstations = - SD_task_get_workstation_count(grand_parent); grand_parent_workstation_list = SD_task_get_workstation_list(grand_parent); /* Estimate the redistribution time from this parent */ @@ -154,7 +151,7 @@ static SD_workstation_t SD_task_get_best_workstation(SD_task_t task) for (i = 1; i < nworkstations; i++) { EFT = finish_on_at(task, workstations[i]); - DEBUG3("%s finishes on %s at %f", + XBT_DEBUG("%s finishes on %s at %f", SD_task_get_name(task), SD_workstation_get_name(workstations[i]), EFT); @@ -236,7 +233,7 @@ static void output_xml(FILE * out, xbt_dynar_t dax) int main(int argc, char **argv) { - unsigned int cursor, selected_idx = 0; + unsigned int cursor; double finish_time, min_finish_time = -1.0; SD_task_t task, selected_task = NULL; xbt_dynar_t ready_tasks; @@ -251,8 +248,8 @@ int main(int argc, char **argv) /* Check our arguments */ if (argc < 3) { - INFO1("Usage: %s platform_file dax_file [jedule_file]", argv[0]); - INFO1 + XBT_INFO("Usage: %s platform_file dax_file [jedule_file]", argv[0]); + XBT_INFO ("example: %s simulacrum_7_hosts.xml Montage_25.xml Montage_25.jed", argv[0]); exit(1); @@ -295,7 +292,7 @@ int main(int argc, char **argv) while (!xbt_dynar_is_empty((changed = SD_simulate(-1.0)))) { /* Get the set of ready tasks */ ready_tasks = get_ready_tasks(dax); - if (!xbt_dynar_length(ready_tasks)) { + if (xbt_dynar_is_empty(ready_tasks)) { xbt_dynar_free_container(&ready_tasks); xbt_dynar_free_container(&changed); /* there is no ready task, let advance the simulation */ @@ -307,18 +304,17 @@ int main(int argc, char **argv) * its best workstation. */ xbt_dynar_foreach(ready_tasks, cursor, task) { - DEBUG1("%s is ready", SD_task_get_name(task)); + XBT_DEBUG("%s is ready", SD_task_get_name(task)); workstation = SD_task_get_best_workstation(task); finish_time = finish_on_at(task, workstation); if (min_finish_time == -1. || finish_time < min_finish_time) { min_finish_time = finish_time; selected_task = task; selected_workstation = workstation; - selected_idx = cursor; } } - INFO2("Schedule %s on %s", SD_task_get_name(selected_task), + XBT_INFO("Schedule %s on %s", SD_task_get_name(selected_task), SD_workstation_get_name(selected_workstation)); SD_task_schedulel(selected_task, 1, selected_workstation); @@ -330,16 +326,16 @@ int main(int argc, char **argv) xbt_dynar_free_container(&changed); } - INFO1("Simulation Time: %f", SD_get_clock()); + XBT_INFO("Simulation Time: %f", SD_get_clock()); - INFO0 + XBT_INFO ("------------------- Produce the trace file---------------------------"); - INFO1("Producing the trace of the run into %s", tracefilename); + XBT_INFO("Producing the trace of the run into %s", tracefilename); out = fopen(tracefilename, "w"); - xbt_assert1(out, "Cannot write to %s", tracefilename); + xbt_assert(out, "Cannot write to %s", tracefilename); free(tracefilename); output_xml(out, dax); @@ -353,6 +349,7 @@ int main(int argc, char **argv) xbt_dynar_foreach(dax, cursor, task) { SD_task_destroy(task); } + xbt_dynar_free_container(&dax); for (cursor = 0; cursor < total_nworkstations; cursor++) SD_workstation_free_attribute(workstations[cursor]);