IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Perl Discussion :

Benchmark Stopwatch ':hireswallclock'


Sujet :

Langage Perl

  1. #1
    Membre émérite
    Avatar de Jasmine80
    Femme Profil pro
    Bioinformaticienne
    Inscrit en
    Octobre 2006
    Messages
    3 157
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 44
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Bioinformaticienne
    Secteur : Santé

    Informations forums :
    Inscription : Octobre 2006
    Messages : 3 157
    Points : 2 673
    Points
    2 673
    Par défaut Benchmark Stopwatch ':hireswallclock'
    Bonjour,


    Voici mon code et le résultat :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    use Benchmark::Stopwatch ':hireswallclock';
    NAME TIME CUMULATIVE PERCENTAGE
    file 0.071 0.071 91.825%
    triplet lists 0.004 0.075 5.425%
    stop rx 0.001 0.076 1.634%
    end 0.000 0.076 0.108%
    _stop_ 0.001 0.077 1.008%

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    use Benchmark::Stopwatch;
    NAME TIME CUMULATIVE PERCENTAGE
    file 0.073 0.073 92.037%
    triplet lists 0.004 0.077 5.283%
    stop rx 0.001 0.078 1.637%
    end 0.000 0.078 0.105%
    _stop_ 0.001 0.079 0.939%

    J'utilise
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    my $stopwatch = Benchmark::Stopwatch->new->start;
    Le fait d'utiliser hireswallclock ne rend pas les temps d'exacution plus précis, et ils continuent de varier d'un run à l'autre du même script.

    Jedai avait dit que ':hireswallclock' pouvait être utilisé avec le module Benchmark, cela n'implique t'il pas qu'au module Benchmark::Stopwatch également?

    A moins qu'il n'y ait une erreur dans mon code.


    Merci,
    -- Jasmine --

  2. #2
    Expert éminent
    Avatar de Jedai
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2003
    Messages
    6 245
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2003
    Messages : 6 245
    Points : 8 586
    Points
    8 586
    Par défaut
    Citation Envoyé par Jasmine80 Voir le message
    Le fait d'utiliser hireswallclock ne rend pas les temps d'exacution plus précis, et ils continuent de varier d'un run à l'autre du même script.

    Jedai avait dit que ':hireswallclock' pouvait être utilisé avec le module Benchmark, cela n'implique t'il pas qu'au module Benchmark::Stopwatch également?
    Je ne vois pas pourquoi ce serait vrai ?

    De plus ces mesures sont déjà très précises. Le fait que les mesures varient d'un run à l'autre est parfaitement normal dans n'importe quel benchmark, quel que soit le langage et quel que soit le code... C'est pourquoi on effectue souvent un certain nombre de benchmark avant de prendre la moyenne, Dans ton cas les variations sont extrêmement minimes, je ne vois pas le problème.

    --
    Jedaï

  3. #3
    Membre émérite
    Avatar de Jasmine80
    Femme Profil pro
    Bioinformaticienne
    Inscrit en
    Octobre 2006
    Messages
    3 157
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 44
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Bioinformaticienne
    Secteur : Santé

    Informations forums :
    Inscription : Octobre 2006
    Messages : 3 157
    Points : 2 673
    Points
    2 673
    Par défaut
    Oui, tu m'avais déjà dit qu'un benchmark trop court est toujours imprécis, même avec une horloge précise ... le problème est que mes 2 scripts sont tellement rapides que je n'arrive pas à estimer le meilleur. Je vais donc soit répéter plusieurs fois ce script, soit allonger la taille de la séquence à analyser.


    Merci,
    -- Jasmine --

  4. #4
    Membre émérite
    Avatar de Jasmine80
    Femme Profil pro
    Bioinformaticienne
    Inscrit en
    Octobre 2006
    Messages
    3 157
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 44
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Bioinformaticienne
    Secteur : Santé

    Informations forums :
    Inscription : Octobre 2006
    Messages : 3 157
    Points : 2 673
    Points
    2 673
    Par défaut
    Pour ce qui est de Benchmark::Stopwatch et de Benchmark, je pensais que Benchmark::Stopwatch était une partie de Benchmark. De façon générale, je pensais que les modules Nom1::Nom2 appartenaient au module Nom1. Je sais donc maintenant qu'ils ne sont pas directement liés.
    -- Jasmine --

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Benchmark hireswallclock 2
    Par Jasmine80 dans le forum Langage
    Réponses: 6
    Dernier message: 02/04/2009, 15h35
  2. use Benchmark ':hireswallclock';
    Par Jasmine80 dans le forum Modules
    Réponses: 15
    Dernier message: 27/03/2009, 18h32
  3. benchmark pour postgre
    Par diableblanc dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 16/05/2005, 12h04
  4. [SYBASE] Benchmark
    Par 6rose dans le forum Sybase
    Réponses: 5
    Dernier message: 08/05/2003, 09h47
  5. Benchmark entre les langages
    Par El blérot dans le forum Langages de programmation
    Réponses: 4
    Dernier message: 27/12/2002, 01h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo