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 :

Le temps d'exécution de vos scripts perl!!


Sujet :

Langage Perl

  1. #1
    Responsable Perl et Outils

    Avatar de djibril
    Homme Profil pro
    Inscrit en
    Avril 2004
    Messages
    19 820
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 19 820
    Points : 498 771
    Points
    498 771
    Par défaut Le temps d'exécution de vos scripts perl!!
    Voilà un petit topic pour avoir vos avis sur le temps d'execution de vos differents scripts perl en général. Je sais que ça dépend de la longueur du script, du fichier traité, etc. Mais j'aimerais bien avoir vos différents avis.
    Si ce topic suscite pleins de commentaires, je le mettrais en post-it.
    Pour ma part, j'ai cree un module qui parse un fichier XML (interpro pour les connaisseurs ) et ce dernier fait 36 Mo. Mon script fait environ 30s, est ce long? Sachant qu'il affiche juste les données que je souhaite. En fait, je mets ce fichier dans un hash que je manipule par la suite.

    NB: Je sais qu'il existe des scripts pouvant durer plus longtemps (Plus de 24h), et oui, j'en ai déjà fais (en cumulant plusieurs modules dbi, xml, etc).
    Merci de votre participation!!!

  2. #2
    Membre chevronné
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2003
    Messages
    1 572
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2003
    Messages : 1 572
    Points : 2 014
    Points
    2 014
    Par défaut
    Bonjour,

    je vais donner un exemple provenant d'une application perso. Je gère des combats d'arène dont les programmes les réalisant sont écrits en Perl.

    Pour chaque combat, en moyenne, 1.000 random sont effectués à partir d'un script de + de 7.000 lignes. Ca peut allègrement dépasser les 5.000 random, selon la durée du combat à traiter, parfois bien plus encore. Le programme ne fait pas que ça, il charge en amont beaucoup de fichiers de config et de données, environ 14.000 variables chargées en mémoire en moyenne par lancement du programme. Pour finir, il écrit des logs volumineux ainsi que bon nombre de fichiers de sortie.

    Une chose qui le ralentit, c'est qu'il affiche des messages sur STDOUT, lequel s'affiche dans ma console sous Linux.

    Pour ce qui est du temps d'exécution sur mon PC T-Bird 1 GHz + 256 Mo de SDRAM, pour 100 combats la durée GLOBALE est de 3 secondes en moyenne.

    Pas mécontent de Perl pour sa rapidité en tout cas !

  3. #3
    Membre chevronné
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2003
    Messages
    1 572
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2003
    Messages : 1 572
    Points : 2 014
    Points
    2 014
    Par défaut
    Dans un domaine purement professionnel, j'ai écrit un script Perl qui scanne des fichiers au format SGML dépassant 95 Mo par tête de pipe.

    Le but du script est de récupérer diverses infos contenues dans les balises SGML, de les comparer avec des fichiers du même type mais des mois précédents et le tout, afin de faire ressortir toute divergence entre un nouveau fichier et le précédent immédiat.

    Durée du traitement en moyenne = 4 à 5 minutes mais j'ajoute pour l'histoire que le script + les fichiers analysés se situent sur le réseau et non sur mon disque dur, ce qui n'arrange pas la durée du temps de traitement.

  4. #4
    Expert confirmé
    Avatar de GLDavid
    Homme Profil pro
    Service Delivery Manager
    Inscrit en
    Janvier 2003
    Messages
    2 852
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Service Delivery Manager
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 852
    Points : 4 759
    Points
    4 759
    Par défaut
    Je vais y aller de mon usine à gaz publiée.
    A Québec, ma mission était de développer un LIMS pour analyser des protéomiques (djibril doit connaître ça ). Tout a été réalisé en Perl et incluait des parseurs XML, HTML, des regexps, et des modules DBI Oracle et MySQL.
    En fait, c'est pas tellement mes scripts Perl qui étaient longs, ils étaient même rapides pour extraire les infos de mes fichiers résultats en XML, HTML et ASCII. Non, ce qui était long c'était les appels systèmes vers les applications connexes. C'étaient elles qui ralentissaient horriblement tout !
    Mais Perl était rapide pour le reste et c'est ce qui a fait que j'ai apprécié ce langage

    @++
    GLDavid
    Consultez la FAQ Perl ainsi que mes cours de Perl.
    N'oubliez pas les balises code ni le tag

    Je ne répond à aucune question technique par MP.

  5. #5
    Responsable Perl et Outils

    Avatar de djibril
    Homme Profil pro
    Inscrit en
    Avril 2004
    Messages
    19 820
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 19 820
    Points : 498 771
    Points
    498 771
    Par défaut
    pas trop de succés ce topic

  6. #6
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2007
    Messages
    93
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2007
    Messages : 93
    Points : 37
    Points
    37
    Par défaut
    Je me suis aperçut que suivant la taille du fichier le temps d'exécution des modules Bioperl peut vite être infernale (plusieurs dizaines de minutes) ... Parfois c'est mieux de charger le fichier via bioperl et de faire sa propre moulinette maison !

Discussions similaires

  1. Réponses: 3
    Dernier message: 24/06/2007, 01h24
  2. Calculer le temps d'exécution d'un script
    Par pomgnon dans le forum C
    Réponses: 2
    Dernier message: 28/12/2006, 15h49
  3. Script perl qui exécute d'autres scripts perl
    Par LFC dans le forum Langage
    Réponses: 1
    Dernier message: 21/07/2006, 18h54
  4. [MySQL] Temps d'exécution d'un script
    Par Gwipi dans le forum PHP & Base de données
    Réponses: 14
    Dernier message: 01/05/2006, 14h39
  5. [CSV] Temps d'exécution d'un script
    Par Sangdrax1604 dans le forum Langage
    Réponses: 2
    Dernier message: 10/04/2006, 18h49

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