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

LabVIEW Discussion :

Exécution VIs parallèles


Sujet :

LabVIEW

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2013
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2013
    Messages : 13
    Points : 10
    Points
    10
    Par défaut Exécution VIs parallèles
    Bonjour,
    Je suis novice en labview et ai une question fondamentale, est-il possible de programmer 3 VI indépendant de manière à ce qu'ils fonctionnent en parallèle?

    Par exemple, si j'ai un grand while(continue) avec dedans 3 VI contenant chacun un while, est-ce que cela va m'exécuter le premier des 3 VI rencontrés ou bien chacun des trois tant que leurs while respectifs ne sera pas fini ?

    Je précise que j'ai Labview de base sans add-ons...

  2. #2
    Membre actif Avatar de eaglewatch
    Homme Profil pro
    Chercheur
    Inscrit en
    Avril 2009
    Messages
    191
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Chercheur

    Informations forums :
    Inscription : Avril 2009
    Messages : 191
    Points : 236
    Points
    236
    Par défaut
    Salut

    Il est tout a fait possible de placer en parallèle 3 VI qui fonctionne indépendamment les uns des autres.

    Si tu places 3 boucles while dans une boucle while principale, les 3 boucles while vont s'exécuter indépendamment. lorsque les 3 boucles while sont terminés, il y aura une nouvelle itération et les 3 boucles while vont se lancer de nouveau en parallèle.
    Windows 10 Pro 64bits & UNIX Arch Linux
    LabVIEW 2018 32bits / 64bits
    LabVIEW 2017 32bits / 64bits


    "Gott würfelt nicht"- Albert Einstein

  3. #3
    Membre averti
    Homme Profil pro
    Cadre informatique
    Inscrit en
    Avril 2013
    Messages
    183
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Cadre informatique

    Informations forums :
    Inscription : Avril 2013
    Messages : 183
    Points : 435
    Points
    435
    Par défaut
    Mais si les 3 boucles while ont un temps d'execution différents, tu auras une pause du plus rapide avant de tout relancer?

    Imaginons:
    Grand_while contient:
    while_1 => t1=10ms => 10 itérations
    while_2 => t2=20ms => 10 itérations
    while_3 => t3=100ms => 10 itérations

    Les 3 tournent en parallèles mais Grand_while ne passera à l'itération suivante qu'au bout de 1s et entrainera du coup le relancement des while_i.
    J'espère que je ne me trompe pas? oO

  4. #4
    Membre actif Avatar de eaglewatch
    Homme Profil pro
    Chercheur
    Inscrit en
    Avril 2009
    Messages
    191
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Chercheur

    Informations forums :
    Inscription : Avril 2009
    Messages : 191
    Points : 236
    Points
    236
    Par défaut
    tu ne te trompes pas

    tant que la boucle while numéro 3 n'est pas terminée (10 itérations x 100ms = 1000ms = 1s), pas de nouvelle itération de la boucle while principale.

    Bon courage

    N'oublis pas de mettre le post si c'est OK
    Windows 10 Pro 64bits & UNIX Arch Linux
    LabVIEW 2018 32bits / 64bits
    LabVIEW 2017 32bits / 64bits


    "Gott würfelt nicht"- Albert Einstein

  5. #5
    Membre averti
    Homme Profil pro
    Cadre informatique
    Inscrit en
    Avril 2013
    Messages
    183
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Cadre informatique

    Informations forums :
    Inscription : Avril 2013
    Messages : 183
    Points : 435
    Points
    435
    Par défaut
    Pour moi, cela va bien m'aider pour mon projet, mais comme je ne suis pas l'initiateur de ce sujet, je lui laisse l'action de cliquer
    Merci bien et à la prochaine pour de nouvelles aventures

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    160
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 160
    Points : 81
    Points
    81
    Par défaut
    En multi-core, chaque core (à condition qu'il n'y ait pas de transfert entre les deux boucle) s'occupe de chaque boucle indépendante.

    C'est assez bien expliqué ici :

    Pour les tâches

    http://www.ni.com/white-paper/6420/fr

    Pour les données

    http://www.ni.com/white-paper/6421/fr

Discussions similaires

  1. [9.2] UPDATE exécutés en parallèle
    Par vinch999 dans le forum Requêtes
    Réponses: 15
    Dernier message: 05/05/2014, 19h43
  2. Réponses: 2
    Dernier message: 17/10/2013, 22h28
  3. Exécution en parallèle de plusieurs procédures
    Par sofiane2011 dans le forum PL/SQL
    Réponses: 5
    Dernier message: 25/02/2011, 15h56
  4. Exécution en parallèle avec & ?
    Par MSM_007 dans le forum Shell et commandes GNU
    Réponses: 7
    Dernier message: 21/06/2009, 01h00
  5. Threads s'exécutant en parallèle
    Par Emyleet dans le forum MFC
    Réponses: 3
    Dernier message: 09/06/2008, 10h53

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