X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/39b6ed28636c4d67a0127d8526bf10dbc212cdc9..d42d0c6f54ae825a249799cb1e4e2920de5205c8:/teshsuite/simdag/platforms/Evaluate_get_route_time.c diff --git a/teshsuite/simdag/platforms/Evaluate_get_route_time.c b/teshsuite/simdag/platforms/Evaluate_get_route_time.c index a307d79638..c9ef64b7fe 100644 --- a/teshsuite/simdag/platforms/Evaluate_get_route_time.c +++ b/teshsuite/simdag/platforms/Evaluate_get_route_time.c @@ -1,93 +1,51 @@ -/* Copyright (c) 2008, 2009, 2010. The SimGrid Team. +/* Copyright (c) 2008-2015. The SimGrid Team. * All rights reserved. */ /* This program is free software; you can redistribute it and/or modify it * under the terms of the license (GNU LGPL) which comes with this package. */ -//for i in $(seq 1 100); do teshsuite/simdag/platforms/evaluate_get_route_time ../examples/platforms/One_cluster.xml 1 2> /tmp/null ; done +//for i in $(seq 1 100); do teshsuite/simdag/platforms/evaluate_get_route_time ../examples/platforms/cluster.xml 1 2> /tmp/null ; done #include #include -#include "simdag/simdag.h" -#include "surf/surf_private.h" -#include +#include "simgrid/simdag.h" +#include "surf/surf.h" +#include "xbt/xbt_os_time.h" #define BILLION 1000000000L; -extern routing_global_t global_routing; int main(int argc, char **argv) { - SD_workstation_t w1, w2; - const SD_workstation_t *workstations; - int i, j; - int list_size; - struct timespec start, stop; - double accum; + int i, j; + xbt_os_timer_t timer = xbt_os_timer_new(); - /* initialisation of SD */ - SD_init(&argc, argv); + SD_init(&argc, argv); + SD_create_environment(argv[1]); - /* creation of the environment */ - SD_create_environment(argv[1]); + sg_host_t *workstations = sg_host_list(); + int list_size = sg_host_count(); - workstations = SD_workstation_get_list(); - list_size = SD_workstation_get_number(); + /* Random number initialization */ + srand( (int) (xbt_os_time()*1000) ); - unsigned int seed; - struct timespec time; - //clock_gettime( CLOCK_REALTIME, &time); -#if _POSIX_TIMERS > 0 - clock_gettime(CLOCK_REALTIME, &time); -#else - struct timeval tv; - gettimeofday(&tv, NULL); - time.tv_sec = tv.tv_sec; - time.tv_nsec = tv.tv_usec*1000; -#endif - seed = time.tv_nsec; + do { + i = rand()%list_size; + j = rand()%list_size; + } while(i==j); - srand(seed); + sg_host_t w1 = workstations[i]; + sg_host_t w2 = workstations[j]; + printf("%d\tand\t%d\t\t",i,j); - do{ - i = rand()%list_size; - j = rand()%list_size; - }while(i==j); + xbt_os_cputimer_start(timer); + SD_route_get_list(w1, w2); + xbt_os_cputimer_stop(timer); - w1 = workstations[i]; - w2 = workstations[j]; - printf("%d\tand\t%d\t\t",i,j); + printf("%f\n", xbt_os_timer_elapsed(timer) ); -#if _POSIX_TIMERS > 0 - if( clock_gettime( CLOCK_REALTIME, &start) == -1 ) { - perror( "clock gettime" ); - return EXIT_FAILURE; - } -#else - gettimeofday(&tv, NULL); - start.tv_sec = tv.tv_sec; - start.tv_nsec = tv.tv_usec*1000; -#endif + xbt_free(workstations); + SD_exit(); - SD_route_get_list(w1, w2); - -#if _POSIX_TIMERS > 0 - if( clock_gettime( CLOCK_REALTIME, &stop) == -1 ) { - perror( "clock gettime" ); - return EXIT_FAILURE; - } -#else - gettimeofday(&tv, NULL); - stop.tv_sec = tv.tv_sec; - stop.tv_nsec = tv.tv_usec*1000; -#endif - - accum = ( stop.tv_sec - start.tv_sec ) - + (double)( stop.tv_nsec - start.tv_nsec ) - / (double)BILLION; - printf("%lf\n", accum); - - SD_exit(); - - return 0; + return 0; }