Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
plug some more "leaks"
authordegomme <augustin.degomme@unibas.ch>
Thu, 25 Aug 2016 15:08:36 +0000 (17:08 +0200)
committerdegomme <augustin.degomme@unibas.ch>
Thu, 25 Aug 2016 15:08:36 +0000 (17:08 +0200)
examples/simdag/fail/sd_fail.c
src/smpi/smpi_pmpi.cpp
teshsuite/simdag/availability/availability.c

index 0bec7da..30c3b75 100644 (file)
@@ -30,7 +30,8 @@ int main(int argc, char **argv)
 
   SD_task_schedulel(task, 1, sg_host_by_name("Faulty Host"));
 
-  SD_simulate(-1.0);
+  xbt_dynar_t tasks = SD_simulate(-1.0);
+  xbt_dynar_free(&tasks);
 
   SD_task_dump(task);
 
@@ -42,7 +43,8 @@ int main(int argc, char **argv)
   SD_task_schedulel(task, 1, sg_host_by_name("Safe Host"));
 
   XBT_INFO("Run the simulation again");
-  SD_simulate(-1.0);
+  tasks = SD_simulate(-1.0);
+  xbt_dynar_free(&tasks);
 
   SD_task_dump(task);
   XBT_INFO("Task '%s' start time: %f, finish time: %f", SD_task_get_name(task), SD_task_get_start_time(task),
@@ -64,7 +66,8 @@ int main(int argc, char **argv)
   hosts[0] = sg_host_by_name("Faulty Host");
   SD_task_schedule(task, 1, hosts, computation_amount, communication_amount,-1);
 
-  SD_simulate(-1.0);
+  tasks = SD_simulate(-1.0);
+  xbt_dynar_free(&tasks);
 
   SD_task_dump(task);
 
@@ -79,7 +82,8 @@ int main(int argc, char **argv)
   SD_task_schedule(task, 1, hosts, computation_amount, communication_amount,-1);
 
   XBT_INFO("Run the simulation again");
-  SD_simulate(-1.0);
+  tasks = SD_simulate(-1.0);
+  xbt_dynar_free(&tasks);
 
   SD_task_dump(task);
   XBT_INFO("Task '%s' start time: %f, finish time: %f", SD_task_get_name(task), SD_task_get_start_time(task),
index 1315a65..704aaad 100644 (file)
@@ -1520,12 +1520,13 @@ int PMPI_Waitany(int count, MPI_Request requests[], int *index, MPI_Status * sta
       TRACE_smpi_recv(rank_traced, src_traced, dst_traced);
     }
     TRACE_smpi_ptp_out(rank_traced, src_traced, dst_traced, __FUNCTION__);
-    xbt_free(srcs);
-    xbt_free(dsts);
-    xbt_free(recvs);
-    xbt_free(comms);
-
   }
+  xbt_free(srcs);
+  xbt_free(dsts);
+  xbt_free(recvs);
+  xbt_free(comms);
+
+
   smpi_bench_begin();
   return MPI_SUCCESS;
 }
index 1a0bfaf..9bcd4ce 100644 (file)
@@ -50,7 +50,9 @@ int main(int argc, char *argv[])
   XBT_INFO("Scheduling DAX...");
   scheduleDAX(dax);
   XBT_INFO("DAX scheduled");
-  SD_simulate(-1);
+  xbt_dynar_t changed_tasks = SD_simulate(-1);
+  xbt_dynar_free(&changed_tasks);
+
   XBT_INFO("Simulation done.");
 
   // Free memory