From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

ralentissement programme

Solved!
Go to solution

Bonjour,

 

J'ai créé un programme (assez conséquent) sous LabVIEW 9. Ce programme ralentit au fur et à mesure de son éxécution jusqu'à se bloquer pour un problème de buffer. Mon programme contient des lectures (en permanence) sur des entrées analogiques et numériques ainsi que la visualisation des données sur un graphe déroulant. Je pense qu'ils sont la cause de ce ralentissement.

J'ai essayé de limiter la taille des buffer par un noeud de propriété mais le problème reste le même.

 

Quelqu'un a-t'il une solution à ce problème?

 

Je vous remercie par avance de votre réponse.

 

Cordialement.

0 Kudos
Message 1 of 3
(2,216 Views)
Solution
Accepted by topic author toto1803

Est-ce que tu ajoutes des donnees a une matrice (array) a l'interieur d'une boucle?

 

Si tu roules ton application et que tu observes la consommation de memoire de ton ordi, est-ce que la quantitee de memoire utilisee grandit continuellement?  Si oui, c'est la matrice qui est en cause.  Il faudra que tu initialize la matrice avant son utilisation et que tu remplaces les valeurs au lieu de les ajouter.  C'est parce que lorsque tu ajoute a une matrice, l'ordi doit creer une region en memoire nouvelle basee sur la nouvelle grandeur de la matrice.  Au fur et a mesure que celle-ci grandit, ca prends plus de temps afin de reserver plus de memoire et de copier tout le data dans la nouvelle region en memoire...

 

Si l'explication ci-dessus ne s'applique pas a ton cas, est-ce que tu peux nous montrer ton code?

Message 2 of 3
(2,210 Views)

Bonjour,

 

Tout d'abord merci de ta réponse. Comme tu me l'as conseillé, j'ai observé la consommation de mémoire de mon programme et me suis aperçu que l'ouverture et la fermeture de tâche NI-DAQ prenait énormément d'espace mémoire. Cela était dû au fait qu'à chaque tour de boucle, j'ouvrais mes tâches, lisais les données et refermais les tâches. J'ai sorti de ma boucle ces ouverture / fermeture pour ni laisser que mon écriture.

Maintenant ça fonctionne niquel!

 

Je te remercie du conseil.

 

Cordialement. 

0 Kudos
Message 3 of 3
(2,202 Views)