void smpi_bench_end(void);
void smpi_bench_skip(void);
+void smpi_init(void);
void smpi_global_init(void);
void smpi_global_destroy(void);
int smpi_process_index(void);
void smpi_mpi_max_func(void *a, void *b, int *length,
MPI_Datatype * datatype);
+void smpi_init()
+{
+ smpi_global = xbt_new(s_smpi_global_t, 1);
+}
+
void smpi_global_init()
{
int i;
XBT_LOG_CONNECT(smpi_util, smpi);
#endif
- smpi_global = xbt_new(s_smpi_global_t, 1);
-
// config vars
smpi_global->reference_speed =
xbt_cfg_get_double(_surf_cfg_set, "reference_speed");
static void smpi_cfg_cb_host_speed(const char *name, int pos)
{
- if(smpi_global)
- {
- smpi_global->reference_speed =
- xbt_cfg_get_double_at(_surf_cfg_set, name, pos);
- }
+ smpi_global->reference_speed =
+ xbt_cfg_get_double_at(_surf_cfg_set, name, pos);
}
int smpi_run_simulation(int *argc, char **argv)
"Boolean indicating whether we should display the timing after simulation.",
xbt_cfgelm_int, &default_display_timing, 1, 1, NULL, NULL);
+ // Allocate minimal things before parsing command line arguments
+ smpi_init();
+
SIMIX_global_init(argc, argv);