From 04:00 PM CDT – 08:00 PM CDT (09:00 PM UTC – 01:00 AM UTC) Tuesday, April 16, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

Discussions au sujet de NI LabVIEW

annuler
Affichage des résultats de 
Rechercher plutôt 
Vouliez-vous dire : 

Sous-vi trop gourmand en ressources

Je vais faire l'effort de recoder mon programme et je te l'enverrai par la suite.

 

En général lorsque les tables sont trop importantes comment procèder? 

0 Compliments
Message 31 sur 38
2 108 Visites

Lorsque les tables sont imortantes, ont peut : utiliser les structures elements en place si on manipule beaucoup les elements à l'interieur; pré dimensionner ces tables afin d'eviter les redimensionnement à la volée.

 

Il y a aussi le faite que tu affiche a chaque tour de boucle le traitement sur l'IHM, il faudra peut etre disocier ce traitement (l'affichage) qui peut prendre du temps

0 Compliments
Message 32 sur 38
2 107 Visites

L'ihm peut consommée autant de ram? je devrais stopper l'affichage de l'accélération en fonction de la fréquence en temps réel sur mon IHM ?

0 Compliments
Message 33 sur 38
2 100 Visites

en temps réel ? Je pense que ca va etre dificille.

 

L'affichage à l'écran est quelque chose qui prend du temps.

 

Ce que je veux dire c'est que pour ton affichage il faudrait peut etre une boucle dédiée, autre que celle ou tu fais les aquisitions et le calcul.

Mais pas dans la meme sequence deroulé hein !

 

Procedes par étapes. Regardes les structure proposé par NI dans les templates. La plus simple qui permetrrait déjà d'avoir un code plus lisible est la sequential state machine. Ensuite si le coueur t'en dit tu peux regarder les machines type producteur consommateur.

 

0 Compliments
Message 34 sur 38
2 098 Visites

Il y a une chose que je constate, ce n'est pas le nombre de points ou de N qui fait spécialement ralentir le programme, je m'explique :

 

Si je fais un test avec N=40, fréquency lines = 200 

fréquence     10   110

accélération 0.4   0.4

Le programme tourne impeccable.

 

Si je fais un test avec N=40, fréquency lines = 200 

fréquence     10   110

accélération 0.4     1

Le programme ram

 

comment se fait-ce?

 

0 Compliments
Message 35 sur 38
2 086 Visites

Je pense avoir trouver une solution pour optimiser grandement mon programme, actuellement je génére un tableau immense en fonction de N et à chaque itération je lis la valeur qui suit. Je pense qu'il faudrait générer uniquement les points pour un allez retour et lire les données du tableau dans un sens puis dans un second sens suivant N . Cela permettrait d'avoir un tableau beaucoup plus petit et déviter de faire ramer mon programme.

0 Compliments
Message 36 sur 38
2 078 Visites

Je pense qu il faut d'abord partir sur une architecture saine de programmation.

Tu vas peut etre ameliorer la performance de ton programme, mais tu ne vas pas t'ameliorer.

 

Je t'ai donné plein d'exemple de choses a retoucher. IL faut faire cet effort là si tu veux progresser.

 

 

Message 37 sur 38
2 076 Visites

J'ai une dernière question. Je souhaiterai que lorsque je démarre mon programme un booleen soit faux, lorsque j'arrive à la derniere valeur de mon tableau celui-ci soit maintenu à la condition vrai tant que je n'arrive pas a la premiere valeur de mon tableau. Une fois de retour à la premiere valeur de mon tableau je maintien ma condition à faux etc etc tout en ayant la possibilité de controler le nombre de fois que ce changement d'état va se réaliser.

 

Je te remercie pour le temps que tu m'as consacré et je vais écouter tes conseils à la lettre ^^ . Car je me rends bien compte que la forme de mon programme ne m'a pas aidé à résoudre ce problème.

 

cordialement

0 Compliments
Message 38 sur 38
2 070 Visites