TRACE_smpi_collective_in(rank, -1, __FUNCTION__, extra);
TRACE_smpi_collective_out(rank, -1, __FUNCTION__);
- if (!smpi_process_index()){
+ if (!action_funs){
_xbt_replay_action_init();
xbt_replay_action_register("init", action_init);
xbt_replay_action_register("finalize", action_finalize);
THROWF(unknown_error, 0, "%s is not a double", (*argv)[2]);
XBT_VERB("Delayed start for instance - Sleeping for %f flops ",value );
smpi_execute_flops(value);
+ } else {
+ //UGLY done to force context switch to be sure that all MSG_process begin initialization
+ XBT_VERB("Force context switch by smpi_execute_flops - Sleeping for 0.0 flops ");
+ smpi_execute_flops(0.0);
}
+
xbt_replay_action_runner(*argc, *argv);
}