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

AppleScript Discussion :

Différences de temps d'exécution .scpt vs .app [AppleScript]


Sujet :

AppleScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Juillet 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Juillet 2012
    Messages : 6
    Par défaut Différences de temps d'exécution .scpt vs .app
    Bonjour,

    Je suis en train de découvrir l'applescript, et j'ai un problème que je ne parviens pas à résoudre... Je sollicite donc vos lumières !

    Le script : mon script est en deux parties,
    - une sorte de librairie avec des fonctions de base (genre affichage dans un terminal, calcul du temps d'exécution, etc.)
    - le script à proprement parler, qui modifie un fichier Excel 2011 (pas de commentaire là-dessus) et fait appel aux fonctions de base du premier script.
    - je souhaiterais pouvoir lancer mon second script via le parchemin dans la barre de menu sur la machine cible, un iMac sous Snow Leopard.

    Les acteurs :
    - MacBook Pro (OS X 10.7.4)
    - iMac 9,1 (OS X 10.6.8)

    Le pitch :
    - sur mon McBook Pro, en mode admin comme en mode utilisateur, sous Smile ou sous l'éditeur natif, j'obtiens un temps d'exécution de l'ordre de 1min40s avec les .scpt
    - sur mon McBook Pro toujours, en mode admin comme en mode utilisateur, j'ai le même temps d'exécution si je lance le script à partir du parchemin (en .app)
    - sur l'iMac, en mode utilisateur, sous l'éditeur natif j'ai un temps de réponse de 2min47s avec les scpt
    - en revanche, et c'est là l'objet de ma question, si j'exécute le même script en .app sur le même fichier Excel via le parchemin, mon temps d'exécution s'effondre, je dépasse la demi-heure !

    Mes investigations :
    1. Le % d'utilisation processeur:
    - avec l'iMac+éditeur (.scpt), l'occupation processeur du thread Excel est de 80% environ
    - avec iMac+parchemin (.app), on passe à moins de 1%
    - j'ai utilisé renice en su pour changer la priorité du thread Excel, mais cela n'a rien changé.

    2. J'ai sauvé les .scpt sur l'iMac en .app, au cas où il y ait des différences de traitement des .app entre Lion et Snow Leopard. Pas de changement.

    3. J'ai exécuté dans l'éditeur le script principal en .scpt faisant appel au script librairie compilé (.app) : même temps de réponse désastreux.

    4. Réduisons le champ d'investigation : j'ai reformaté mon script principal pour inclure directement les fonctions décrite dans la librairie attachée.
    Toujours 30min d'exécution pour le .app vs 2min pour le .scpt

    Ma question :
    Pourquoi ces différence énorme de temps d'exécution ?
    Auriez-vous des pistes à me proposer ? Je suis un peu à court d'idées...
    De la doc ? Des outils d'investigation ? Je suis preneur !!

    Question annexe : à la base, je suis intervenu sur ce script car il y avait un problème un peu curieux : le script se relançait tout seul. J'ai découvert que la cause de cette boucle inopinée était un bug dans le script, et j'ai même réussi à reproduire ce comportement avec un autre bug (genre j'oublie de préciser qu'une fonction que j'utilise se trouve dans la librairie jointe).
    Avez-vous déjà vu ce comportement ?
    Du coup, je mets systématiquement une assertion en début de script pour vérifier qu'il n'a pas déjà tourné, mais je trouve cela curieux...

  2. #2
    Membre du Club
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Juillet 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Juillet 2012
    Messages : 6
    Par défaut
    Je réponds à ma propre question...
    Enfin non, je veux dire : j'ai trouvé une parade à mon problème.

    Suivant l'idée énoncée dans ce post sur MacScripter, j'ai créé un fichier quasi vide avec pour seule ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    run script file ("mon script tout lent qui met 34min à s'exécuter")
    C'est avec une grande surprise, un soulagement et la déception de n'avoir pas compris que j'ai constaté un temps d'exécution de 2 min

    Donc voilà pour ceux qui rencontrent ce genre de problème, je reste avide d'une explication rationnelle.

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 15/11/2013, 09h17
  2. Réponses: 1
    Dernier message: 06/05/2008, 13h32
  3. Différences de temps d'exécution d'une même requête
    Par hellbilly dans le forum Access
    Réponses: 3
    Dernier message: 16/12/2005, 20h56
  4. Affichage du temps d'exécution d'une requête
    Par milka dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 22/03/2004, 17h48
  5. Temps d'exécution des instructions FPU
    Par ubi dans le forum Assembleur
    Réponses: 2
    Dernier message: 24/10/2003, 18h39

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