Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Fix smpi_execute_benched.
authorTom Cornebize <tom.cornebize@ensimag.grenoble-inp.fr>
Wed, 19 Jul 2017 13:05:38 +0000 (15:05 +0200)
committerTom Cornebize <tom.cornebize@ensimag.grenoble-inp.fr>
Wed, 19 Jul 2017 13:05:41 +0000 (15:05 +0200)
When simulating a target machine T on an host H, you had to give the
time as measured on H. This time was then “converted” to the time that
would be spent on T by using the host speed and the target speed.

Now, you directly give the time that should be spent on T. This is
better, since the relative duration of different pieces of code may differ
from H to T (and thus you really want to give the time spent on T).

src/smpi/internals/smpi_bench.cpp

index b570e7b..0b68ed9 100644 (file)
@@ -10,6 +10,7 @@
 #include "src/mc/mc_replay.h"
 #include "smpi_process.hpp"
 #include "smpi_comm.hpp"
 #include "src/mc/mc_replay.h"
 #include "smpi_process.hpp"
 #include "smpi_comm.hpp"
+#include "simgrid/host.h"
 
 #ifndef WIN32
 #include <sys/mman.h>
 
 #ifndef WIN32
 #include <sys/mman.h>
@@ -81,7 +82,8 @@ void smpi_execute(double duration)
 void smpi_execute_benched(double duration)
 {
   smpi_bench_end();
 void smpi_execute_benched(double duration)
 {
   smpi_bench_end();
-  smpi_execute(duration);
+  double speed = sg_host_speed(sg_host_self());
+  smpi_execute_flops(duration*speed);
   smpi_bench_begin();
 }
 
   smpi_bench_begin();
 }