[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