[Creatis-hackers] Re: [Dcmlib] clock vs times

Mathieu Malaterre mathieu.malaterre at kitware.com
Wed May 4 15:57:20 CEST 2005


JP,

	Si c'est un test, cmake implemente systemtime et usertime correctement 
et sur toutes les plateformes:

cmake -E time ma_commande
(ex: cmake -E time find /var)

Et si tu vas sur la page dashboard tu peux voir les temps de chaque tests:

Ex sur la machine linux/creatis:

http://public.kitware.com/Public/Sites/Creatis.fc3.gcc/GDCM-FedoraCore3-gcc-Py/20050504-0100-Nightly/Test.html

Par ex:
TestAllReadCompareDicom  	 Passed  	   46.1385     	

Mathieu



Jean-Pierre Roux wrote:
> Bonjour.
> 
> Qq'un saurait-il s'il existe en fonction C qui donne le temps d'exec 
> d'un bout de code?
> 
> - Deux appels de clock(), ca marche bien tant qu'on veut, par exemple 
> voir le temps d'exec d'une methode de tri (on voit facilement que trier
> 100 millions d'enregistrement, c'est plus long qu'en trier 10 milions)
> S'il y a des I/O disque, c'est carrement moins terrible ....
> 
> - deux appels de times()   #include <sys/times.h>
>  clock_t times(struct tms *buf);
>       struct tms {
>              clock_t tms_utime;  /* user time */
>              clock_t tms_stime;  /* system time */
>              clock_t tms_cutime; /* user time of children */
>              clock_t tms_cstime; /* system time of children */
>       };
> 
> qui a l'air d'etre plus pertinent, ne renvoie pas des resultats 
> reproductibles :
> Le code suivant (gdcm), pour de 'petits' fichiers,
> renvoie 0 ou 1, mais toujours 'au meme endroit'
> ?!?
> Thx
> JPRx
> 
>      filename = gdcmDataImages[i];
> 
>      e1= new gdcm::File( );
>      r1 = times(&tms1);
>      e1->Load( filename );
>      r2 = times(&tms2);
>      delete e1;
>            e1= new gdcm::File( );
>      e1->SetLoadMode( NO_SEQ | NO_SHADOW );
>      r3 = times(&tms3);
>      e1->Load( filename );
>      r4 = times(&tms4);            delete e1;
> 
>      std::cout << gdcmDataImages[i] << "\t\t "
>                  << (long) ((tms2.tms_utime)  - (tms1.tms_utime))
>                  << "\t\t "
>                  << (long) ((tms4.tms_utime)  - (tms3.tms_utime))
>                     << std::endl;
> _______________________________________________
> Creatis-hackers mailing list
> Creatis-hackers at creatis.insa-lyon.fr
> http://www.creatis.insa-lyon.fr/mailman/listinfo/creatis-hackers
> 




More information about the Dcmlib mailing list