double simulated;
int *argc;
char ***argv;
- smx_rdv_t mailbox;
- smx_rdv_t mailbox_small;
+ smx_mailbox_t mailbox;
+ smx_mailbox_t mailbox_small;
xbt_mutex_t mailboxes_mutex;
xbt_os_timer_t timer;
MPI_Comm comm_self;
MPI_Comm* temp_comm_world;
xbt_bar_t temp_bar;
- smpi_deployment_register_process(instance_id, rank, index, &temp_comm_world ,&temp_bar);
- data = smpi_process_remote_data(index);
- data->comm_world = temp_comm_world;
+ smpi_deployment_register_process(instance_id, rank, index, &temp_comm_world, &temp_bar);
+ data = smpi_process_remote_data(index);
+ data->comm_world = temp_comm_world;
if(temp_bar != NULL) data->finalization_barrier = temp_bar;
- data->index = index;
+ data->index = index;
data->instance_id = instance_id;
- data->replaying = 0;
+ data->replaying = 0;
//xbt_free(simcall_process_get_data(proc));
- simdata_process_t simdata = static_cast<simdata_process_t>(simcall_process_get_data(proc));
- simdata->data = data;
+ simdata_process_t simdata = static_cast<simdata_process_t>(simcall_process_get_data(proc));
+ simdata->data = data;
if (*argc > 3) {
free((*argv)[1]);
smpi_process_data_t smpi_process_data(void)
{
- simdata_process_t simdata = static_cast<simdata_process_t>(SIMIX_process_self_get_data(SIMIX_process_self()));
+ simdata_process_t simdata = static_cast<simdata_process_t>(SIMIX_process_self_get_data());
return static_cast<smpi_process_data_t>(simdata->data);
}
return data ? *data->comm_world : MPI_COMM_NULL;
}
-smx_rdv_t smpi_process_mailbox(void)
+smx_mailbox_t smpi_process_mailbox(void)
{
smpi_process_data_t data = smpi_process_data();
return data->mailbox;
}
-smx_rdv_t smpi_process_mailbox_small(void)
+smx_mailbox_t smpi_process_mailbox_small(void)
{
smpi_process_data_t data = smpi_process_data();
return data->mailbox_small;
return data->mailboxes_mutex;
}
-smx_rdv_t smpi_process_remote_mailbox(int index)
+smx_mailbox_t smpi_process_remote_mailbox(int index)
{
smpi_process_data_t data = smpi_process_remote_data(index);
return data->mailbox;
}
-smx_rdv_t smpi_process_remote_mailbox_small(int index)
+smx_mailbox_t smpi_process_remote_mailbox_small(int index)
{
smpi_process_data_t data = smpi_process_remote_data(index);
return data->mailbox_small;
smpi_universe_size = process_count;
process_data = xbt_new0(smpi_process_data_t, process_count);
for (i = 0; i < process_count; i++) {
- process_data[i] = xbt_new(s_smpi_process_data_t, 1);
- //process_data[i]->index = i;
- process_data[i]->argc = NULL;
- process_data[i]->argv = NULL;
- process_data[i]->mailbox = simcall_rdv_create(get_mailbox_name(name, i));
- process_data[i]->mailbox_small =
+ process_data[i] = xbt_new(s_smpi_process_data_t, 1);
+ //process_data[i]->index = i;
+ process_data[i]->argc = NULL;
+ process_data[i]->argv = NULL;
+ process_data[i]->mailbox = simcall_rdv_create(get_mailbox_name(name, i));
+ process_data[i]->mailbox_small =
simcall_rdv_create(get_mailbox_name_small(name, i));
- process_data[i]->mailboxes_mutex = xbt_mutex_init();
- process_data[i]->timer = xbt_os_timer_new();
+ process_data[i]->mailboxes_mutex = xbt_mutex_init();
+ process_data[i]->timer = xbt_os_timer_new();
if (MC_is_active())
MC_ignore_heap(process_data[i]->timer, xbt_os_timer_size());
process_data[i]->comm_self = MPI_COMM_NULL;