unsigned int smpi_sleep(unsigned int secs)
{
+ smpi_bench_end();
smpi_execute((double) secs);
+ smpi_bench_begin();
return secs;
}
int smpi_gettimeofday(struct timeval *tv, struct timezone *tz)
{
- double now = SIMIX_get_clock();
-
+ double now;
+ smpi_bench_end();
+ now = SIMIX_get_clock();
if (tv) {
- tv->tv_sec = (time_t) now;
- tv->tv_usec = (suseconds_t) (now * 1e6);
+ tv->tv_sec = (time_t)now;
+ tv->tv_usec = (suseconds_t)((now - tv->tv_sec) * 1e6);
}
+ smpi_bench_begin();
return 0;
}
TRY {
xbt_dict_get(calls, loc); /* Succeed or throw */
known = 1;
- } CATCH(ex) {
+ }
+ CATCH(ex) {
if(ex.category == not_found_error) {
known = 0;
xbt_ex_free(ex);