Storing data associated to a SMPI process is now done in the
smpi_replay_main function -- previously it was done at initialization
time.
This allows more dynamicity regarding the replay of SMPI traces:
One will now be able to replay different traces in a fully dynamic
fashion.
smpi_process()->set_replaying(true);
int my_proc_id = simgrid::s4u::this_actor::get_pid();
smpi_process()->set_replaying(true);
int my_proc_id = simgrid::s4u::this_actor::get_pid();
- for (int i = 0; i < smpi_process_count(); i++) {
- storage[i] = simgrid::smpi::replay::RequestStorage();
- }
TRACE_smpi_init(my_proc_id);
TRACE_smpi_computing_init(my_proc_id);
TRACE_smpi_init(my_proc_id);
TRACE_smpi_computing_init(my_proc_id);
{
static int active_processes = 0;
active_processes++;
{
static int active_processes = 0;
active_processes++;
+ storage[simgrid::s4u::this_actor::get_pid()] = simgrid::smpi::replay::RequestStorage();
simgrid::xbt::replay_runner(*argc, *argv);
/* and now, finalize everything */
simgrid::xbt::replay_runner(*argc, *argv);
/* and now, finalize everything */