#endif
/* set surf's action */
- if (!MC_is_active()) {
+ if (!MC_is_active() && !MC_record_replay_is_active()) {
synchro->execution.surf_exec = surf_workstation_execute(host, computation_amount);
surf_action_set_data(synchro->execution.surf_exec, synchro);
}
/* set surf's synchro */
- if (!MC_is_active()) {
+ if (!MC_is_active() && !MC_record_replay_is_active()) {
synchro->execution.surf_exec =
surf_workstation_model_execute_parallel_task((surf_workstation_model_t)surf_workstation_model,
host_nb, workstation_list, computation_amount, communication_amount, rate);
simcall->issuer->waiting_synchro = synchro;
/* set surf's synchro */
- if (MC_is_active()) {
+ if (MC_is_active() || MC_record_replay_is_active()) {
synchro->state = SIMIX_DONE;
SIMIX_execution_finish(synchro);
return;