X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/2f2f00652fd75c462b2cb832358e7b66c72c8e07..773e09f91e02cdd7e30e221f2bd6f39e97896b16:/src/smpi/private.h?ds=sidebyside diff --git a/src/smpi/private.h b/src/smpi/private.h index 8e215a6d0f..3a5c8fa8af 100644 --- a/src/smpi/private.h +++ b/src/smpi/private.h @@ -103,13 +103,19 @@ typedef struct smpi_global_t { int running_hosts_count; smx_mutex_t running_hosts_count_mutex; + // FIXME: maybe all code needs to lock timer? xbt_os_timer_t timer; smx_mutex_t timer_mutex; smx_cond_t timer_cond; + + // keeps track of previous times double times[SMPI_MAX_TIMES]; int times_max; smx_mutex_t times_mutex; + smx_mutex_t execute_mutex; + smx_cond_t execute_cond; + } s_smpi_global_t; typedef struct smpi_global_t *smpi_global_t; extern smpi_global_t smpi_global; @@ -129,6 +135,7 @@ int smpi_mpi_isend(smpi_mpi_request_t request); int smpi_mpi_irecv(smpi_mpi_request_t request); int smpi_mpi_wait(smpi_mpi_request_t request, smpi_mpi_status_t *status); +void smpi_execute(double duration); void smpi_bench_begin(void); double smpi_bench_end(void); void smpi_bench_skip(void);